head 1.369; access; symbols pkgsrc-2023Q4:1.365.0.2 pkgsrc-2023Q4-base:1.365 pkgsrc-2023Q3:1.359.0.2 pkgsrc-2023Q3-base:1.359 pkgsrc-2023Q2:1.355.0.2 pkgsrc-2023Q2-base:1.355 pkgsrc-2023Q1:1.350.0.2 pkgsrc-2023Q1-base:1.350 pkgsrc-2022Q4:1.345.0.2 pkgsrc-2022Q4-base:1.345 pkgsrc-2022Q3:1.343.0.2 pkgsrc-2022Q3-base:1.343 pkgsrc-2022Q2:1.340.0.2 pkgsrc-2022Q2-base:1.340 pkgsrc-2022Q1:1.335.0.2 pkgsrc-2022Q1-base:1.335 pkgsrc-2021Q4:1.327.0.2 pkgsrc-2021Q4-base:1.327 pkgsrc-2021Q3:1.321.0.2 pkgsrc-2021Q3-base:1.321 pkgsrc-2021Q2:1.319.0.2 pkgsrc-2021Q2-base:1.319 pkgsrc-2021Q1:1.312.0.2 pkgsrc-2021Q1-base:1.312 pkgsrc-2020Q4:1.309.0.2 pkgsrc-2020Q4-base:1.309 pkgsrc-2020Q3:1.307.0.2 pkgsrc-2020Q3-base:1.307 pkgsrc-2020Q2:1.301.0.2 pkgsrc-2020Q2-base:1.301 pkgsrc-2020Q1:1.288.0.2 pkgsrc-2020Q1-base:1.288 pkgsrc-2019Q4:1.280.0.4 pkgsrc-2019Q4-base:1.280 pkgsrc-2019Q3:1.275.0.2 pkgsrc-2019Q3-base:1.275 pkgsrc-2019Q2:1.269.0.2 pkgsrc-2019Q2-base:1.269 pkgsrc-2019Q1:1.263.0.2 pkgsrc-2019Q1-base:1.263 pkgsrc-2018Q4:1.257.0.2 pkgsrc-2018Q4-base:1.257 pkgsrc-2018Q3:1.256.0.2 pkgsrc-2018Q3-base:1.256 pkgsrc-2018Q2:1.251.0.2 pkgsrc-2018Q2-base:1.251 pkgsrc-2018Q1:1.249.0.4 pkgsrc-2018Q1-base:1.249 pkgsrc-2017Q4:1.249.0.2 pkgsrc-2017Q4-base:1.249 pkgsrc-2017Q3:1.244.0.4 pkgsrc-2017Q3-base:1.244 pkgsrc-2017Q2:1.239.0.2 pkgsrc-2017Q2-base:1.239 pkgsrc-2017Q1:1.237.0.2 pkgsrc-2017Q1-base:1.237 pkgsrc-2016Q4:1.228.0.2 pkgsrc-2016Q4-base:1.228 pkgsrc-2016Q3:1.225.0.2 pkgsrc-2016Q3-base:1.225 pkgsrc-2016Q2:1.220.0.2 pkgsrc-2016Q2-base:1.220 pkgsrc-2016Q1:1.216.0.2 pkgsrc-2016Q1-base:1.216 pkgsrc-2015Q4:1.210.0.4 pkgsrc-2015Q4-base:1.210 pkgsrc-2015Q3:1.210.0.2 pkgsrc-2015Q3-base:1.210 pkgsrc-2015Q2:1.207.0.2 pkgsrc-2015Q2-base:1.207 pkgsrc-2015Q1:1.200.0.2 pkgsrc-2015Q1-base:1.200 pkgsrc-2014Q4:1.190.0.2 pkgsrc-2014Q4-base:1.190 pkgsrc-2014Q3:1.185.0.2 pkgsrc-2014Q3-base:1.185 pkgsrc-2014Q2:1.177.0.2 pkgsrc-2014Q2-base:1.177 pkgsrc-2014Q1:1.173.0.2 pkgsrc-2014Q1-base:1.173 pkgsrc-2013Q4:1.167.0.2 pkgsrc-2013Q4-base:1.167 pkgsrc-2013Q3:1.165.0.2 pkgsrc-2013Q3-base:1.165 pkgsrc-2013Q2:1.160.0.2 pkgsrc-2013Q2-base:1.160 pkgsrc-2013Q1:1.151.0.2 pkgsrc-2013Q1-base:1.151 pkgsrc-2012Q4:1.147.0.2 pkgsrc-2012Q4-base:1.147 pkgsrc-2012Q3:1.145.0.2 pkgsrc-2012Q3-base:1.145 pkgsrc-2012Q2:1.141.0.2 pkgsrc-2012Q2-base:1.141 pkgsrc-2012Q1:1.135.0.4 pkgsrc-2012Q1-base:1.135 pkgsrc-2011Q4:1.135.0.2 pkgsrc-2011Q4-base:1.135 pkgsrc-2011Q3:1.134.0.2 pkgsrc-2011Q3-base:1.134 pkgsrc-2011Q2:1.131.0.2 pkgsrc-2011Q2-base:1.131 pkgsrc-2011Q1:1.130.0.2 pkgsrc-2011Q1-base:1.130 pkgsrc-2010Q4:1.129.0.2 pkgsrc-2010Q4-base:1.129 pkgsrc-2010Q3:1.127.0.6 pkgsrc-2010Q3-base:1.127 pkgsrc-2010Q2:1.127.0.4 pkgsrc-2010Q2-base:1.127 pkgsrc-2010Q1:1.127.0.2 pkgsrc-2010Q1-base:1.127 pkgsrc-2009Q4:1.125.0.4 pkgsrc-2009Q4-base:1.125 pkgsrc-2009Q3:1.125.0.2 pkgsrc-2009Q3-base:1.125 pkgsrc-2009Q2:1.124.0.2 pkgsrc-2009Q2-base:1.124 pkgsrc-2009Q1:1.120.0.2 pkgsrc-2009Q1-base:1.120 pkgsrc-2008Q4:1.114.0.6 pkgsrc-2008Q4-base:1.114 pkgsrc-2008Q3:1.114.0.4 pkgsrc-2008Q3-base:1.114 cube-native-xorg:1.114.0.2 cube-native-xorg-base:1.114 pkgsrc-2008Q2:1.113.0.6 pkgsrc-2008Q2-base:1.113 cwrapper:1.113.0.4 pkgsrc-2008Q1:1.113.0.2 pkgsrc-2008Q1-base:1.113 pkgsrc-2007Q4:1.111.0.2 pkgsrc-2007Q4-base:1.111 pkgsrc-2007Q3:1.107.0.2 pkgsrc-2007Q3-base:1.107 pkgsrc-2007Q2:1.100.0.2 pkgsrc-2007Q2-base:1.100 pkgsrc-2007Q1:1.97.0.2 pkgsrc-2007Q1-base:1.97 pkgsrc-2006Q4:1.92.0.2 pkgsrc-2006Q4-base:1.92 pkgsrc-2006Q3:1.90.0.2 pkgsrc-2006Q3-base:1.90 pkgsrc-2006Q2:1.79.0.2 pkgsrc-2006Q2-base:1.79 pkgsrc-2006Q1:1.71.0.2 pkgsrc-2006Q1-base:1.71 pkgsrc-2005Q4:1.64.0.2 pkgsrc-2005Q4-base:1.64 pkgsrc-2005Q3:1.47.0.2 pkgsrc-2005Q3-base:1.47 pkgsrc-2005Q2:1.43.0.2 pkgsrc-2005Q2-base:1.43 pkgsrc-2005Q1:1.18.0.2 pkgsrc-2005Q1-base:1.18 pkgsrc-2004Q4:1.10.0.2 pkgsrc-2004Q4-base:1.10; locks; strict; comment @# @; expand @o@; 1.369 date 2024.03.13.13.57.05; author wiz; state Exp; branches; next 1.368; commitid 5jlT46PAbleFl02F; 1.368 date 2024.01.13.01.10.19; author gutteridge; state Exp; branches; next 1.367; commitid GqRmQuCKGB9f2eUE; 1.367 date 2024.01.05.19.51.23; author gdt; state Exp; branches; next 1.366; commitid c8EiUEQLFprMuiTE; 1.366 date 2024.01.02.07.34.02; author jnemeth; state Exp; branches; next 1.365; commitid Mk6kNtxPw3WMvQSE; 1.365 date 2023.12.08.19.30.33; author gutteridge; state Exp; branches; next 1.364; commitid TyFlRwmifAXqhHPE; 1.364 date 2023.12.03.22.56.36; author jnemeth; state Exp; branches; next 1.363; commitid nQw4dlCzsqJ5A4PE; 1.363 date 2023.10.29.22.34.11; author gutteridge; state Exp; branches; next 1.362; commitid XZ3AVtBlXLc9AzKE; 1.362 date 2023.10.29.17.22.23; author wiz; state Exp; branches; next 1.361; commitid XIYvsxpIyOu9RxKE; 1.361 date 2023.09.29.09.26.46; author wiz; state Exp; branches; next 1.360; commitid gDMsbjZRbgsLbEGE; 1.360 date 2023.09.27.20.30.25; author leot; state Exp; branches; next 1.359; commitid 0oGf6v15dEosVrGE; 1.359 date 2023.09.17.23.43.06; author gutteridge; state Exp; branches; next 1.358; commitid oMLZZtryi0DujbFE; 1.358 date 2023.09.16.18.22.52; author gutteridge; state Exp; branches; next 1.357; commitid GZoP0dFM5APCz1FE; 1.357 date 2023.07.22.22.58.34; author gutteridge; state Exp; branches; next 1.356; commitid 7rL777z7FtcOTQxE; 1.356 date 2023.07.14.16.56.30; author gutteridge; state Exp; branches; next 1.355; commitid gJlftLn3Vyux9NwE; 1.355 date 2023.05.20.15.46.07; author rillig; state Exp; branches; next 1.354; commitid S3SFgr3uUqXZwIpE; 1.354 date 2023.05.15.21.30.20; author gutteridge; state Exp; branches; next 1.353; commitid uXpMnIfxLNt3B6pE; 1.353 date 2023.05.12.07.15.53; author dholland; state Exp; branches; next 1.352; commitid Vd9iCqq7utpUXDoE; 1.352 date 2023.04.26.10.27.38; author wiz; state Exp; branches; next 1.351; commitid LGGZc1mfsODxxBmE; 1.351 date 2023.04.20.01.26.46; author gutteridge; state Exp; branches; next 1.350; commitid pu7Gov7LJe4ZJMlE; 1.350 date 2023.03.16.03.38.38; author gutteridge; state Exp; branches; next 1.349; commitid scD8uCKwNnxYAihE; 1.349 date 2023.01.24.14.24.06; author wiz; state Exp; branches; next 1.348; commitid WvXPXdJZZnw1ONaE; 1.348 date 2023.01.20.12.23.27; author wiz; state Exp; branches; next 1.347; commitid LjBNKMy6IWpAghaE; 1.347 date 2023.01.05.01.45.48; author gutteridge; state Exp; branches; next 1.346; commitid vThrOt2fSMILdi8E; 1.346 date 2023.01.02.05.52.03; author jnemeth; state Exp; branches; next 1.345; commitid DceZNAuTXgXdGV7E; 1.345 date 2022.12.06.01.41.19; author gutteridge; state Exp; branches; next 1.344; commitid U0hXr1crHt31ar4E; 1.344 date 2022.12.03.02.21.09; author gutteridge; state Exp; branches; next 1.343; commitid G77BMMxjlvXEt34E; 1.343 date 2022.08.08.01.56.37; author gutteridge; state Exp; branches; next 1.342; commitid WNaDkQ7w6wCp61PD; 1.342 date 2022.07.23.06.51.09; author wiz; state Exp; branches; next 1.341; commitid VZsQVWxi8O5jfZMD; 1.341 date 2022.07.19.02.01.14; author gutteridge; state Exp; branches; next 1.340; commitid aF3s2q8PIv5RLrMD; 1.340 date 2022.06.02.21.24.51; author gutteridge; state Exp; branches; next 1.339; commitid hQuyuFOam2nIIvGD; 1.339 date 2022.05.21.15.41.23; author nia; state Exp; branches; next 1.338; commitid HwabJhtKnkgNcWED; 1.338 date 2022.05.21.11.59.35; author nia; state Exp; branches; next 1.337; commitid NrYlY5CTJpjHYUED; 1.337 date 2022.04.15.13.51.23; author gutteridge; state Exp; branches; next 1.336; commitid xQhZnZxKUsRNKiAD; 1.336 date 2022.04.09.10.14.37; author nia; state Exp; branches; next 1.335; commitid bVXVVNUILyKoKvzD; 1.335 date 2022.03.05.08.36.58; author nia; state Exp; branches; next 1.334; commitid FUKwmsShLWbEk0vD; 1.334 date 2022.02.13.11.16.54; author nia; state Exp; branches; next 1.333; commitid i1LUpSyvUvinRrsD; 1.333 date 2022.02.11.08.06.21; author nia; state Exp; branches; next 1.332; commitid LFGsnwRbd94ZRasD; 1.332 date 2022.02.06.22.11.31; author rillig; state Exp; branches; next 1.331; commitid nCxM0V3muzoTHBrD; 1.331 date 2022.01.24.23.23.03; author gutteridge; state Exp; branches; next 1.330; commitid EpzRpp2zRdxlwWpD; 1.330 date 2022.01.11.09.10.09; author wiz; state Exp; branches; next 1.329; commitid lWPbuPR9eUrCdcoD; 1.329 date 2022.01.04.09.18.55; author leot; state Exp; branches; next 1.328; commitid RSZkjtywLsSBuinD; 1.328 date 2022.01.01.06.59.28; author jnemeth; state Exp; branches; next 1.327; commitid duDMliawByvJOTmD; 1.327 date 2021.12.03.07.53.54; author wiz; state Exp; branches; next 1.326; commitid AE7ZfD5YYv6c3bjD; 1.326 date 2021.11.09.17.55.46; author gutteridge; state Exp; branches; next 1.325; commitid T118OfckUURw99gD; 1.325 date 2021.11.08.22.26.32; author gutteridge; state Exp; branches; next 1.324; commitid bHw3N5AUdoypG2gD; 1.324 date 2021.11.02.08.30.38; author nia; state Exp; branches; next 1.323; commitid PKBt2F0PxmbBfcfD; 1.323 date 2021.10.06.06.28.08; author nia; state Exp; branches; next 1.322; commitid Gu0pGyKLQRGnrIbD; 1.322 date 2021.10.01.17.59.05; author leot; state Exp; branches; next 1.321; commitid sNv6qpK11jkoq8bD; 1.321 date 2021.08.23.18.40.27; author wiz; state Exp; branches; next 1.320; commitid R04MyNqaxsnhU76D; 1.320 date 2021.08.22.16.28.53; author wiz; state Exp; branches; next 1.319; commitid J5JeyZtvt2u9dZ5D; 1.319 date 2021.06.14.22.53.20; author nia; state Exp; branches; next 1.318; commitid ZeJG5ekFl9Fyy9XC; 1.318 date 2021.06.11.15.10.08; author nia; state Exp; branches; next 1.317; commitid BdQeMzfqKsWC5JWC; 1.317 date 2021.06.11.14.45.31; author nia; state Exp; branches; next 1.316; commitid kVWyX6uAgR6bXIWC; 1.316 date 2021.06.02.17.10.12; author cirnatdan; state Exp; branches; next 1.315; commitid vmr3aEJbWqbK2AVC; 1.315 date 2021.04.13.12.55.26; author cirnatdan; state Exp; branches; next 1.314; commitid buSeXEMBicgWe8PC; 1.314 date 2021.04.06.17.27.08; author nia; state Exp; branches; next 1.313; commitid I95pZ4rU4LP9YfOC; 1.313 date 2021.04.04.22.32.52; author leot; state Exp; branches; next 1.312; commitid ZdRJSJXYUvk2J1OC; 1.312 date 2021.03.26.17.40.36; author gdt; state Exp; branches; next 1.311; commitid H1tmAXB2kpNHoQMC; 1.311 date 2021.01.10.14.52.52; author leot; state Exp; branches; next 1.310; commitid EcSzKkTseFRCSbDC; 1.310 date 2021.01.02.08.37.26; author jnemeth; state Exp; branches; next 1.309; commitid D9Apf0af6ixK38CC; 1.309 date 2020.12.22.01.14.11; author gutteridge; state Exp; branches; next 1.308; commitid h8TD7IAJqGuDXFAC; 1.308 date 2020.10.09.15.53.22; author leot; state Exp; branches; next 1.307; commitid yu4tqYtSoiQHcfrC; 1.307 date 2020.09.03.15.00.20; author kim; state Exp; branches; next 1.306; commitid eKQvAPQCCuAg4CmC; 1.306 date 2020.09.03.14.35.04; author kim; state Exp; branches; next 1.305; commitid qavDZUoIv3zBVBmC; 1.305 date 2020.08.20.13.33.38; author bacon; state Exp; branches; next 1.304; commitid LedMHOMXz8Lp2OkC; 1.304 date 2020.08.12.14.42.36; author bacon; state Exp; branches; next 1.303; commitid Wd2GJnEBHSm1GMjC; 1.303 date 2020.08.11.20.34.45; author bacon; state Exp; branches; next 1.302; commitid s0XU36XfpqvPEGjC; 1.302 date 2020.07.04.19.46.21; author leot; state Exp; branches; next 1.301; commitid iWK3CvrNgdOWBNeC; 1.301 date 2020.06.21.13.01.00; author rillig; state Exp; branches; next 1.300; commitid w00CRgOQPChOM5dC; 1.300 date 2020.06.20.09.47.55; author wiz; state Exp; branches; next 1.299; commitid tdbK1SJUyXByKWcC; 1.299 date 2020.06.20.05.32.11; author rillig; state Exp; branches; next 1.298; commitid cBXZdAXKnZHPkVcC; 1.298 date 2020.06.18.20.31.14; author wiz; state Exp; branches; next 1.297; commitid sL7UQa4niETenKcC; 1.297 date 2020.06.10.16.08.31; author leot; state Exp; branches; next 1.296; commitid 5g3nljP7oX73bHbC; 1.296 date 2020.06.07.23.11.29; author rillig; state Exp; branches; next 1.295; commitid fkhgfhJx2oV8ClbC; 1.295 date 2020.06.05.07.34.49; author rillig; state Exp; branches; next 1.294; commitid TMOBk45OSqjNu0bC; 1.294 date 2020.05.30.19.25.38; author rillig; state Exp; branches; next 1.293; commitid 6nynX9Glm1GBCiaC; 1.293 date 2020.05.22.18.51.44; author rillig; state Exp; branches; next 1.292; commitid HPAlJy1nTXPUGg9C; 1.292 date 2020.05.09.10.59.22; author leot; state Exp; branches; next 1.291; commitid HWpl0sRrdp1Juy7C; 1.291 date 2020.05.06.01.42.41; author gutteridge; state Exp; branches; next 1.290; commitid FXzBH566u1pMv77C; 1.290 date 2020.04.29.23.58.57; author gutteridge; state Exp; branches; next 1.289; commitid MMMLQ7lLY3p98l6C; 1.289 date 2020.04.02.20.41.52; author leot; state Exp; branches; next 1.288; commitid 6CysKFUcWFBgUQ2C; 1.288 date 2020.02.23.17.29.31; author rillig; state Exp; branches; next 1.287; commitid pmJK9qPSDRg56PXB; 1.287 date 2020.02.23.16.53.07; author rillig; state Exp; branches; next 1.286; commitid 9Jlu4jMdwXhBTOXB; 1.286 date 2020.01.28.03.34.03; author rillig; state Exp; branches; next 1.285; commitid QWeAFAQsERChjpUB; 1.285 date 2020.01.28.03.18.14; author rillig; state Exp; branches; next 1.284; commitid nVqKB7mGad5RdpUB; 1.284 date 2020.01.19.14.17.01; author rillig; state Exp; branches; next 1.283; commitid TebcTb75fXuN9jTB; 1.283 date 2020.01.11.12.36.55; author rillig; state Exp; branches; next 1.282; commitid qOhSosjPoQSoRgSB; 1.282 date 2020.01.06.21.35.51; author leot; state Exp; branches; next 1.281; commitid ci5gaPkpincc0GRB; 1.281 date 2020.01.03.15.57.53; author leot; state Exp; branches; next 1.280; commitid bZlO7qTGM7oeegRB; 1.280 date 2019.12.06.14.31.11; author leot; state Exp; branches; next 1.279; commitid IhS8jBWYMR0lEENB; 1.279 date 2019.12.06.14.28.11; author leot; state Exp; branches; next 1.278; commitid N33nNdLBP98jDENB; 1.278 date 2019.11.22.19.56.26; author rillig; state Exp; branches; next 1.277; commitid 26SkxEIHmAoPTSLB; 1.277 date 2019.11.04.18.56.28; author rillig; state Exp; branches; next 1.276; commitid gS6N20gKOeZ79zJB; 1.276 date 2019.10.05.08.53.27; author leot; state Exp; branches; next 1.275; commitid aIrzgQI2JafZLEFB; 1.275 date 2019.08.25.17.21.29; author brook; state Exp; branches; next 1.274; commitid o9qpZIUokcQXTqAB; 1.274 date 2019.08.18.16.36.11; author rillig; state Exp; branches; next 1.273; commitid 1Ry6fC0s38SrSwzB; 1.273 date 2019.08.14.17.38.25; author brook; state Exp; branches; next 1.272; commitid OYJjhNnqpuNLl1zB; 1.272 date 2019.08.12.14.07.21; author brook; state Exp; branches; next 1.271; commitid gQFRCfZ2IcEafKyB; 1.271 date 2019.08.11.21.37.08; author brook; state Exp; branches; next 1.270; commitid l9pdoxydDfpALEyB; 1.270 date 2019.07.08.10.16.08; author leot; state Exp; branches; next 1.269; commitid jmd3GoJcB0rI5euB; 1.269 date 2019.05.20.18.15.36; author leot; state Exp; branches; next 1.268; commitid pIi3ontfzWjRjYnB; 1.268 date 2019.05.03.10.50.13; author sevan; state Exp; branches; next 1.267; commitid VuDRNfvDLiVToKlB; 1.267 date 2019.04.28.15.22.38; author rillig; state Exp; branches; next 1.266; commitid YtX78iqzkV5q48lB; 1.266 date 2019.04.19.13.46.39; author leot; state Exp; branches; next 1.265; commitid l6TPRsPpY6rnPXjB; 1.265 date 2019.04.09.13.46.55; author leot; state Exp; branches; next 1.264; commitid qSlToE5lvmKo9GiB; 1.264 date 2019.04.03.23.54.00; author sevan; state Exp; branches; next 1.263; commitid nGI0bQgaI3AEHXhB; 1.263 date 2019.03.03.21.37.20; author leot; state Exp; branches; next 1.262; commitid G72ctuRjZ2GvWXdB; 1.262 date 2019.02.28.10.55.24; author leot; state Exp; branches; next 1.261; commitid xQdTOtRumwXguwdB; 1.261 date 2019.02.26.12.14.10; author leot; state Exp; branches; next 1.260; commitid FdzNJoiHyHhhZgdB; 1.260 date 2019.01.02.21.22.41; author tnn; state Exp; branches; next 1.259; commitid oaEB67htRzI6Nf6B; 1.259 date 2019.01.01.04.06.08; author jnemeth; state Exp; branches; next 1.258; commitid SprXGy2qULbs526B; 1.258 date 2018.12.30.23.26.35; author leot; state Exp; branches; next 1.257; commitid m1bVDgWJSWcpzS5B; 1.257 date 2018.10.03.21.15.09; author leot; state Exp; branches; next 1.256; commitid mRawOeTiuaqPFyUA; 1.256 date 2018.09.18.03.20.06; author maya; state Exp; branches; next 1.255; commitid fDcd30X3IktTcxSA; 1.255 date 2018.09.10.12.12.34; author leot; state Exp; branches; next 1.254; commitid CSvZmSWcxIBqpyRA; 1.254 date 2018.07.24.23.44.22; author maya; state Exp; branches; next 1.253; commitid AwbDCEfSqpHvMrLA; 1.253 date 2018.07.05.10.13.18; author leot; state Exp; branches; next 1.252; commitid D7kghtDNq1EbUVIA; 1.252 date 2018.07.05.10.05.17; author leot; state Exp; branches; next 1.251; commitid R529FbQPx67rRVIA; 1.251 date 2018.05.11.22.03.06; author leot; state Exp; branches; next 1.250; commitid 3VPyCTSxcrGfBVBA; 1.250 date 2018.04.04.10.24.23; author leot; state Exp; branches; next 1.249; commitid TPqGgCpMiGAkV6xA; 1.249 date 2017.11.27.11.52.49; author leot; state Exp; branches; next 1.248; commitid dnedjHcBiPRKwFgA; 1.248 date 2017.11.26.09.43.17; author wiz; state Exp; branches; next 1.247; commitid VkdjPYq0ubWhQwgA; 1.247 date 2017.09.28.07.36.28; author leot; state Exp; branches; next 1.246; commitid StWJioTW7vRo2W8A; 1.246 date 2017.09.27.15.43.38; author leot; state Exp; branches; next 1.245; commitid SkcGTvZSuSJsLQ8A; 1.245 date 2017.09.26.10.31.32; author wiz; state Exp; branches; next 1.244; commitid p12c1MP8Y7fr4H8A; 1.244 date 2017.09.18.14.25.38; author wiz; state Exp; branches; next 1.243; commitid OcPgRRfVHbpGCG7A; 1.243 date 2017.09.12.13.40.49; author wiz; state Exp; branches; next 1.242; commitid PBjUO05ipYXgzU6A; 1.242 date 2017.09.06.16.52.23; author wiz; state Exp; branches; next 1.241; commitid 6qXjmRwOMcZWO96A; 1.241 date 2017.07.30.22.24.31; author jnemeth; state Exp; branches; next 1.240; commitid eqoqTApnHaFzSi1A; 1.240 date 2017.07.03.10.00.49; author leot; state Exp; branches; next 1.239; commitid YHayV99xM1hiDLXz; 1.239 date 2017.06.29.14.23.43; author leot; state Exp; branches; next 1.238; commitid L7tmCz6gbGmsdhXz; 1.238 date 2017.05.26.18.01.07; author leot; state Exp; branches; next 1.237; commitid gaZna4IGordKvVSz; 1.237 date 2017.02.20.23.43.31; author wiz; state Exp; branches; next 1.236; commitid SwKy7tlZTetAsKGz; 1.236 date 2017.02.20.17.02.24; author wiz; state Exp; branches; next 1.235; commitid M1xF3cw1sJ4XeIGz; 1.235 date 2017.02.02.07.21.35; author yyamano; state Exp; branches; next 1.234; commitid zixkVKb2oW8BBlEz; 1.234 date 2017.01.25.20.12.12; author leot; state Exp; branches; next 1.233; commitid 6DCLpFWDuTlR7oDz; 1.233 date 2017.01.09.07.24.33; author sevan; state Exp; branches; next 1.232; commitid 8x3VofEQ95IrogBz; 1.232 date 2017.01.07.18.08.14; author sevan; state Exp; branches; next 1.231; commitid 9fVNhCcS6MKf14Bz; 1.231 date 2017.01.07.18.00.29; author sevan; state Exp; branches; next 1.230; commitid 7e1B1d0hL3MAY3Bz; 1.230 date 2017.01.07.04.54.05; author sevan; state Exp; branches; next 1.229; commitid Rjq6MwpFHpUNCZAz; 1.229 date 2017.01.06.20.28.01; author sevan; state Exp; branches; next 1.228; commitid CjZ9rabd1YycPWAz; 1.228 date 2016.12.08.00.44.39; author yyamano; state Exp; branches; next 1.227; commitid oFr7GBUwIODUc7xz; 1.227 date 2016.11.15.13.51.07; author wiz; state Exp; branches; next 1.226; commitid sdaSrsAjB3FFieuz; 1.226 date 2016.10.11.15.45.31; author sevan; state Exp; branches; next 1.225; commitid eY9YTAQzamHF3Kpz; 1.225 date 2016.09.12.12.20.47; author maya; state Exp; branches; next 1.224; commitid y2FVSj8iSqZdRZlz; 1.224 date 2016.07.14.14.40.45; author leot; state Exp; branches; next 1.223; commitid qxKRJDwUpsJOyiez; 1.223 date 2016.07.10.08.21.50; author rillig; state Exp; branches; next 1.222; commitid HjSDOWodaZsNAKdz; 1.222 date 2016.07.10.01.53.00; author sevan; state Exp; branches; next 1.221; commitid jjvpxrCUjD8prIdz; 1.221 date 2016.06.30.18.05.02; author wiz; state Exp; branches; next 1.220; commitid GQjgYhcXJrKN8wcz; 1.220 date 2016.06.21.21.48.02; author wiz; state Exp; branches; next 1.219; commitid B3YNcW4NRxXeFnbz; 1.219 date 2016.06.11.15.00.45; author rillig; state Exp; branches; next 1.218; commitid 8Chz93HQIVOrJ3az; 1.218 date 2016.06.11.12.57.20; author rillig; state Exp; branches; next 1.217; commitid Sn78JsTvFtu633az; 1.217 date 2016.05.06.17.33.17; author jnemeth; state Exp; branches; next 1.216; commitid AwhltZm0i0ZpJr5z; 1.216 date 2016.03.29.11.35.04; author tnn; state Exp; branches; next 1.215; commitid MXu5Hrubzq3mYw0z; 1.215 date 2016.03.01.12.33.37; author wiz; state Exp; branches; next 1.214; commitid I68zvDZt8MffcWWy; 1.214 date 2016.01.17.22.09.06; author sevan; state Exp; branches; next 1.213; commitid ZWliwIS1FllmNkRy; 1.213 date 2016.01.12.12.04.32; author wiz; state Exp; branches; next 1.212; commitid BgRnLryN24bVBDQy; 1.212 date 2015.12.31.07.10.20; author ryoon; state Exp; branches; next 1.211; commitid zo0Zfcx16SFUm4Py; 1.211 date 2015.12.29.21.36.49; author sevan; state Exp; branches; next 1.210; commitid L7Gd6OcVC0C8eTOy; 1.210 date 2015.08.31.11.55.36; author leot; state Exp; branches; next 1.209; commitid MXKZdTmR71aURpzy; 1.209 date 2015.07.04.16.21.53; author sevan; state Exp; branches; next 1.208; commitid ZQHk6pUklSrPcZry; 1.208 date 2015.06.29.11.24.32; author ryoon; state Exp; branches; next 1.207; commitid C3k5rvVVAKHNIjry; 1.207 date 2015.06.14.18.26.46; author sevan; state Exp; branches; next 1.206; commitid QDcOPOlfmgjxxqpy; 1.206 date 2015.06.13.18.10.59; author sevan; state Exp; branches; next 1.205; commitid 8dI3j2mHMts7uipy; 1.205 date 2015.06.08.06.29.20; author wiz; state Exp; branches; next 1.204; commitid yRMibe2RGBwnLAoy; 1.204 date 2015.04.25.11.31.30; author wiz; state Exp; branches; next 1.203; commitid HliLVohTeEdJQXiy; 1.203 date 2015.04.15.10.02.33; author sevan; state Exp; branches; next 1.202; commitid GOTUPeC5kOA6GFhy; 1.202 date 2015.04.14.17.46.50; author sevan; state Exp; branches; next 1.201; commitid oXwaaWnKD0lnhAhy; 1.201 date 2015.04.14.11.21.33; author wiz; state Exp; branches; next 1.200; commitid 4iPu1JOp2pGe9yhy; 1.200 date 2015.03.07.21.31.55; author tnn; state Exp; branches; next 1.199; commitid jqKg3COl1cVkKIcy; 1.199 date 2015.03.07.15.12.10; author tnn; state Exp; branches; next 1.198; commitid kdJ8a0oOs3T4EGcy; 1.198 date 2015.02.24.17.11.42; author tnn; state Exp; branches; next 1.197; commitid 1YWmzOhxvWD0Fhby; 1.197 date 2015.02.15.18.50.48; author wiz; state Exp; branches; next 1.196; commitid 0hYXE7q19CjWu8ay; 1.196 date 2015.01.26.23.00.30; author wiz; state Exp; branches; next 1.195; commitid 9LR3LzyFrFCswA7y; 1.195 date 2015.01.17.12.50.43; author wiz; state Exp; branches; next 1.194; commitid 6PxyReijnlvbrn6y; 1.194 date 2015.01.06.20.35.59; author bsiegert; state Exp; branches; next 1.193; commitid SrI5stUbaZUhm05y; 1.193 date 2015.01.01.06.32.32; author dholland; state Exp; branches; next 1.192; commitid 10umKaDoycn9Rh4y; 1.192 date 2015.01.01.05.20.29; author jnemeth; state Exp; branches; next 1.191; commitid roFtkzt1NAVxsh4y; 1.191 date 2014.12.30.15.19.29; author wiz; state Exp; branches; next 1.190; commitid zXBuXH9OlG27Q44y; 1.190 date 2014.12.25.12.37.33; author wiz; state Exp; branches; next 1.189; commitid Ky3W8fZbMeGw6q3y; 1.189 date 2014.11.14.21.53.10; author snj; state Exp; branches; next 1.188; commitid xZSi17z3BVIQucYx; 1.188 date 2014.11.14.21.42.29; author snj; state Exp; branches; next 1.187; commitid xOwFfr3j6ADbrcYx; 1.187 date 2014.10.09.13.47.57; author wiz; state Exp; branches; next 1.186; commitid F8XrQm1GyI34YwTx; 1.186 date 2014.10.09.13.44.46; author wiz; state Exp; branches; next 1.185; commitid UvzBSm5hrFIOWwTx; 1.185 date 2014.09.19.04.54.04; author jnemeth; state Exp; branches; next 1.184; commitid ZRERK75m1JIJEUQx; 1.184 date 2014.09.19.01.59.43; author jnemeth; state Exp; branches; next 1.183; commitid j717sJSV0OKVGTQx; 1.183 date 2014.09.13.07.33.33; author wiz; state Exp; branches; next 1.182; commitid LlejNNDFkVctJ9Qx; 1.182 date 2014.08.12.05.50.58; author jnemeth; state Exp; branches; next 1.181; commitid b4OOXidQ69l0c2Mx; 1.181 date 2014.07.27.08.29.45; author wiz; state Exp; branches; next 1.180; commitid Zfp6RONQDyWiAZJx; 1.180 date 2014.07.26.11.53.33; author wiz; state Exp; branches; next 1.179; commitid ml9d0L6ruLq9KSJx; 1.179 date 2014.07.16.21.26.47; author asau; state Exp; branches; next 1.178; commitid CsJxhjLK4ABTeEIx; 1.178 date 2014.07.15.23.43.37; author asau; state Exp; branches; next 1.177; commitid Du9FHctKBfbN1xIx; 1.177 date 2014.06.10.15.10.18; author joerg; state Exp; branches; next 1.176; commitid 1H0rHgCAtdsvjZDx; 1.176 date 2014.06.10.15.09.42; author joerg; state Exp; branches; next 1.175; commitid NzY3upcrAA2ijZDx; 1.175 date 2014.06.01.16.44.11; author wiz; state Exp; branches; next 1.174; commitid SaWz4EI369nA7QCx; 1.174 date 2014.05.31.21.10.04; author asau; state Exp; branches; next 1.173; commitid otcZ5sGSzoqGCJCx; 1.173 date 2014.02.03.16.10.34; author wiz; state Exp; branches; next 1.172; commitid 5URJxIwER6oiJFnx; 1.172 date 2014.01.18.20.19.27; author wiz; state Exp; branches; next 1.171; commitid F3Z8mGY72tgxCDlx; 1.171 date 2014.01.18.20.17.49; author wiz; state Exp; branches; next 1.170; commitid k38z5cvVHOlYBDlx; 1.170 date 2014.01.12.09.43.30; author wiz; state Exp; branches; next 1.169; commitid T8oze3Kkm1NgiOkx; 1.169 date 2013.12.31.22.24.44; author jnemeth; state Exp; branches; next 1.168; commitid R1bHRbgn9RZjTkjx; 1.168 date 2013.12.31.17.24.24; author wiz; state Exp; branches; next 1.167; commitid F34bahHHronnejjx; 1.167 date 2013.11.15.10.17.11; author asau; state Exp; branches; next 1.166; commitid g0lRTsqhIBPplmdx; 1.166 date 2013.11.07.18.12.39; author jnemeth; state Exp; branches; next 1.165; commitid 3EKQn4P2Dbnsencx; 1.165 date 2013.08.24.17.02.56; author bsiegert; state Exp; branches; next 1.164; commitid exUn0yqBiAaafJ2x; 1.164 date 2013.08.22.13.55.29; author ryoon; state Exp; branches; next 1.163; commitid ucI6OUgkyG9Jhs2x; 1.163 date 2013.08.21.10.11.44; author bsiegert; state Exp; branches; next 1.162; commitid RP2s76Opcf6G4j2x; 1.162 date 2013.07.30.07.14.50; author wiz; state Exp; branches; next 1.161; commitid FH5TkJFPgOpaOsZw; 1.161 date 2013.07.30.03.37.12; author ryoon; state Exp; branches; next 1.160; commitid ljOVzTxAHnLvBrZw; 1.160 date 2013.05.26.18.22.59; author wiz; state Exp; branches; next 1.159; commitid XdteceO2BQ2TAaRw; 1.159 date 2013.05.06.01.36.22; author rodent; state Exp; branches; next 1.158; 1.158 date 2013.05.05.21.43.39; author rodent; state Exp; branches; next 1.157; 1.157 date 2013.05.03.20.55.21; author asau; state Exp; branches; next 1.156; 1.156 date 2013.04.21.15.21.17; author wiz; state Exp; branches; next 1.155; 1.155 date 2013.04.21.12.44.35; author wiz; state Exp; branches; next 1.154; 1.154 date 2013.04.21.11.37.11; author rodent; state Exp; branches; next 1.153; 1.153 date 2013.04.16.13.56.04; author wiz; state Exp; branches; next 1.152; 1.152 date 2013.04.08.11.46.25; author wiz; state Exp; branches; next 1.151; 1.151 date 2013.03.31.13.41.05; author obache; state Exp; branches; next 1.150; 1.150 date 2013.02.22.21.47.37; author asau; state Exp; branches; next 1.149; 1.149 date 2013.02.20.18.04.05; author asau; state Exp; branches; next 1.148; 1.148 date 2013.02.20.17.06.03; author asau; state Exp; branches; next 1.147; 1.147 date 2012.11.28.20.34.59; author wiz; state Exp; branches; next 1.146; 1.146 date 2012.10.06.08.25.40; author wiz; state Exp; branches; next 1.145; 1.145 date 2012.09.30.10.12.00; author wiz; state Exp; branches; next 1.144; 1.144 date 2012.09.19.15.27.28; author wiz; state Exp; branches; next 1.143; 1.143 date 2012.08.26.11.01.49; author wiz; state Exp; branches; next 1.142; 1.142 date 2012.08.14.11.33.32; author wiz; state Exp; branches; next 1.141; 1.141 date 2012.06.07.08.16.53; author wiz; state Exp; branches; next 1.140; 1.140 date 2012.06.06.07.40.01; author wiz; state Exp; branches; next 1.139; 1.139 date 2012.05.26.22.14.19; author wiz; state Exp; branches; next 1.138; 1.138 date 2012.05.23.20.16.58; author wiz; state Exp; branches; next 1.137; 1.137 date 2012.05.16.16.48.57; author wiz; state Exp; branches; next 1.136; 1.136 date 2012.05.13.05.33.24; author dholland; state Exp; branches; next 1.135; 1.135 date 2011.10.30.22.04.58; author wiz; state Exp; branches; next 1.134; 1.134 date 2011.08.30.15.22.35; author wiz; state Exp; branches; next 1.133; 1.133 date 2011.08.30.15.17.44; author wiz; state Exp; branches; next 1.132; 1.132 date 2011.07.31.09.00.40; author spz; state Exp; branches; next 1.131; 1.131 date 2011.04.09.08.05.00; author wiz; state Exp; branches; next 1.130; 1.130 date 2011.02.02.10.25.51; author wiz; state Exp; branches; next 1.129; 1.129 date 2011.01.03.20.17.17; author wiz; state Exp; branches; next 1.128; 1.128 date 2010.12.28.18.47.52; author wiz; state Exp; branches; next 1.127; 1.127 date 2010.03.18.09.06.01; author spz; state Exp; branches; next 1.126; 1.126 date 2010.03.16.02.11.20; author jakllsch; state Exp; branches; next 1.125; 1.125 date 2009.08.25.13.20.58; author wiz; state Exp; branches; next 1.124; 1.124 date 2009.05.17.23.36.01; author snj; state Exp; branches; next 1.123; 1.123 date 2009.05.13.03.11.15; author snj; state Exp; branches; next 1.122; 1.122 date 2009.05.02.19.00.35; author reed; state Exp; branches; next 1.121; 1.121 date 2009.04.09.04.25.46; author jnemeth; state Exp; branches; next 1.120; 1.120 date 2009.04.03.01.56.39; author snj; state Exp; branches; next 1.119; 1.119 date 2009.03.20.15.14.07; author mishka; state Exp; branches; next 1.118; 1.118 date 2009.03.05.13.12.10; author imil; state Exp; branches; next 1.117; 1.117 date 2009.02.17.06.17.55; author jnemeth; state Exp; branches; next 1.116; 1.116 date 2009.01.09.11.04.27; author rillig; state Exp; branches; next 1.115; 1.115 date 2009.01.04.18.00.59; author wiz; state Exp; branches; next 1.114; 1.114 date 2008.07.27.19.30.15; author jmcneill; state Exp; branches; next 1.113; 1.113 date 2008.02.19.01.06.31; author weinem; state Exp; branches; next 1.112; 1.112 date 2008.02.19.00.05.33; author weinem; state Exp; branches; next 1.111; 1.111 date 2008.01.02.14.23.40; author rillig; state Exp; branches; next 1.110; 1.110 date 2007.11.26.23.22.50; author hubertf; state Exp; branches; next 1.109; 1.109 date 2007.10.18.23.06.23; author rillig; state Exp; branches; next 1.108; 1.108 date 2007.10.11.21.06.45; author rillig; state Exp; branches; next 1.107; 1.107 date 2007.10.01.22.41.30; author rillig; state Exp; branches; next 1.106; 1.106 date 2007.09.18.08.35.13; author rillig; state Exp; branches; next 1.105; 1.105 date 2007.08.18.07.18.00; author weinem; state Exp; branches; next 1.104; 1.104 date 2007.08.15.20.54.20; author rillig; state Exp; branches; next 1.103; 1.103 date 2007.08.10.00.53.02; author wiz; state Exp; branches; next 1.102; 1.102 date 2007.07.25.17.57.52; author rillig; state Exp; branches; next 1.101; 1.101 date 2007.07.20.15.21.53; author rillig; state Exp; branches; next 1.100; 1.100 date 2007.06.01.14.57.54; author rillig; state Exp; branches; next 1.99; 1.99 date 2007.05.23.12.38.46; author rillig; state Exp; branches; next 1.98; 1.98 date 2007.05.12.07.01.15; author wiz; state Exp; branches; next 1.97; 1.97 date 2007.03.08.16.02.00; author rillig; state Exp; branches; next 1.96; 1.96 date 2007.02.08.23.27.40; author rillig; state Exp; branches; next 1.95; 1.95 date 2007.01.23.09.40.03; author tron; state Exp; branches; next 1.94; 1.94 date 2007.01.17.02.43.16; author dmcmahill; state Exp; branches; next 1.93; 1.93 date 2007.01.11.03.48.18; author rillig; state Exp; branches; next 1.92; 1.92 date 2006.11.11.05.41.46; author rillig; state Exp; branches; next 1.91; 1.91 date 2006.10.22.12.15.00; author rillig; state Exp; branches; next 1.90; 1.90 date 2006.09.19.18.03.35; author rillig; state Exp; branches; next 1.89; 1.89 date 2006.09.18.22.34.58; author rillig; state Exp; branches; next 1.88; 1.88 date 2006.09.13.23.46.55; author wiz; state Exp; branches; next 1.87; 1.87 date 2006.09.10.19.55.23; author wiz; state Exp; branches; next 1.86; 1.86 date 2006.09.02.11.26.16; author schwarz; state Exp; branches; next 1.85; 1.85 date 2006.09.01.16.46.49; author jmmv; state Exp; branches; next 1.84; 1.84 date 2006.08.12.21.30.06; author wiz; state Exp; branches; next 1.83; 1.83 date 2006.08.11.13.20.04; author wiz; state Exp; branches; next 1.82; 1.82 date 2006.07.29.16.01.37; author rillig; state Exp; branches; next 1.81; 1.81 date 2006.07.27.06.48.36; author rillig; state Exp; branches; next 1.80; 1.80 date 2006.07.03.23.53.59; author rillig; state Exp; branches; next 1.79; 1.79 date 2006.07.01.23.50.15; author rillig; state Exp; branches; next 1.78; 1.78 date 2006.06.29.11.44.07; author rillig; state Exp; branches; next 1.77; 1.77 date 2006.06.01.09.36.55; author rillig; state Exp; branches; next 1.76; 1.76 date 2006.05.29.08.55.59; author rillig; state Exp; branches; next 1.75; 1.75 date 2006.05.28.20.41.22; author rillig; state Exp; branches; next 1.74; 1.74 date 2006.05.23.09.14.12; author rillig; state Exp; branches; next 1.73; 1.73 date 2006.05.12.23.07.28; author rillig; state Exp; branches; next 1.72; 1.72 date 2006.05.10.20.59.39; author rillig; state Exp; branches; next 1.71; 1.71 date 2006.03.17.19.49.19; author wiz; state Exp; branches; next 1.70; 1.70 date 2006.03.01.17.22.08; author rillig; state Exp; branches; next 1.69; 1.69 date 2006.02.18.17.18.14; author rillig; state Exp; branches; next 1.68; 1.68 date 2006.02.14.10.16.26; author rillig; state Exp; branches; next 1.67; 1.67 date 2006.01.13.17.24.39; author hubertf; state Exp; branches; next 1.66; 1.66 date 2006.01.12.11.25.27; author rillig; state Exp; branches; next 1.65; 1.65 date 2006.01.10.23.56.02; author hubertf; state Exp; branches; next 1.64; 1.64 date 2005.12.24.11.09.14; author kim; state Exp; branches; next 1.63; 1.63 date 2005.12.06.20.02.34; author dillo; state Exp; branches; next 1.62; 1.62 date 2005.11.24.11.02.09; author rillig; state Exp; branches; next 1.61; 1.61 date 2005.11.24.10.08.00; author rillig; state Exp; branches; next 1.60; 1.60 date 2005.11.21.09.40.30; author rillig; state Exp; branches; next 1.59; 1.59 date 2005.11.20.10.09.29; author rillig; state Exp; branches; next 1.58; 1.58 date 2005.11.16.22.13.42; author erh; state Exp; branches; next 1.57; 1.57 date 2005.11.13.03.53.14; author minskim; state Exp; branches; next 1.56; 1.56 date 2005.11.03.20.46.21; author rillig; state Exp; branches; next 1.55; 1.55 date 2005.11.03.02.55.51; author rillig; state Exp; branches; next 1.54; 1.54 date 2005.11.02.21.56.48; author tv; state Exp; branches; next 1.53; 1.53 date 2005.11.01.17.21.52; author tv; state Exp; branches; next 1.52; 1.52 date 2005.11.01.17.15.25; author tv; state Exp; branches; next 1.51; 1.51 date 2005.10.23.11.33.53; author rillig; state Exp; branches; next 1.50; 1.50 date 2005.10.07.18.34.12; author rillig; state Exp; branches; next 1.49; 1.49 date 2005.10.07.12.11.06; author rillig; state Exp; branches; next 1.48; 1.48 date 2005.10.05.14.04.23; author dillo; state Exp; branches; next 1.47; 1.47 date 2005.09.20.06.37.21; author reed; state Exp; branches; next 1.46; 1.46 date 2005.08.04.17.53.11; author gdt; state Exp; branches; next 1.45; 1.45 date 2005.08.03.16.35.14; author wiz; state Exp; branches; next 1.44; 1.44 date 2005.07.27.14.42.30; author gdt; state Exp; branches; next 1.43; 1.43 date 2005.06.17.13.00.04; author wiz; state Exp; branches; next 1.42; 1.42 date 2005.06.11.16.33.48; author dillo; state Exp; branches; next 1.41; 1.41 date 2005.06.08.23.04.15; author wiz; state Exp; branches; next 1.40; 1.40 date 2005.06.08.16.22.50; author dillo; state Exp; branches; next 1.39; 1.39 date 2005.06.08.15.57.20; author dillo; state Exp; branches; next 1.38; 1.38 date 2005.06.08.14.02.18; author dillo; state Exp; branches; next 1.37; 1.37 date 2005.06.07.20.09.35; author dillo; state Exp; branches; next 1.36; 1.36 date 2005.06.05.23.20.35; author wiz; state Exp; branches; next 1.35; 1.35 date 2005.06.03.12.28.56; author jmmv; state Exp; branches; next 1.34; 1.34 date 2005.06.01.21.03.16; author wiz; state Exp; branches; next 1.33; 1.33 date 2005.05.29.17.20.54; author jmmv; state Exp; branches; next 1.32; 1.32 date 2005.05.29.09.10.40; author wiz; state Exp; branches; next 1.31; 1.31 date 2005.05.26.16.32.42; author wiz; state Exp; branches; next 1.30; 1.30 date 2005.05.24.12.45.19; author wiz; state Exp; branches; next 1.29; 1.29 date 2005.05.24.11.11.57; author rillig; state Exp; branches; next 1.28; 1.28 date 2005.05.20.10.04.41; author rillig; state Exp; branches; next 1.27; 1.27 date 2005.05.16.09.32.16; author rillig; state Exp; branches; next 1.26; 1.26 date 2005.05.10.22.43.25; author wiz; state Exp; branches; next 1.25; 1.25 date 2005.05.10.01.22.19; author rillig; state Exp; branches; next 1.24; 1.24 date 2005.05.08.13.57.08; author wiz; state Exp; branches; next 1.23; 1.23 date 2005.05.07.22.41.15; author wiz; state Exp; branches; next 1.22; 1.22 date 2005.04.12.19.00.37; author tv; state Exp; branches; next 1.21; 1.21 date 2005.03.24.05.07.46; author ben; state Exp; branches; next 1.20; 1.20 date 2005.03.24.04.56.16; author ben; state Exp; branches; next 1.19; 1.19 date 2005.03.22.22.45.58; author hubertf; state Exp; branches; next 1.18; 1.18 date 2005.03.08.01.25.09; author xtraeme; state Exp; branches; next 1.17; 1.17 date 2005.02.10.11.30.00; author sketch; state Exp; branches; next 1.16; 1.16 date 2005.01.16.02.33.52; author grant; state Exp; branches; next 1.15; 1.15 date 2005.01.11.16.34.44; author xtraeme; state Exp; branches; next 1.14; 1.14 date 2005.01.11.15.48.17; author xtraeme; state Exp; branches; next 1.13; 1.13 date 2005.01.10.21.03.04; author hubertf; state Exp; branches; next 1.12; 1.12 date 2005.01.05.14.22.27; author agc; state Exp; branches; next 1.11; 1.11 date 2004.12.23.23.38.58; author ben; state Exp; branches; next 1.10; 1.10 date 2004.12.03.12.48.15; author wiz; state Exp; branches; next 1.9; 1.9 date 2004.12.02.22.23.46; author dillo; state Exp; branches; next 1.8; 1.8 date 2004.12.01.09.52.59; author wiz; state Exp; branches; next 1.7; 1.7 date 2004.11.22.16.52.08; author wiz; state Exp; branches; next 1.6; 1.6 date 2004.11.21.03.50.45; author hubertf; state Exp; branches; next 1.5; 1.5 date 2004.11.20.13.26.39; author hubertf; state Exp; branches; next 1.4; 1.4 date 2004.11.09.17.38.23; author hubertf; state Exp; branches; next 1.3; 1.3 date 2004.11.02.13.29.15; author hubertf; state Exp; branches; next 1.2; 1.2 date 2004.10.22.00.27.55; author hubertf; state Exp; branches; next 1.1; 1.1 date 2004.10.21.14.44.39; author grant; state Exp; branches; next ; desc @@ 1.369 log @doc/pkgsrc.*: regen @ text @ The pkgsrc guide

The pkgsrc guide

Documentation on the NetBSD packages system

Alistair Crooks

Hubert Feyrer

The pkgsrc Developers

$NetBSD: pkgsrc.xml,v 1.43 2024/01/02 07:26:32 jnemeth Exp $

Abstract

pkgsrc is a centralized package management system for Unix-like operating systems. This guide provides information for users and developers of pkgsrc. It covers installation of binary and source packages, creation of binary and source packages and a high-level overview about the infrastructure.


Table of Contents

1. What is pkgsrc?
1.1. Introduction
1.1.1. Why pkgsrc?
1.1.2. Supported platforms
1.2. Overview
1.3. Terminology
1.3.1. Roles involved in pkgsrc
1.4. Typography
I. The pkgsrc user's guide
2. Getting help
3. Where to get pkgsrc and how to keep it up-to-date
3.1. Getting pkgsrc for the first time
3.1.1. As tar archive
3.1.2. Via anonymous CVS
3.2. Keeping pkgsrc up-to-date
3.2.1. Via tar files
3.2.2. Via CVS
4. Using pkgsrc on systems other than NetBSD
4.1. Binary distribution
4.2. Bootstrapping pkgsrc
5. Using pkgsrc
5.1. Using binary packages
5.1.1. Finding binary packages
5.1.2. Installing binary packages
5.1.3. Updating packages
5.1.4. Deinstalling packages
5.1.5. Getting information about installed packages
5.1.6. Checking for security vulnerabilities in installed packages
5.1.7. Finding if newer versions of your installed packages are in pkgsrc
5.1.8. Other administrative functions
5.2. Building packages from source
5.2.1. Requirements
5.2.2. Fetching distfiles
5.2.3. How to build and install
6. Configuring pkgsrc
6.1. General configuration
6.2. Variables affecting the build process
6.3. Preferences for native or pkgsrc software
6.4. Variables affecting the installation process
6.5. Selecting and configuring the compiler
6.5.1. Selecting the compiler
6.5.2. Additional flags to the compiler (CFLAGS)
6.5.3. Additional flags to the linker (LDFLAGS)
6.6. Developer/advanced settings
6.7. Selecting Build Options
7. Creating binary packages
7.1. Building a single binary package
7.2. Settings for creation of binary packages
8. Creating binary packages for everything in pkgsrc (bulk builds)
8.1. Preparations
8.2. Running a bulk build
8.2.1. Configuration
8.3. Requirements of a full bulk build
8.4. Bulk build variants
8.4.1. Detect unknown configure options
8.4.2. Detect classes of bugs by forcing compiler warnings
8.4.3. Force compiler options only in the build phase
8.4.4. Use custom directories
8.4.5. Turn warnings into errors
8.4.6. Reject packages for which pkglint reports errors
8.4.7. Reject packages that contain forbidden strings
8.4.8. Reject packages whose self-test fails
8.4.9. Reject packages that use undefined shell variables
8.4.10. Turn off verbose logging
8.5. Creating a multiple CD-ROM packages collection
8.5.1. Example of cdpack
9. Directory layout of the installed files
9.1. File system layout in ${LOCALBASE}
9.2. File system layout in ${VARBASE}
10. Frequently Asked Questions
10.1. Are there any mailing lists for pkg-related discussion?
10.2. Utilities for package management (pkgtools)
10.3. How to use pkgsrc as non-root
10.4. How to resume transfers when fetching distfiles?
10.5. How can I install/use modular X.org from pkgsrc?
10.6. How to fetch files from behind a firewall
10.7. How to fetch files from HTTPS sites
10.8. How do I tell make fetch to do passive FTP?
10.9. How to fetch all distfiles at once
10.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
10.11. What does Could not find bsd.own.mk mean?
10.12. Using 'sudo' or `priv` with pkgsrc
10.13. How do I change the location of configuration files?
10.14. Automated security checks
10.15. Why do some packages ignore my CFLAGS?
10.16. A package does not build. What shall I do?
10.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
II. The pkgsrc developer's guide
11. Getting help
12. Package components - files, directories and contents
12.1. Makefile
12.2. distinfo
12.3. patches/*
12.3.1. Structure of a single patch file
12.3.2. Creating patch files
12.3.3. Sources where the patch files come from
12.3.4. Patching guidelines
12.3.5. Feedback to the author
12.4. Other mandatory files
12.5. Optional files
12.5.1. Files affecting the binary package
12.5.2. Files affecting the build process
12.5.3. Files affecting nothing at all
12.6. work*
12.7. files/*
13. The build process
13.1. Introduction
13.2. Program location
13.3. Directories used during the build process
13.4. Running a phase
13.5. The fetch phase
13.5.1. What to fetch and where to get it from
13.5.2. How are the files fetched?
13.6. The checksum phase
13.7. The extract phase
13.8. The patch phase
13.9. The tools phase
13.10. The wrapper phase
13.11. The configure phase
13.12. The build phase
13.13. The test phase
13.14. The install phase
13.15. The package phase
13.16. Cleaning up
13.17. Other helpful targets
14. Creating a new pkgsrc package from scratch
14.1. Common types of packages
14.1.1. Python modules and programs
14.1.2. R packages
14.1.3. TeXlive packages
14.2. Examples
14.2.1. How the www/nvu package came into pkgsrc
15. Programming in Makefiles
15.1. Caveats
15.2. Makefile variables
15.2.1. Naming conventions
15.3. Code snippets
15.3.1. Adding things to a list
15.3.2. Echoing a string exactly as-is
15.3.3. Passing CFLAGS to GNU configure scripts
15.3.4. Handling possibly empty variables
15.3.5. Testing yes/no variables in conditions
16. Options handling
16.1. Global default options
16.2. Converting packages to use bsd.options.mk
16.3. Option Names
16.4. Determining the options of dependencies
17. Tools needed for building or running
17.1. Tools for pkgsrc builds
17.2. Tools needed by packages
17.3. Tools provided by platforms
18. Buildlink methodology
18.1. Converting packages to use buildlink3
18.2. Writing buildlink3.mk files
18.2.1. Anatomy of a buildlink3.mk file
18.2.2. Updating BUILDLINK_API_DEPENDS.pkg and BUILDLINK_ABI_DEPENDS.pkg in buildlink3.mk files
18.3. Writing builtin.mk files
18.3.1. Anatomy of a builtin.mk file
19. PLIST issues
19.1. RCS ID
19.2. Semi-automatic PLIST generation
19.3. Tweaking output of make print-PLIST
19.4. Variable substitution in PLIST
19.5. Man page compression
19.6. Changing PLIST source with PLIST_SRC
19.7. Platform-specific and differing PLISTs
19.8. Build-specific PLISTs
19.9. Sharing directories between packages
20. The pkginstall framework
20.1. Files and directories outside the installation prefix
20.1.1. Directory manipulation
20.1.2. File manipulation
20.2. Configuration files
20.2.1. How PKG_SYSCONFDIR is set
20.2.2. Telling the software where configuration files are
20.2.3. Patching installation
20.2.4. Declaring configuration files
20.2.5. Disabling handling of configuration files
20.3. System startup scripts
20.3.1. Disabling handling of system startup scripts
20.4. System users and groups
20.5. System shells
20.5.1. Disabling shell registration
20.6. Fonts
20.6.1. Disabling automatic update of the fonts databases
21. Making your package work
21.1. General operation
21.1.1. How to pull in user-settable variables from mk.conf
21.1.2. User interaction
21.1.3. Handling licenses
21.1.4. Restricted packages
21.1.5. Handling dependencies
21.1.6. Handling conflicts with other packages
21.1.7. Packages that cannot or should not be built
21.1.8. Packages which should not be deleted, once installed
21.1.9. Handling packages with security problems
21.1.10. How to handle incrementing versions when fixing an existing package
21.1.11. Substituting variable text in the package files (the SUBST framework)
21.2. The fetch phase
21.2.1. Packages whose distfiles aren't available for plain downloading
21.2.2. How to handle modified distfiles with the 'old' name
21.2.3. Packages hosted on github.com
21.3. The configure phase
21.3.1. Shared libraries - libtool
21.3.2. Using libtool on GNU packages that already support libtool
21.3.3. GNU Autoconf/Automake
21.3.4. Meson / ninja
21.4. Programming languages
21.4.1. C, C++, and Fortran
21.4.2. Java
21.4.3. Go
21.4.4. Rust
21.4.5. Packages containing Perl scripts
21.4.6. Packages containing shell scripts
21.4.7. Other programming languages
21.5. The build phase
21.5.1. Compiling C and C++ code conditionally
21.5.2. How to handle compiler bugs
21.5.3. No such file or directory
21.5.4. Undefined reference to ...
21.5.5. Running out of memory
21.6. The install phase
21.6.1. Creating needed directories
21.6.2. Where to install documentation
21.6.3. Installing highscore files
21.6.4. Adding DESTDIR support to packages
21.6.5. Packages with hardcoded paths to other interpreters
21.6.6. Packages installing Perl modules
21.6.7. Packages installing pkg-config files
21.6.8. Packages installing info files
21.6.9. Packages installing man pages
21.6.10. Packages installing X11 fonts
21.6.11. Packages installing SGML or XML data
21.6.12. Packages installing extensions to the MIME database
21.6.13. Packages using intltool
21.6.14. Packages installing startup scripts
21.6.15. Packages installing TeX modules
21.6.16. Packages supporting running binaries in emulation
21.6.17. Packages installing hicolor icons
21.6.18. Packages installing desktop files
21.7. Marking packages as having problems
22. GNOME packaging and porting
22.1. Meta packages
22.2. Packaging a GNOME application
22.3. Updating GNOME to a newer version
22.4. Patching guidelines
23. Submitting and Committing
23.1. Submitting binary packages
23.2. Submitting source packages (for non-NetBSD-developers)
23.3. General notes when adding, updating, or removing packages
23.4. Commit Messages
23.5. Committing: Adding a package to CVS
23.6. Updating a package to a newer version
23.7. Renaming a package in pkgsrc
23.8. Moving a package in pkgsrc
24. Frequently Asked Questions
III. The pkgsrc infrastructure internals
25. Design of the pkgsrc infrastructure
25.1. The meaning of variable definitions
25.2. Avoiding problems before they arise
25.3. Variable evaluation
25.3.1. At load time
25.3.2. At runtime
25.4. How can variables be specified?
25.5. Designing interfaces for Makefile fragments
25.5.1. Procedures with parameters
25.5.2. Actions taken on behalf of parameters
25.6. The order in which files are loaded
25.6.1. The order in bsd.prefs.mk
25.6.2. The order in bsd.pkg.mk
26. Regression tests
26.1. Running the regression tests
26.2. Adding a new regression test
26.2.1. Overridable functions
26.2.2. Helper functions
27. Porting pkgsrc
27.1. Porting pkgsrc to a new operating system
A. A simple example package: bison
A.1. files
A.1.1. Makefile
A.1.2. DESCR
A.1.3. PLIST
A.1.4. Checking a package with pkglint
A.2. Steps for building, installing, packaging
B. Security hardening
B.1. Mechanisms
B.1.1. Enabled by default
B.1.2. Not enabled by default
B.2. Caveats
B.2.1. Problems with PKGSRC_MKPIE
B.2.2. Problems with PKGSRC_USE_FORTIFY
B.2.3. Problems with PKGSRC_USE_RELRO
B.2.4. Problems with PKGSRC_USE_SSP
B.3. Auditing the system
B.3.1. Checking for PIE
B.3.2. Checking for partial RELRO
B.3.3. Checking for full RELRO
B.3.4. Checking for SSP
C. Build logs
C.1. Building figlet
C.2. Packaging figlet
D. Directory layout of the pkgsrc FTP server
D.1. distfiles: The distributed source files
D.2. misc: Miscellaneous things
D.3. packages: Binary packages
D.4. reports: Bulk build reports
D.5. current, stable, pkgsrc-20xxQy: source packages
E. Help topics
F. Editing guidelines for the pkgsrc guide
F.1. Make targets
F.2. Procedure

List of Tables

1.1. Platforms supported by pkgsrc
12.1. Patching examples
22.1. PLIST handling for GNOME packages

Chapter 1. What is pkgsrc?

1.1. Introduction

There is a lot of software freely available for Unix-based systems, which is usually available in form of the source code. Before such software can be used, it needs to be configured to the local system, compiled and installed, and this is exactly what The NetBSD Packages Collection (pkgsrc) does. pkgsrc also has some basic commands to handle binary packages, so that not every user has to build the packages for himself, which is a time-costly task.

pkgsrc currently contains several thousand packages, including:

… just to name a few.

pkgsrc has built-in support for handling varying dependencies, such as pthreads and X11, and extended features such as IPv6 support on a range of platforms.

1.1.1. Why pkgsrc?

pkgsrc provides the following key features:

  • Easy building of software from source as well as the creation and installation of binary packages. The source and latest patches are retrieved from a master or mirror download site, checksum verified, then built on your system. Support for binary-only distributions is available for both native platforms and NetBSD emulated platforms.

  • All packages are installed in a consistent directory tree, including binaries, libraries, man pages and other documentation.

  • Tracking of package dependencies automatically, including when performing updates, to ensure required packages are installed. The configuration files of various packages are handled automatically during updates, so local changes are preserved.

  • Like NetBSD, pkgsrc is designed with portability in mind and consists of highly portable code. This allows the greatest speed of development when porting to a new platform. This portability also ensures that pkgsrc is consistent across all platforms.

  • The installation prefix, acceptable software licenses, international encryption requirements and build-time options for a large number of packages are all set in a simple, central configuration file.

  • The entire source (not including the distribution files) is freely available under a BSD license, so you may extend and adapt pkgsrc to your needs. Support for local packages and patches is available right out of the box, so you can configure it specifically for your environment.

The following principles are basic to pkgsrc:

  • It should only work if it's right. — That means, if a package contains bugs, it's better to find them and to complain about them rather than to just install the package and hope that it works. There are numerous checks in pkgsrc that try to find such bugs: static analysis tools (pkgtools/pkglint), build-time checks (portability of shell scripts), and post-installation checks (installed files, references to shared libraries, script interpreters).

  • If it works, it should work everywhere — Like NetBSD has been ported to many hardware architectures, pkgsrc has been ported to many operating systems. Care is taken that packages behave the same on all platforms.

1.1.2. Supported platforms

pkgsrc consists of both a source distribution and a binary distribution for these operating systems. After retrieving the required source or binaries, you can be up and running with pkgsrc in just minutes!

pkgsrc was derived from FreeBSD's ports system, and initially developed for NetBSD only. Since then, pkgsrc has grown a lot, and now supports the following platforms:

Table 1.1. Platforms supported by pkgsrc

Platform Date Support Added Notes
NetBSD Aug 1997  
Solaris Mar 1999 README.Solaris
Linux Jun 1999 README.Linux
Darwin / Mac OS X / OS X / macOS Oct 2001 README.macOS
FreeBSD Nov 2002 README.FreeBSD
OpenBSD Nov 2002 README.OpenBSD
IRIX Dec 2002 README.IRIX
BSD/OS Dec 2003  
AIX Dec 2003 README.AIX
Interix (Microsoft Windows Services for Unix) Mar 2004 README.Interix
DragonFlyBSD Oct 2004  
OSF/1 Nov 2004 README.OSF1
HP-UX Apr 2007 README.HPUX
Haiku Sep 2010 README.Haiku
MirBSD Jan 2011  
Minix3 Nov 2011 README.Minix3
Cygwin Mar 2013 README.Cygwin
GNU/kFreeBSD Jul 2013 README.GNUkFreeBSD
Bitrig Jun 2014 Removed from pkgsrc Sep 2022

1.2. Overview

This document is divided into three parts. The first, The pkgsrc user's guide, describes how one can use one of the packages in the Package Collection, either by installing a precompiled binary package, or by building one's own copy using the NetBSD package system. The second part, The pkgsrc developer's guide, explains how to prepare a package so it can be easily built by other NetBSD users without knowing about the package's building details. The third part, The pkgsrc infrastructure internals is intended for those who want to understand how pkgsrc is implemented.

This document is available in various formats: HTML, PDF, PS, TXT.

1.3. Terminology

There has been a lot of talk about ports, packages, etc. so far. Here is a description of all the terminology used within this document.

Package

A set of files and building instructions that describe what's necessary to build a certain piece of software using pkgsrc. Packages are traditionally stored under /usr/pkgsrc, but may be stored in any location, referred to as PKGSRCDIR.

The NetBSD package system

This is the former name of pkgsrc. It is part of the NetBSD operating system and can be bootstrapped to run on non-NetBSD operating systems as well. It handles building (compiling), installing, and removing of packages.

Distfile

This term describes the file or files that are provided by the author of the piece of software to distribute his work. All the changes necessary to build on NetBSD are reflected in the corresponding package. Usually the distfile is in the form of a compressed tar-archive, but other types are possible, too. Distfiles are usually stored below /usr/pkgsrc/distfiles.

Port

This is the term used by FreeBSD and OpenBSD people for what we call a package. In NetBSD terminology, port refers to a different architecture.

Precompiled/binary package

A set of binaries built with pkgsrc from a distfile and stuffed together in a single .tgz file so it can be installed on machines of the same machine architecture without the need to recompile. Packages are usually generated in /usr/pkgsrc/packages; there is also an archive on ftp.NetBSD.org.

Sometimes, this is referred to by the term package too, especially in the context of precompiled packages.

Program

The piece of software to be installed which will be constructed from all the files in the distfile by the actions defined in the corresponding package.

1.3.1. Roles involved in pkgsrc

pkgsrc users

The pkgsrc users are people who use the packages provided by pkgsrc. Typically they are system administrators. The people using the software that is inside the packages (maybe called end users) are not covered by the pkgsrc guide.

There are two kinds of pkgsrc users: Some only want to install pre-built binary packages. Others build the pkgsrc packages from source, either for installing them directly or for building binary packages themselves. For pkgsrc users Part I, “The pkgsrc user's guide” should provide all necessary documentation.

package maintainers

A package maintainer creates packages as described in Part II, “The pkgsrc developer's guide”.

infrastructure developers

These people are involved in all those files that live in the mk/ directory and below. Only these people should need to read through Part III, “The pkgsrc infrastructure internals”, though others might be curious, too.

1.4. Typography

When giving examples for commands, shell prompts are used to show if the command should/can be issued as root, or if normal user privileges are sufficient. We use a # for root's shell prompt, a % for users' shell prompt, assuming they use the C-shell or tcsh and a $ for Bourne shell and derivatives.

Part I. The pkgsrc user's guide

Table of Contents

2. Getting help
3. Where to get pkgsrc and how to keep it up-to-date
3.1. Getting pkgsrc for the first time
3.1.1. As tar archive
3.1.2. Via anonymous CVS
3.2. Keeping pkgsrc up-to-date
3.2.1. Via tar files
3.2.2. Via CVS
4. Using pkgsrc on systems other than NetBSD
4.1. Binary distribution
4.2. Bootstrapping pkgsrc
5. Using pkgsrc
5.1. Using binary packages
5.1.1. Finding binary packages
5.1.2. Installing binary packages
5.1.3. Updating packages
5.1.4. Deinstalling packages
5.1.5. Getting information about installed packages
5.1.6. Checking for security vulnerabilities in installed packages
5.1.7. Finding if newer versions of your installed packages are in pkgsrc
5.1.8. Other administrative functions
5.2. Building packages from source
5.2.1. Requirements
5.2.2. Fetching distfiles
5.2.3. How to build and install
6. Configuring pkgsrc
6.1. General configuration
6.2. Variables affecting the build process
6.3. Preferences for native or pkgsrc software
6.4. Variables affecting the installation process
6.5. Selecting and configuring the compiler
6.5.1. Selecting the compiler
6.5.2. Additional flags to the compiler (CFLAGS)
6.5.3. Additional flags to the linker (LDFLAGS)
6.6. Developer/advanced settings
6.7. Selecting Build Options
7. Creating binary packages
7.1. Building a single binary package
7.2. Settings for creation of binary packages
8. Creating binary packages for everything in pkgsrc (bulk builds)
8.1. Preparations
8.2. Running a bulk build
8.2.1. Configuration
8.3. Requirements of a full bulk build
8.4. Bulk build variants
8.4.1. Detect unknown configure options
8.4.2. Detect classes of bugs by forcing compiler warnings
8.4.3. Force compiler options only in the build phase
8.4.4. Use custom directories
8.4.5. Turn warnings into errors
8.4.6. Reject packages for which pkglint reports errors
8.4.7. Reject packages that contain forbidden strings
8.4.8. Reject packages whose self-test fails
8.4.9. Reject packages that use undefined shell variables
8.4.10. Turn off verbose logging
8.5. Creating a multiple CD-ROM packages collection
8.5.1. Example of cdpack
9. Directory layout of the installed files
9.1. File system layout in ${LOCALBASE}
9.2. File system layout in ${VARBASE}
10. Frequently Asked Questions
10.1. Are there any mailing lists for pkg-related discussion?
10.2. Utilities for package management (pkgtools)
10.3. How to use pkgsrc as non-root
10.4. How to resume transfers when fetching distfiles?
10.5. How can I install/use modular X.org from pkgsrc?
10.6. How to fetch files from behind a firewall
10.7. How to fetch files from HTTPS sites
10.8. How do I tell make fetch to do passive FTP?
10.9. How to fetch all distfiles at once
10.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
10.11. What does Could not find bsd.own.mk mean?
10.12. Using 'sudo' or `priv` with pkgsrc
10.13. How do I change the location of configuration files?
10.14. Automated security checks
10.15. Why do some packages ignore my CFLAGS?
10.16. A package does not build. What shall I do?
10.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?

Chapter 2. Getting help

To get help when using pkgsrc, the definitive source is this document, the pkgsrc guide. If you don't find anything here, there are alternatives:

  • The built-in pkgsrc help, which is available after bootstrapping pkgsrc. Run bmake help topic=… to get help for any topic, such as a variable name like BUILD_DEFS, a make target like do-build, a missing C or C++ function like strcasecmp or any other topic.

    The available help topics are listed in Appendix E, Help topics.

  • To see the value of a single variable, run bmake show-var VARNAME=X.

  • To see the values of the most common variables, run bmake show-all. These variables are grouped by topic. To see the variables for a single topic, run bmake show-all-topic, for example bmake show-all-fetch.

  • The pkgsrc-users mailing list, to which you can subscribe and then ask your questions.

  • The #pkgsrc IRC channel, which is accessible via a web browser or by using a specialized chat program such as XChat. Pick any user name and join the channel #pkgsrc.

Chapter 3. Where to get pkgsrc and how to keep it up-to-date

Before you download and extract the files, you need to decide where you want to extract them. When using pkgsrc as root user, pkgsrc is usually installed in /usr/pkgsrc. You are though free to install the sources and binary packages wherever you want in your filesystem, provided that the pathname does not contain white-space or other characters that are interpreted specially by the shell and some other programs. A safe bet is to use only letters, digits, underscores and dashes.

3.1. Getting pkgsrc for the first time

Before you download any pkgsrc files, you should decide whether you want the current branch or the stable branch. The latter is forked on a quarterly basis from the current branch and only gets modified for security updates. The names of the stable branches are built from the year and the quarter, for example 2023Q3.

The second step is to decide how you want to download pkgsrc. You can get it as a tar file or via CVS. Both ways are described here.

Note that tar archive contains CVS working copy. Thus you can switch to using CVS at any later time.

3.1.1. As tar archive

The primary download location for all pkgsrc files is https://cdn.NetBSD.org/pub/pkgsrc/ or ftp://ftp.NetBSD.org/pub/pkgsrc/ (it points to the same location). There are a number of subdirectories for different purposes, which are described in detail in Appendix D, Directory layout of the pkgsrc FTP server.

The tar archive for the current branch is in the directory current and is called pkgsrc.tar.gz. It is autogenerated weekly.

To save download time we provide bzip2- and xz-compressed archives which are published at pkgsrc.tar.bz2 and pkgsrc.tar.xz respectively.

You can fetch the same files using FTP.

The tar file for the stable branch 2023Q3 is in the directory pkgsrc-2023Q3 and is also called pkgsrc.tar.gz.

To download the latest pkgsrc stable tarball, run:

$ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2023Q3/pkgsrc.tar.gz

If you prefer, you can also fetch it using "wget", "curl", or your web browser.

Then, extract it with:

$ tar -xzf pkgsrc.tar.gz -C /usr

This will create the directory pkgsrc/ in /usr/ and all the package source will be stored under /usr/pkgsrc/.

To download pkgsrc-current, run:

$ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz

3.1.2. Via anonymous CVS

To fetch a specific pkgsrc stable branch, run:

$ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2023Q3 -P pkgsrc

This will create the directory pkgsrc/ in your /usr/ directory and all the package source will be stored under /usr/pkgsrc/.

To fetch the pkgsrc current branch, run:

$ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc

Refer to the list of available mirrors to choose a faster CVS mirror, if needed.

If you get error messages from rsh, you need to set CVS_RSH variable. E.g.:

$ cd /usr && env CVS_RSH=ssh cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc

Refer to documentation on your command shell how to set CVS_RSH=ssh permanently. For Bourne shells, you can set it in your .profile or better globally in /etc/profile:

# set CVS remote shell command
CVS_RSH=ssh
export CVS_RSH

By default, CVS doesn't do things like most people would expect it to do. But there is a way to convince CVS, by creating a file called .cvsrc in your home directory and saving the following lines to it. This file will save you lots of headache and some bug reports, so we strongly recommend it. You can find an explanation of this file in the CVS documentation.

# recommended CVS configuration file from the pkgsrc guide
cvs -q
checkout -P
update -dP
diff -upN
rdiff -u
release -d

3.2. Keeping pkgsrc up-to-date

The preferred way to keep pkgsrc up-to-date is via CVS (which also works if you have first installed it via a tar file). It saves bandwidth and hard disk activity, compared to downloading the tar file again.

3.2.1. Via tar files

Warning

When updating from a tar file, you first need to completely remove the old pkgsrc directory. Otherwise those files that have been removed from pkgsrc in the mean time will not be removed on your local disk, resulting in inconsistencies. When removing the old files, any changes that you have done to the pkgsrc files will be lost after updating. Therefore updating via CVS is strongly recommended.

Note that by default the distfiles and the binary packages are saved in the pkgsrc tree, so don't forget to rescue them before updating. You can also configure pkgsrc to store distfiles and packages in directories outside the pkgsrc tree by setting the DISTDIR and PACKAGES variables. See Chapter 6, Configuring pkgsrc for the details.

To update pkgsrc from a tar file, download the tar file as explained above. Then, make sure that you have not made any changes to the files in the pkgsrc directory. Remove the pkgsrc directory and extract the new tar file. Done.

3.2.2. Via CVS

To update pkgsrc via CVS, change to the pkgsrc directory and run cvs:

$ cd /usr/pkgsrc && cvs update -dP

If you get error messages from rsh, you need to set CVS_RSH variable as described above. E.g.:

$ cd /usr/pkgsrc && env CVS_RSH=ssh cvs up -dP

3.2.2.1. Switching between different pkgsrc branches

When updating pkgsrc, the CVS program keeps track of the branch you selected. But if you, for whatever reason, want to switch from the stable branch to the current one, you can do it by adding the option -A after the update keyword. To switch from the current branch back to the stable branch, add the -rpkgsrc-2023Q3 option.

3.2.2.2. What happens to my changes when updating?

When you update pkgsrc, the CVS program will only touch those files that are registered in the CVS repository. That means that any packages that you created on your own will stay unmodified. If you change files that are managed by CVS, later updates will try to merge your changes with those that have been done by others. See the CVS manual, chapter update for details.

Chapter 4. Using pkgsrc on systems other than NetBSD

4.1. Binary distribution

See Section 5.1, “Using binary packages”.

4.2. Bootstrapping pkgsrc

pkgsrc can be bootstrapped for use in two different modes: privileged and unprivileged one. In unprivileged mode in contrast to privileged one all programs are installed under one particular user and cannot utilise privileged operations (packages don't create special users and all special file permissions like setuid are ignored).

Installing the bootstrap kit from source should be as simple as:

# env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc
# cd pkgsrc/bootstrap
# ./bootstrap
    

To bootstrap in unprivileged mode pass --unprivileged flag to bootstrap

By default, in privileged mode pkgsrc uses /usr/pkg for prefix where programs will be installed in, and /usr/pkg/pkgdb for the package database directory where pkgsrc will do its internal bookkeeping, /var is used as varbase, where packages install their persistent data. In unprivileged mode pkgsrc uses ~/pkg for prefix, ~/pkg/pkgdb for the package database, and ~/pkg/var for varbase.

You can change default layout using command-line arguments. Run ./bootstrap --help to get details.

Note

The bootstrap installs a bmake tool. Use this bmake when building via pkgsrc. For examples in this guide, use bmake instead of make.

Note

It is possible to bootstrap multiple instances of pkgsrc using non-intersecting directories. Use bmake corresponding to the installation you're working with to build and install packages.

Chapter 5. Using pkgsrc

Basically, there are two ways of using pkgsrc. The first is to only install the package tools and to use binary packages that someone else has prepared. This is the pkg in pkgsrc. The second way is to install the src of pkgsrc, too. Then you are able to build your own packages, and you can still use binary packages from someone else.

5.1. Using binary packages

On the cdn.NetBSD.org site and mirrors, there are collections of binary packages, ready to be installed. These binary packages have been built using the default settings for the directories, that is:

  • /usr/pkg for LOCALBASE, where most of the files are installed,

  • /usr/pkg/etc for configuration files,

  • /var for VARBASE, where those files are installed that may change after installation.

If you cannot use these directories for whatever reasons (maybe because you're not root), you cannot use these binary packages, but have to build the packages yourself, which is explained in Section 4.2, “Bootstrapping pkgsrc”.

5.1.1. Finding binary packages

To install binary packages, you first need to know from where to get them. The first place where you should look is on the main pkgsrc CDN in the directory /pub/pkgsrc/packages.

This directory contains binary packages for multiple platforms. First, select your operating system. Then, select your hardware architecture, and in the third step, the OS version and the version of pkgsrc.

In this directory, you may find a file called bootstrap.tar.gz which contains the package management tools. If the file is missing, it is likely that your operating system already provides those tools. Download the file and extract it in the / directory. It will create the directories /usr/pkg (containing the tools for managing binary packages and the database of installed packages).

5.1.2. Installing binary packages

In the directory from the last section, there is a subdirectory called All/, which contains all the binary packages that are available for the platform, excluding those that may not be distributed via HTTP or FTP.

To install packages directly from an FTP or HTTP server, run the following commands in a Bourne-compatible shell (be sure to su to root first):

# PATH="/usr/pkg/sbin:/usr/pkg/bin:$PATH"
# PKG_PATH="https://cdn.NetBSD.org/pub/pkgsrc/packages"
# PKG_PATH="$PKG_PATH/OPSYS/ARCH/VERSIONS/All/"
# export PATH PKG_PATH
# pkg_add pkgin

Instead of URLs, you can also use local paths, for example if you are installing from a set of CDROMs, DVDs or an NFS-mounted repository. If you want to install packages from multiple sources, you can separate them by a semicolon in PKG_PATH.

After these preparations, installing a package is very easy:

# pkgin search nginx
nginx-1.19.6         Lightweight HTTP server and mail proxy server
nginx-1.18.0nb8      Lightweight HTTP server and mail proxy server
# pkgin install zsh nginx-1.19.6 vim

Note that pkgin is a user-friendly frontend to the pkg_* tools.

Any prerequisite packages needed to run the package in question will be installed, too, assuming they are present in the repository.

After you've installed packages, be sure to have /usr/pkg/bin and /usr/pkg/sbin in your PATH so you can actually start the just installed program.

5.1.3. Updating packages

To update binary packages, it is recommended that you use pkgin upgrade. This will compare the remote package repository to your locally installed packages and safely replace any older packages.

Note that pkgsrc is released as quarterly branches. If you are updating to a newer quarterly branch of pkgsrc, you may need to adjust the repository in /usr/pkg/etc/pkgin/repositories.conf.

5.1.4. Deinstalling packages

To deinstall a package, it does not matter whether it was installed from source code or from a binary package. Neither the pkgin or the pkg_delete command need to know.

To delete a package, you can just run pkgin remove package-name. The package name can be given with or without version number.

5.1.5. Getting information about installed packages

The pkg_info shows information about installed packages or binary package files. As with other management tools, it works with packages installed from source or binaries.

5.1.6. Checking for security vulnerabilities in installed packages

The pkgsrc Security Team and Packages Groups maintain a list of known vulnerabilities to packages which are (or have been) included in pkgsrc. The list is available from the NetBSD CDN at https://cdn.NetBSD.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities.

Please note that not every "vulnerability" with a CVE assignment is exploitable in every configuration. Some bugs are marked as active simply because an fix was not marked as such. Operating system specific hardening and mitigation features may also reduce the impact of bugs.

Through pkg_admin fetch-pkg-vulnerabilities, this list can be downloaded automatically, and a security audit of all packages installed on a system can take place.

There are two components to auditing. The first step, pkg_admin fetch-pkg-vulnerabilities, is for downloading the list of vulnerabilities from the NetBSD FTP site. The second step, pkg_admin audit, checks to see if any of your installed packages are vulnerable. If a package is vulnerable, you will see output similar to the following:

Package samba-2.0.9 has a local-root-shell vulnerability, see
    https://www.samba.org/samba/whatsnew/macroexploit.html

You may wish to have the vulnerabilities file downloaded daily so that it remains current. This may be done by adding an appropriate entry to the root users crontab(5) entry. For example the entry

# Download vulnerabilities file
0 3 * * * /usr/pkg/sbin/pkg_admin fetch-pkg-vulnerabilities >/dev/null 2>&1
# Audit the installed packages and email results to root
9 3 * * * /usr/pkg/sbin/pkg_admin audit |mail -s "Installed package audit result" \
	    root >/dev/null 2>&1
      

will update the vulnerability list every day at 3AM, followed by an audit at 3:09AM. The result of the audit are then emailed to root. On NetBSD this may be accomplished instead by adding the following line to /etc/daily.conf:

fetch_pkg_vulnerabilities=YES
      

to fetch the vulnerability list from the daily security script. The system is set to audit the packages by default but can be set explicitly, if desired (not required), by adding the following line to /etc/security.conf:

check_pkg_vulnerabilities=YES
      

see daily.conf(5) and security.conf(5) for more details.

5.1.7. Finding if newer versions of your installed packages are in pkgsrc

Install pkgtools/lintpkgsrc and run lintpkgsrc with the -i argument to check if any packages are stale, e.g.

% lintpkgsrc -i
...
Version mismatch: 'tcsh' 6.09.00 vs 6.10.00
    

5.1.8. Other administrative functions

The pkg_admin executes various administrative functions on the package system.

5.2. Building packages from source

After obtaining pkgsrc, the pkgsrc directory now contains a set of packages, organized into categories. You can browse the online index of packages, or run make readme from the pkgsrc directory to build local README.html files for all packages, viewable with any web browser such as www/lynx or www/firefox.

The default prefix for installed packages is /usr/pkg. If you wish to change this, you should do so by setting LOCALBASE in mk.conf. You should not try to use multiple different LOCALBASE definitions on the same system (inside a chroot is an exception).

The rest of this chapter assumes that the package is already in pkgsrc. If it is not, see Part II, “The pkgsrc developer's guide” for instructions how to create your own packages.

5.2.1. Requirements

To build packages from source, you need a working C compiler. On NetBSD, you need to install the comp and the text distribution sets. If you want to build X11-related packages, the xbase and xcomp distribution sets are required, too.

5.2.2. Fetching distfiles

The first step for building a package is downloading the distfiles (i.e. the unmodified source). If they have not yet been downloaded, pkgsrc will fetch them automatically.

If you have all files that you need in the distfiles directory, you don't need to connect. If the distfiles are on CD-ROM, you can mount the CD-ROM on /cdrom and add:

DISTDIR=/cdrom/pkgsrc/distfiles

to your mk.conf.

By default a list of distribution sites will be randomly intermixed to prevent huge load on servers which holding popular packages (for example, SourceForge.net mirrors). Thus, every time when you need to fetch yet another distfile all the mirrors will be tried in new (random) order. You can turn this feature off by setting MASTER_SORT_RANDOM=NO (for PKG_DEVELOPERs it's already disabled).

You can overwrite some of the major distribution sites to fit to sites that are close to your own. By setting one or two variables you can modify the order in which the master sites are accessed. MASTER_SORT contains a whitespace delimited list of domain suffixes. MASTER_SORT_REGEX is even more flexible, it contains a whitespace delimited list of regular expressions. It has higher priority than MASTER_SORT. Have a look at pkgsrc/mk/defaults/mk.conf to find some examples. This may save some of your bandwidth and time.

You can change these settings either in your shell's environment, or, if you want to keep the settings, by editing the mk.conf file, and adding the definitions there.

If a package depends on many other packages (such as meta-pkgs/kde4), the build process may alternate between periods of downloading source, and compiling. To ensure you have all the source downloaded initially you can run the command:

% make fetch-list | sh

which will output and run a set of shell commands to fetch the necessary files into the distfiles directory. You can also choose to download the files manually.

5.2.3. How to build and install

Once the software has downloaded, any patches will be applied, then it will be compiled for you. This may take some time depending on your computer, and how many other packages the software depends on and their compile time.

Note

If using bootstrap or pkgsrc on a non-NetBSD system, use the pkgsrc bmake command instead of make in the examples in this guide.

For example, type

% cd misc/figlet
% make
    

at the shell prompt to build the various components of the package.

The next stage is to actually install the newly compiled program onto your system. Do this by entering:

% make install
    

while you are still in the directory for whatever package you are installing.

Installing the package on your system may require you to be root. However, pkgsrc has a just-in-time-su feature, which allows you to only become root for the actual installation step.

That's it, the software should now be installed and setup for use. You can now enter:

% make clean
    

to remove the compiled files in the work directory, as you shouldn't need them any more. If other packages were also added to your system (dependencies) to allow your program to compile, you can tidy these up also with the command:

% make clean-depends
    

Taking the figlet utility as an example, we can install it on our system by building as shown in Appendix C, Build logs.

The program is installed under the default root of the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your environment, and it will use that value as the root of your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your environment. Please note that you should use a directory which is dedicated to packages and not shared with other programs (i.e., do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent possible conflicts between programs and other files installed by the package system and whatever else may have been installed there.

Some packages look in mk.conf to alter some configuration options at build time. Have a look at pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in mk.conf to save having to remember to set them each time you want to use pkgsrc.

Occasionally, people want to look under the covers to see what is going on when a package is building or being installed. This may be for debugging purposes, or out of simple curiosity. A number of utility values have been added to help with this.

  1. If you invoke the make(1) command with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

    make patch PKG_DEBUG_LEVEL=2

    will show all the commands that are invoked, up to and including the patch stage.

  2. If you want to know the value of a certain make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the make(1) variable LOCALBASE:

    % make show-var VARNAME=LOCALBASE
    /usr/pkg
    %
    	

If you want to install a binary package that you've either created yourself (see next section), that you put into pkgsrc/packages manually or that is located on a remote FTP server, you can use the "bin-install" target. This target will install a binary package - if available - via pkg_add(1), else do a make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITES, which defaults to ftp.NetBSD.org. Any flags that should be added to pkg_add(1) can be put into BIN_INSTALL_FLAGS. See pkgsrc/mk/defaults/mk.conf for more details.

A final word of warning: If you set up a system that has a non-standard setting for LOCALBASE, be sure to set that before any packages are installed, as you cannot use several directories for the same purpose. Doing so will result in pkgsrc not being able to properly detect your installed packages, and fail miserably. Note also that precompiled binary packages are usually built with the default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

Chapter 6. Configuring pkgsrc

The whole pkgsrc system is configured in a single file, usually called mk.conf. In which directory pkgsrc looks for that file depends on the installation. On NetBSD, when you use make(1) from the base system, it is in the directory /etc/. In all other cases the default location is ${PREFIX}/etc/, depending on where you told the bootstrap program to install the binary packages.

The format of the configuration file is that of the usual BSD-style Makefiles. The whole pkgsrc configuration is done by setting variables in this file. Note that you can define all kinds of variables, and no special error checking (for example for spelling mistakes) takes place.

6.1. General configuration

The following variables apply to all pkgsrc packages. A complete list of the variables that can be configured by the user is available in mk/defaults/mk.conf, together with some comments that describe each variable's intent.

  • LOCALBASE: Where packages will be installed. The default is /usr/pkg. Do not mix binary packages with different LOCALBASEs!

  • CROSSBASE: Where cross category packages will be installed. The default is ${LOCALBASE}/cross.

  • X11BASE: Where X11 is installed on the system. The default is /usr/X11R7.

  • DISTDIR: Where to store the downloaded copies of the original source distributions used for building pkgsrc packages. The default is ${PKGSRCDIR}/distfiles.

  • PKG_DBDIR: Where the database about installed packages is stored. The default is /usr/pkg/pkgdb.

  • MASTER_SITE_OVERRIDE: If set, override the packages' MASTER_SITES with this value.

  • MASTER_SITE_BACKUP: Backup location(s) for distribution files and patch files if not found locally or in ${MASTER_SITES} or ${PATCH_SITES} respectively. The defaults is ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/${DIST_SUBDIR}/.

  • BINPKG_SITES: List of sites carrying binary pkgs. rel and arch are replaced with OS release (2.0, etc.) and architecture (mipsel, etc.).

  • ACCEPTABLE_LICENSES: List of acceptable licenses. License names are case-sensitive. Whenever you try to build a package whose license is not in this list, you will get an error message. If the license condition is simple enough, the error message will include specific instructions on how to change this variable.

6.2. Variables affecting the build process

  • PACKAGES: The top level directory for the binary packages. The default is ${PKGSRCDIR}/packages.

  • WRKOBJDIR: The top level directory where, if defined, the separate working directories will get created, and symbolically linked to from ${WRKDIR} (see below). This is useful for building packages on several architectures, then ${PKGSRCDIR} can be NFS-mounted while ${WRKOBJDIR} is local to every architecture. (It should be noted that PKGSRCDIR should not be set by the user — it is an internal definition which refers to the root of the pkgsrc tree. It is possible to have many pkgsrc tree instances.)

  • LOCALPATCHES: Directory for local patches that aren't part of pkgsrc. See Section 12.3, “patches/* for more information.

  • PKGMAKECONF: Location of the mk.conf file used by a package's BSD-style Makefile. If this is not set, MAKECONF is set to /dev/null to avoid picking up settings used by builds in /usr/src.

6.3. Preferences for native or pkgsrc software

Whenever a package depends on a package that has a builtin.mk file, the dependent package can either use the built-in (native) version from the base system or the pkgsrc-provided version. This only affects dependencies, so it is still possible to build the pkgsrc package devel/pcre++ even when other packages depend on the native pcre++ version instead.

To force using the pkgsrc-provided version for a particular package, define PREFER_PKGSRC = package-ID in mk.conf. To force using the native package, define PREFER_NATIVE = package-ID. In both cases, the package-ID is the one from the buildlink3.mk of the package. In most cases, this ID is the same as the directory name of the package, but for example, devel/pcre++ has the package ID pcrexx.

For the packages that are not listed by their package ID, pkgsrc uses the pkgsrc-provided version if PREFER_PKGSRC contains the word yes. Otherwise, if PREFER_NATIVE contains the word yes, pkgsrc uses the native version. For example, to require using the pkgsrc-provided versions for all but the most basic bits on a NetBSD system, you can set:

PREFER_PKGSRC=  yes
PREFER_NATIVE=  getopt skey tcp_wrappers

A package must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

PREFER_PKGSRC and PREFER_NATIVE should be set during bootstrap to ensure that the bootstrap process does not use inapropriate native tools as dependencies for core packages.

# ./bootstrap --prefer-pkgsrc yes --prefer-native openssl

Switching between settings globally at a later date can introduce complications with dependency resolution. This is caused by packages built with the opposite preference being installed alongside each other. Hence, when changing any of these variables after bootstrap, you need to rebuild all packages depending on those whose preference has been changed. This is not trivial and should be avoided.

When using pkgsrc on Linux systems, there is high risk of leakage, where programs installed by pkgsrc may inadvertently use a command or library not installed by pkgsrc, e.g. those installed by yum or apt. Such foreign dependencies may be installed, removed, or upgraded to a version incompatible with the pkgsrc package at any time, causing pkgsrc packages to subsequently malfunction. Pkgsrc cannot prevent this, as it has no control over other package managers. Another potential problem is that under Redhat Enterprise and related Linux systems, yum packages are only patched and never upgraded, so eventually they may become too outdated for use by pkgsrc. Even intentionally using foreign dependencies, not considered leakage, can lead to these problems, so it is generally discouraged. In order to minimize such problems, PREFER_PKGSRC defaults to yes on Linux systems. This ensures that pkgsrc is aware of any changes to dependency packages and can rebuild or upgrade the entire dependency tree as needed. This default can be overridden by setting --prefer-pkgsrc to a list of packages and --prefer-native to yes.

6.4. Variables affecting the installation process

  • PKGSRC_KEEP_BIN_PKGS: By default, binary packages of built packages are preserved in ${PACKAGES}/All. Setting this variable to "no" prevents this.

Packages have to support installation into a subdirectory of WRKDIR. This allows a package to be built, before the actual filesystem is touched. DESTDIR support exists in two variations:

  • Basic DESTDIR support means that the package installation and packaging is still run as root.

  • Full DESTDIR support can run the complete build, installation and packaging as normal user. Root privileges are only needed to add packages.

With basic DESTDIR support, make clean needs to be run as root.

Considering the foo/bar package, DESTDIR full support can be tested using the following commands

$ id
uid=1000(myusername) gid=100(users) groups=100(users),0(wheel)
$ mkdir $HOME/packages
$ cd $PKGSRCDIR/foo/bar

Verify DESTDIR full support, no root privileges should be needed

$ make stage-install

Create a package without root privileges

$ make PACKAGES=$HOME/packages package

For the following command, you must be able to gain root privileges using su(1)

$ make PACKAGES=$HOME/packages install

Then, as a simple user

$ make clean

6.5. Selecting and configuring the compiler

6.5.1. Selecting the compiler

By default, pkgsrc will use GCC to build packages. This may be overridden by setting the following variables in /etc/mk.conf:

PKGSRC_COMPILER:

This is a list of values specifying the chain of compilers to invoke when building packages. Valid values are:

  • ccc: Compaq C Compilers (Tru64)

  • ccache: compiler cache (chainable)

  • clang: Clang C and Objective-C compiler

  • distcc: distributed C/C++ (chainable)

  • f2c: Fortran 77 to C compiler (chainable)

  • icc: Intel C++ Compiler (Linux)

  • ido: SGI IRIS Development Option cc (IRIX 5)

  • gcc: GNU C/C++ Compiler

  • hp: HP-UX C/aC++ compilers

  • mipspro: Silicon Graphics, Inc. MIPSpro (n32/n64)

  • mipspro-ucode: Silicon Graphics, Inc. MIPSpro (o32)

  • sunpro: Sun Microsystems, Inc. WorkShip/Forte/Sun ONE Studio

  • xlc: IBM's XL C/C++ compiler suite

The default is gcc. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. ccache gcc. This variable should always be terminated with a value for a real compiler. Note that only one real compiler should be listed (e.g. sunpro gcc is not allowed).

GCC_REQD:

This specifies the minimum version of GCC to use when building packages. If the system GCC doesn't satisfy this requirement, then pkgsrc will build and install one of the GCC packages to use instead.

PYTHON_VERSION_DEFAULT:

Specifies which version of python to use when several options are available.

PKGSRC_FORTRAN:

Specifies the Fortran compiler to use. The default is gfortran.

GFORTRAN_VERSION:

If PKGSRC_FORTRAN= gfortran is used, this option specifies which version to use.

6.5.2. Additional flags to the compiler (CFLAGS)

If you wish to set the CFLAGS variable, please make sure to use the += operator instead of the = operator:

CFLAGS+=        -your -flags

Using CFLAGS= (i.e. without the +) may lead to problems with packages that need to add their own flags. You may want to take a look at the devel/cpuflags package if you're interested in optimization specifically for the current CPU.

6.5.3. Additional flags to the linker (LDFLAGS)

If you want to pass flags to the linker, both in the configure step and the build step, you can do this in two ways. Either set LDFLAGS or LIBS. The difference between the two is that LIBS will be appended to the command line, while LDFLAGS come earlier. LDFLAGS is pre-loaded with rpath settings for ELF machines depending on the setting of USE_IMAKE or the inclusion of mk/x11.buildlink3.mk. As with CFLAGS, if you do not wish to override these settings, use the += operator:

LDFLAGS+=        -your -linkerflags

6.6. Developer/advanced settings

  • PKG_DEVELOPER: Run some sanity checks that package developers want:

    • make sure patches apply with zero fuzz

    • run check-shlibs to see that all binaries will find their shared libs.

  • CHECK_FILES_STRICT: Also check VARBASE and PKG_SYSCONFDIR values in PLIST entries.

  • PKG_DEBUG_LEVEL: The level of debugging output which is displayed whilst making and installing the package. The default value for this is 0, which will not display the commands as they are executed (normal, default, quiet operation); the value 1 will display all shell commands before their invocation, and the value 2 will display both the shell commands before their invocation, as well as their actual execution progress with set -x.

6.7. Selecting Build Options

Some packages have build time options, usually to select between different dependencies, enable optional support for big dependencies or enable experimental features.

To see which options, if any, a package supports, and which options are mutually exclusive, run make show-options, for example:

    The following options are supported by this package:
        ssl      Enable SSL support.
    Exactly one of the following gecko options is required:
        firefox  Use firefox as gecko rendering engine.
        mozilla  Use mozilla as gecko rendering engine.
    At most one of the following database options may be selected:
        mysql    Enable support for MySQL database.
        pgsql    Enable support for PostgreSQL database.

    These options are enabled by default: firefox
    These options are currently enabled: mozilla ssl

The following variables can be defined in mk.conf to select which options to enable for a package: PKG_DEFAULT_OPTIONS, which can be used to select or disable options for all packages that support them, and PKG_OPTIONS.pkgbase, which can be used to select or disable options specifically for package pkgbase. Options listed in these variables are selected, options preceded by - are disabled. A few examples:

$ grep "PKG.*OPTION" mk.conf
PKG_DEFAULT_OPTIONS=    -arts -dvdread -esound
PKG_OPTIONS.kdebase=    debug -sasl
PKG_OPTIONS.apache=     suexec 

It is important to note that options that were specifically suggested by the package maintainer must be explicitly removed if you do not wish to include the option. If you are unsure you can view the current state with make show-options.

The following settings are consulted in the order given, and the last setting that selects or disables an option is used:

  1. the default options as suggested by the package maintainer

  2. the options implied by the settings of legacy variables (see below)

  3. PKG_DEFAULT_OPTIONS

  4. PKG_OPTIONS.pkgbase

For groups of mutually exclusive options, the last option selected is used, all others are automatically disabled. If an option of the group is explicitly disabled, the previously selected option, if any, is used. It is an error if no option from a required group of options is selected, and building the package will fail.

Before the options framework was introduced, build options were selected by setting a variable (often named USE_FOO) in mk.conf for each option. To ease transition to the options framework for the user, these legacy variables are converted to the appropriate options setting (PKG_OPTIONS.pkgbase) automatically. A warning is issued to prompt the user to update mk.conf to use the options framework directly. Support for the legacy variables will be removed eventually.

Chapter 7. Creating binary packages

7.1. Building a single binary package

Once you have built and installed a package, you can create a binary package which can be installed on another system with pkg_add(1). This saves having to build the same package on a group of hosts and wasting CPU time. It also provides a simple means for others to install your package, should you distribute it.

To create a binary package, change into the appropriate directory in pkgsrc, and run make package:

$ cd misc/figlet
$ make package

This will build your package (if not already done) and package it into a binary package. You can then use the pkg_* tools to manipulate it. Binary packages are created in PACKAGES, which defaults to /usr/pkgsrc/packages, in the form of a compressed tar file. See Section C.2, “Packaging figlet” for a continuation of the above misc/figlet example.

See Chapter 23, Submitting and Committing for information on how to submit such a binary package.

7.2. Settings for creation of binary packages

See Section 13.17, “Other helpful targets”.

Chapter 8. Creating binary packages for everything in pkgsrc (bulk builds)

For a number of reasons, you may want to build binary packages for a large selected set of packages in pkgsrc, or even for all pkgsrc packages. For instance, when you have multiple machines that should run the same software, it is wasted time if they all build their packages themselves from source. Or you may want to build a list of packages you want and check them before deploying onto production systems. There is a way of getting a set of binary packages: the bulk build system, or pbulk ("p" stands for "parallel"). This chapter describes how to set it up.

8.1. Preparations

First of all, you have to decide whether you build all packages or a limited set of them. Full bulk builds usually consume a lot more resources, both space and time, than builds for some practical sets of packages. A number of particularly heavy packages exist that are not actually interesting to a wide audience. (The approximate resource consumption for a full bulk build is given in section Section 8.3, “Requirements of a full bulk build”.) For limited bulk builds you need to make a list of packages you want to build. Note that all their dependencies will be built, so you don't need to track them manually.

During bulk builds various packages are installed and deinstalled in /usr/pkg (or whatever LOCALBASE is), so make sure that you don't need any package during the builds. Essentially, you should provide a fresh system, either a chroot environment or something even more restrictive, depending on what the operating system provides, or dedicate the whole physical machine. As a useful side effect this makes sure that bulk builds cannot break anything in your system. There have been numerous cases where certain packages tried to install files outside the LOCALBASE or wanted to edit some files in /etc.

8.2. Running a bulk build

Running a bulk build works roughly as follows:

  • First, build the pbulk infrastructure in a fresh pkgsrc location.

  • Then, build each of the packages from a clean installation directory using the infrastructure.

8.2.1. Configuration

To simplify configuration, we provide the helper script mk/pbulk/pbulk.sh.

In order to use it, prepare a clear system (real one, chroot environment, jail, zone, virtual machine). Configure network access to fetch distribution files. Create a user with name "pbulk".

Fetch and extract pkgsrc. Use a command like one of these:

# (cd /usr && ftp -o - https://cdn.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-)
# (cd /usr && fetch -o - https://cdn.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-)
# (cd /usr && cvs -Q -z3 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot get -P pkgsrc)

Or any other way that fits (e.g., curl, wget).

Deploy and configure pbulk tools, e.g.:

# sh pbulk.sh -n # use native make, no bootstrap kit needed (for use on NetBSD)
# sh pbulk.sh -n -c mk.conf.frag # native, apply settings from given mk.conf fragment
# sh pbulk.sh -nlc mk.conf.frag # native, apply settings, configure for limited build

Note

mk.conf.frag is a fragment of mk.conf that contains settings you want to apply to packages you build. For instance,

PKG_DEVELOPER=          yes     # perform more checks
X11_TYPE=               modular # use pkgsrc X11
SKIP_LICENSE_CHECK=     yes     # accept all licences (useful
                                # when building all packages)

If configured for limited list, replace the list in /usr/pbulk/etc/pbulk.list with your list of packages, one per line without empty lines or comments. E.g.:

www/firefox
mail/thunderbird
misc/libreoffice4

At this point you can also review configuration in /usr/pbulk/etc and make final amendments, if wanted.

Start it:

# /usr/pbulk/bin/bulkbuild

After it finishes, you'll have /mnt filled with distribution files, binary packages, and reports, plain text summary in /mnt/bulklog/meta/report.txt

Note

The pbulk.sh script does not cover all possible use cases. While being ready to run, it serves as a good starting point to understand and build more complex setups. The script is kept small enough for better understanding.

Note

The pbulk.sh script supports running unprivileged bulk build and helps configuring distributed bulk builds. Distributed bulk builds support either building in worker chroots (each node is a path to a different chroot) that replicate the target system, including the pbulk prefix, or remote machines (each node is an IP address that must be accessible over SSH without a password).

8.3. Requirements of a full bulk build

A complete bulk build requires lots of disk space. Some of the disk space can be read-only, some other must be writable. Some can be on remote filesystems (such as NFS) and some should be local. Some can be temporary filesystems, others must survive a sudden reboot.

  • 70 GB for the distfiles (read-write, remote, temporary)

  • 60 GB for the binary packages (read-write, remote, permanent)

  • 1 GB for the pkgsrc tree (read-only, remote, permanent)

  • 5 GB for LOCALBASE (read-write, local, temporary)

  • 10 GB for the log files (read-write, remote, permanent)

  • 5 GB for temporary files (read-write, local, temporary)

8.4. Bulk build variants

To ensure that pkgsrc packages work in different configurations, it makes sense to run non-default bulk builds from time to time. This section lists some ideas for bulk builds that intentionally let packages fail if they don't follow the pkgsrc style.

8.4.1. Detect unknown configure options

Add the following line to mk.conf.

GNU_CONFIGURE_STRICT=   yes

When a package fails this additional check, the most common cause is that the configure option was valid for an older version of the package but does not apply anymore. In that case, just remove it.

8.4.2. Detect classes of bugs by forcing compiler warnings

The job of a compiler is not restricted to producing executable code, most compilers also detect typical programming mistakes. The pkgsrc compiler wrappers make it easy to force compiler options when the package is built. This can be used to find typical bugs across all packages that are in pkgsrc. By reporting these bugs upstream, the packages will be more reliable with the next updates.

Add some of the following lines to mk.conf:

CFLAGS+=        -Werror=char-subscripts
CFLAGS+=        -Werror=implicit-function-declaration

When a package fails to build using these stricter compiler options, document the circumstances in which the compiler produced the error message. This includes:

  • The platform (MACHINE_PLATFORM)

  • The source file

  • An excerpt of the code. GCC and Clang already do this as part of the diagnostic.

  • The exact error message from the compiler.

If a package produces these error messages, but the package is fine, record this in your local mk.conf, like this, to skip this check in the next builds:

.if ${PKGPATH} == category/package
# Version ${VERSION} failed on ${MACHINE_PLATFORM}:
# error message
# code
# Reason why the code does not need to be fixed.
BUILDLINK_TRANSFORM+=   rm:-Werror=char-subscripts
.endif

If the error messages from the compiler are valid and the code needs to be fixed, prepare a local patch (see LOCALPATCHES) and report the bug to the upstream authors of the package, providing them with the information you collected above.

Patches that are not essential for the package to work should only be reported upstream but not committed to pkgsrc, to make future updates easier.

8.4.3. Force compiler options only in the build phase

When adding custom compiler flags via CFLAGS, these apply to all phases of the package build process. Especially in the configure phase, adding -Werror leads to wrong decisions. The GNU configure scripts feed many small test programs to the C compiler to see whether certain headers are available, functions are defined in a library and programs can be run. In many cases these programs would not survive a strict compiler run with -Wall -Wextra -Werror.

The pkgsrc infrastructure is flexible enough to support compiler options being added between the configure and build phases. It's a little more complicated than the other examples in this section but still easy enough.

The basic idea is to use the pkgsrc compiler wrapper to inject the desired compiler options. The compiler wrapper's original task is to hide unwanted directories of include files and to normalize compiler options. It does this by wrapping the compiler command and rewriting the command line. To see this in action, run bmake patch in a package directory and examine the work/.cwrappers/config directory. It contains individual configurations for the C compiler and the related tools. The plan is to find a hook between the configure and build phases, and to modify these configuration files at that point.

To find this hook, have a look at mk/build/build.mk, which contains among others the pre-build-checks-hook. The word checks doesn't quite fit, but the pre-build-hook sounds good enough.

The code to be included in mk.conf is:

# Just a few example options.
BUILD_ONLY_CFLAGS=      -Wall -Werror -O2 -DTEMPDIR='"/tmp"'

.if ${BUILD_ONLY_CFLAGS:U:M*}
pre-build-checks-hook: add-build-only-cflags

add-build-only-cflags: .PHONY
        ${RUN} cd ${CWRAPPERS_CONFIG_DIR};      \
        ${TEST} ! -f ${.TARGET} || exit 0;      \
        for flag in ${BUILD_ONLY_CFLAGS}; do    \
                ${ECHO} "append=$$flag" >> cc;  \
        done;                                   \
        > ${.TARGET}
.endif

(When editing the mk.conf, make sure that the commands of the add-build-only-cflags target are indented with a tab, not with spaces.)

The condition in the .if statement contains the :U modifier to prevent parse errors if the variable should be undefined, possibly because it is only defined for a subset of the packages. The :M* modifier ensures that there is at least one compiler option, to prevent a syntax error in the shell parser.

The code around the ${.TARGET} variable ensures that the additional compiler options are only appended once, even if bmake build is run multiple times. To do this, it creates a marker file.

To verify that this setup works, run bmake configure in a package directory. Up to now, everything works as usual. Examine the directory work/.cwrappers/config to see that the compiler options from BUILD_ONLY_CFLAGS are not yet added to the file cc. Examine the tail of the work/.work.log file to see that the normal compiler options are used.

Now run bmake build. This will append the options to the file cc and will create the marker file in the same directory. After that, the build starts as usual, but with the added compiler options. Examine the tail of the file work/.work.log to see that the lines starting with [*] don't contain the compiler options, but the corresponding lines starting with <.> do end with these options.

Building packages using this setup variant and fixing the resulting bugs is the same as in Section 8.4.2, “Detect classes of bugs by forcing compiler warnings”.

8.4.4. Use custom directories

Some directories like PREFIX, VARBASE, PKG_SYSCONFDIR, PKGMANDIR, PKG_INFODIR can be configured in pkgsrc. Set these to arbitrary paths during bootstrap or afterwards in mk.conf.

PREFIX=         /a-random-uuid
PKG_SYSCONFDIR= /a-random-uuid
VARBASE=        /a-random-uuid
PKGMANDIR=	a-random-uuid
PKG_INFODIR=	a-random-uuid

8.4.5. Turn warnings into errors

When building a package, warnings are typically ignored since they just flow by and do not cause the build to fail immediately. To find these warnings, redefine them to errors in mk.conf.

DELAYED_WARNING_MSG=    ${DELAYED_ERROR_MSG} "(was warning)"
WARNING_MSG=            ${FAIL_MSG} "(was warning)"

(There are many more classes of warnings in pkgsrc, and most of them can be redefined with a simple definition like above.

If a package suggests to add USE_TOOLS+=perl to the package Makefile, research whether the package actually needs Perl. If it does, add USE_TOOLS+=perl to the package Makefile, and if it doesn't, add TOOLS_BROKEN+=perl.

8.4.6. Reject packages for which pkglint reports errors

Using pkglint as part of the regular build process is mostly a waste of time. If you want to fix some of the warnings, just run pkglint recursively on the whole pkgsrc tree. This will take a few minutes (up to 10), which is much faster than a complete bulk build.

8.4.7. Reject packages that contain forbidden strings

To ensure that the binary packages don't contain references to the build directory, there is already CHECK_WRKREF. If that variable includes the item extra, it is possible to define additional patterns that must not appear in any installed file. This is specified in mk.conf.

CHECK_WRKREF=                   extra
CHECK_WRKREF_EXTRA_DIRS+=       /usr/local
CHECK_WRKREF_EXTRA_DIRS+=       /usr/pkg
CHECK_WRKREF_EXTRA_DIRS+=	@@[A-Z][A-Z]*@@

The above patterns will probably generate many false positives, therefore the results need to be taken with a grain of salt.

8.4.8. Reject packages whose self-test fails

To run the test suites that come with each package, add this line to mk.conf.

PKGSRC_RUN_TEST=        yes

Be prepared that even the most basic packages fail this test. When doing a bulk build with this, it will often abort in the early phase where the packages are scanned for their dependencies since there are cyclic dependencies. There is still a lot to do in this area.

8.4.9. Reject packages that use undefined shell variables

To catch typos in the shell snippets from the Makefile fragments, add the -u flag to most of the commands by adding this line to mk.conf.

RUN=    @@set -eu;

After that, ensure that none of the bulk build log files (even those for successfully built packages) contains the string parameter not set or whatever error message the command sh -ceu '$undefined' outputs.

See mk/misc/common.mk for the existing definition.

8.4.10. Turn off verbose logging

The build logs of a package are often quite long. This allows error messages or other interesting details to hide between the noise. To make the actual error message stand out more, add these lines to mk.conf.

GNU_CONFIGURE_QUIET=    yes
MAKE_FLAGS+=            -s

The -s option works for both GNU Make and BSD Make. On exotic platforms with their own make, it may be a little different.

8.5. Creating a multiple CD-ROM packages collection

After your pkgsrc bulk-build has completed, you may wish to create a CD-ROM set of the resulting binary packages to assist in installing packages on other machines. The pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for a given package on the same CD as that package.

8.5.1. Example of cdpack

Complete documentation for cdpack is found in the cdpack(1) man page. The following short example assumes that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

# mkdir /u2/images
# pkg_add /usr/pkgsrc/packages/All/cdpack
# cdpack /usr/pkgsrc/packages/All /u2/images
      

If you wish to include a common set of files (COPYRIGHT, README, etc.) on each CD in the collection, then you need to create a directory which contains these files, e.g.:

# mkdir /tmp/common
# echo "This is a README" > /tmp/common/README
# echo "Another file" > /tmp/common/COPYING
# mkdir /tmp/common/bin
# echo "#!/bin/sh" > /tmp/common/bin/myscript
# echo "echo Hello world" >> /tmp/common/bin/myscript
# chmod 755 /tmp/common/bin/myscript
      

Now create the images:

# cdpack -x /tmp/common /usr/pkgsrc/packages/All /u2/images

Each image will contain README, COPYING, and bin/myscript in their root directories.

Chapter 9. Directory layout of the installed files

The files that are installed by pkgsrc are organized in a way that is similar to what you find in the /usr directory of the base system. But some details are different. This is because pkgsrc initially came from FreeBSD and had adopted its file system hierarchy. Later it was largely influenced by NetBSD. But no matter which operating system you are using pkgsrc with, you can expect the same layout for pkgsrc.

There are mainly four root directories for pkgsrc, which are all configurable in the bootstrap/bootstrap script. When pkgsrc has been installed as root, the default locations are:

LOCALBASE=              /usr/pkg
PKG_SYSCONFBASE=        /usr/pkg/etc
VARBASE=                /var
PKG_DBDIR=              /usr/pkg/pkgdb

In unprivileged mode (when pkgsrc has been installed as any other user), the default locations are:

LOCALBASE=              ${HOME}/pkg
PKG_SYSCONFBASE=        ${HOME}/pkg/etc
VARBASE=                ${HOME}/pkg/var
PKG_DBDIR=              ${HOME}/pkg/pkgdb

What these four directories are for, and what they look like is explained below.

  • LOCALBASE corresponds to the /usr directory in the base system. It is the main directory where the files are installed and contains the well-known subdirectories like bin, include, lib, share and sbin.

  • VARBASE corresponds to /var in the base system. Some programs (especially games, network daemons) need write access to it during normal operation.

  • PKG_SYSCONFDIR corresponds to /etc in the base system. It contains configuration files of the packages, as well as pkgsrc's mk.conf itself.

9.1. File system layout in ${LOCALBASE}

The following directories exist in a typical pkgsrc installation in ${LOCALBASE}.

bin

Contains executable programs that are intended to be directly used by the end user.

emul

Contains files for the emulation layers of various other operating systems, especially for NetBSD.

etc (the usual location of ${PKG_SYSCONFDIR})

Contains the configuration files.

include

Contains headers for the C and C++ programming languages.

info

Contains GNU info files of various packages.

lib

Contains shared and static libraries.

libdata

Contains data files that don't change after installation. Other data files belong into ${VARBASE}.

libexec

Contains programs that are not intended to be used by end users, such as helper programs or network daemons.

libexec/cgi-bin

Contains programs that are intended to be executed as CGI scripts by a web server.

man (the usual value of ${PKGMANDIR})

Contains brief documentation in form of manual pages.

sbin

Contains programs that are intended to be used only by the super-user.

share

Contains platform-independent data files that don't change after installation.

share/doc

Contains documentation files provided by the packages.

share/examples

Contains example files provided by the packages. Among others, the original configuration files are saved here and copied to ${PKG_SYSCONFDIR} during installation.

share/examples/rc.d

Contains the original files for rc.d scripts.

var (the usual location of ${VARBASE})

Contains files that may be modified after installation.

9.2. File system layout in ${VARBASE}

db/pkg (the usual location of ${PKG_DBDIR})

Contains information about the currently installed packages.

games

Contains highscore files.

log

Contains log files.

run

Contains informational files about daemons that are currently running.

Chapter 10. Frequently Asked Questions

This section contains hints, tips & tricks on special things in pkgsrc that we didn't find a better place for in the previous chapters, and it contains items for both pkgsrc users and developers.

10.1. Are there any mailing lists for pkg-related discussion?

The following mailing lists may be of interest to pkgsrc users:

  • pkgsrc-users: This is a general purpose list for most issues regarding pkgsrc, regardless of platform, e.g. soliciting user help for pkgsrc configuration, unexpected build failures, using particular packages, upgrading pkgsrc installations, questions regarding the pkgsrc release branches, etc. General announcements or proposals for changes that impact the pkgsrc user community, e.g. major infrastructure changes, new features, package removals, etc., may also be posted.

  • pkgsrc-bulk: A list where the results of pkgsrc bulk builds are sent and discussed.

  • pkgsrc-changes: This list is for those who are interested in getting a commit message for every change committed to pkgsrc. It is also available in digest form, meaning one daily message containing all commit messages for changes to the package source tree in that 24 hour period.

To subscribe, do:

% echo subscribe listname | mail majordomo@@NetBSD.org

Archives for all these mailing lists are available from https://mail-index.NetBSD.org/.

10.2. Utilities for package management (pkgtools)

The directory pkgsrc/pkgtools contains a number of useful utilities for both users and developers of pkgsrc. This section attempts only to make the reader aware of some of the utilities and when they might be useful, and not to duplicate the documentation that comes with each package.

Utilities used by pkgsrc (automatically installed when needed):

OS tool augmentation (automatically installed when needed):

  • pkgtools/digest: Calculates various kinds of checksums (including SHA3).

  • pkgtools/libnbcompat: Compatibility library for pkgsrc tools.

  • pkgtools/mtree: Installed on non-BSD systems due to lack of native mtree.

  • pkgtools/pkg_install: Up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present.

Utilities used by pkgsrc (not automatically installed):

  • pkgtools/pkg_tarup: Create a binary package from an already-installed package. Used by make replace to save the old package.

  • pkgtools/dfdisk: Adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

  • devel/cpuflags: Determine the best compiler flags to optimise code for your current CPU and compiler.

Utilities for keeping track of installed packages, being up to date, etc:

Utilities for people maintaining or creating individual packages:

  • pkgtools/pkgdiff: Automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, etc.).

  • pkgtools/url2pkg: Aids in converting to pkgsrc.

Utilities for people maintaining pkgsrc (or: more obscure pkg utilities)

10.3. How to use pkgsrc as non-root

To install packages from source as a non-root user, download pkgsrc as described in Chapter 3, Where to get pkgsrc and how to keep it up-to-date, cd into that directory and run the command ./bootstrap/bootstrap --unprivileged.

This will install the binary part of pkgsrc to ~/pkg and put the pkgsrc configuration mk.conf into ~/pkg/etc.

For more details, see mk/unprivileged.mk.

10.4. How to resume transfers when fetching distfiles?

By default, resuming transfers in pkgsrc is disabled, but you can enable this feature by adding the option PKG_RESUME_TRANSFERS=YES into mk.conf. If, during a fetch step, an incomplete distfile is found, pkgsrc will try to resume it.

You can also use a different program than the platform default program by changing the FETCH_USING variable. You can specify the program by using of ftp, fetch, wget or curl. Alternatively, fetching can be disabled by using the value manual. A value of custom disables the system defaults and dependency tracking for the fetch program. In that case you have to provide FETCH_CMD, FETCH_BEFORE_ARGS, FETCH_RESUME_ARGS, FETCH_OUTPUT_ARGS, FETCH_AFTER_ARGS.

For example, if you want to use wget to download, you'll have to use something like:

FETCH_USING=    wget

10.5. How can I install/use modular X.org from pkgsrc?

If you want to use modular X.org from pkgsrc instead of your system's own X11 (/usr/X11R6, /usr/openwin, ...) you will have to add the following line into mk.conf:

X11_TYPE=modular

10.6. How to fetch files from behind a firewall

If you are sitting behind a firewall which does not allow direct connections to Internet hosts (i.e. non-NAT), you may specify the relevant proxy hosts. This is done using an environment variable in the form of a URL, e.g. in Amdahl, the machine orpheus.amdahl.com is one of the firewalls, and it uses port 80 as the proxy port number. So the proxy environment variables are:

ftp_proxy=ftp://orpheus.amdahl.com:80/
http_proxy=http://orpheus.amdahl.com:80/

10.7. How to fetch files from HTTPS sites

Some fetch tools are not prepared to support HTTPS by default (for example, the one in NetBSD 6.0), or the one installed by the pkgsrc bootstrap (to avoid an openssl dependency that low in the dependency graph).

Usually you won't notice, because distribution files are mirrored weekly to ftp.NetBSD.org, but that might not be often enough if you are following pkgsrc-current. In that case, set FETCH_USING in your mk.conf file to curl or wget, which are both compiled with HTTPS support by default. Of course, these tools need to be installed before you can use them this way.

10.8. How do I tell make fetch to do passive FTP?

This depends on which utility is used to retrieve distfiles. From bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

  • ${LOCALBASE}/bin/ftp

  • /usr/bin/ftp

On a default NetBSD installation, this will be /usr/bin/ftp, which automatically tries passive connections first, and falls back to active connections if the server refuses to do passive. For the other tools, add the following to your mk.conf file: PASSIVE_FETCH=1.

Having that option present will prevent /usr/bin/ftp from falling back to active transfers.

10.9. How to fetch all distfiles at once

You would like to download all the distfiles in a single batch from work or university, where you can't run a make fetch. There is an archive of distfiles on ftp.NetBSD.org, but downloading the entire directory may not be appropriate.

The answer here is to do a make fetch-list in /usr/pkgsrc or one of its subdirectories, carry the resulting list to your machine at work/school and use it there. If you don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't forget to set FETCH_CMD to something that fetches a URL:

At home:

% cd /usr/pkgsrc
% make fetch-list FETCH_CMD=wget DISTDIR=/tmp/distfiles >/tmp/fetch.sh
% scp /tmp/fetch.sh work:/tmp

At work:

% sh /tmp/fetch.sh

then tar up /tmp/distfiles and take it home.

If you have a machine running NetBSD, and you want to get all distfiles (even ones that aren't for your machine architecture), you can do so by using the above-mentioned make fetch-list approach, or fetch the distfiles directly by running:

% make mirror-distfiles

If you even decide to ignore NO_{SRC,BIN}_ON_{FTP,CDROM}, then you can get everything by running:

% make fetch NO_SKIP=yes

10.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?

When compiling the pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the text set (nroff, ...) from the NetBSD base distribution on your machine. It is recommended to do that to format man pages.

In the case of the pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in mk.conf.

10.11. What does Could not find bsd.own.mk mean?

You didn't install the compiler set, comp.tgz, when you installed your NetBSD machine. Please get and install it, by extracting it in /:

# cd /
# tar --unlink -zxvpf .../comp.tgz

comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

10.12. Using 'sudo' or `priv` with pkgsrc

When installing packages as non-root user and using the just-in-time su(1) feature of pkgsrc, it can become annoying to type in the root password for each required package installed. To avoid this, the sudo package can be used, which does password caching over a limited time. To use it, install sudo or priv (either as binary package, from security/priv, or security/sudo) and then put the following into your mk.conf, somewhere after the definition of the LOCALBASE variable:

.if exists(${LOCALBASE}/bin/sudo)
SU_CMD=        ${LOCALBASE}/bin/sudo /bin/sh -c
.endif

10.13. How do I change the location of configuration files?

As the system administrator, you can choose where configuration files are installed. The default settings make all these files go into ${PREFIX}/etc or some of its subdirectories; this may be suboptimal depending on your expectations (e.g., a read-only, NFS-exported PREFIX with a need of per-machine configuration of the provided packages).

In order to change the defaults, you can modify the PKG_SYSCONFBASE variable (in mk.conf) to point to your preferred configuration directory; some common examples include /etc or /etc/pkg.

Furthermore, you can change this value on a per-package basis by setting the PKG_SYSCONFDIR.${PKG_SYSCONFVAR} variable. PKG_SYSCONFVAR's value usually matches the name of the package you would like to modify, that is, the contents of PKGBASE.

Note that after changing these settings, you must rebuild and reinstall any affected packages.

10.14. Automated security checks

Please be aware that there can often be bugs in third-party software, and some of these bugs can leave a machine vulnerable to exploitation by attackers. In an effort to lessen the exposure, the NetBSD packages team maintains a database of known-exploits to packages which have at one time been included in pkgsrc. The database can be downloaded automatically, and a security audit of all packages installed on a system can take place. To do this, refer to the following two tools (installed as part of the pkgtools/pkg_install package):

  1. pkg_admin fetch-pkg-vulnerabilities, an easy way to download a list of the security vulnerabilities information. This list is kept up to date by the pkgsrc security team, and is distributed from the NetBSD ftp server:

    https://ftp.NetBSD.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities

  2. pkg_admin audit, an easy way to audit the current machine, checking each known vulnerability. If a vulnerable package is installed, it will be shown by output to stdout, including a description of the type of vulnerability, and a URL containing more information.

Use of these tools is strongly recommended! See Section 5.1.6, “Checking for security vulnerabilities in installed packages” for instructions on how to automate checking and reporting.

If this database is installed, pkgsrc builds will use it to perform a security check before building any package.

10.15. Why do some packages ignore my CFLAGS?

When you add your own preferences to the CFLAGS variable in your mk.conf, these flags are passed in environment variables to the ./configure scripts and to make(1). Some package authors ignore the CFLAGS from the environment variable by overriding them in the Makefiles of their package.

Currently there is no solution to this problem. If you really need the package to use your CFLAGS you should run make patch in the package directory and then inspect any Makefile and Makefile.in for whether they define CFLAGS explicitly. Usually you can remove these lines. But be aware that some smart programmers write so bad code that it only works for the specific combination of CFLAGS they have chosen.

To find out where the CFLAGS are ignored, add the following lines to mk.conf:

CPPFLAGS+=              -Dpkgsrc___CPPFLAGS
CFLAGS+=                -Dpkgsrc___CFLAGS
CXXFLAGS+=              -Dpkgsrc___CXXFLAGS

Then run bmake show-all-configure show-all-build to see whether the above flags are passed to the actual build commands in general.

To find out whether the flags are passed to individual compiler commands, have a look at the file work/.work.log. In most cases, the flags from the original command lines (the lines starting with [*]) are passed unmodified to the actual compiler (the lines starting with <.>). If the flag is missing from the actual compiler command, it must have been removed by the pkgsrc compiler wrappers.

10.16. A package does not build. What shall I do?

  1. Make sure that your copy of pkgsrc is consistent. A case that occurs often is that people only update pkgsrc in parts, because of performance reasons. Since pkgsrc is one large system, not a collection of many small systems, there are sometimes changes that only work when the whole pkgsrc tree is updated.

  2. Make sure that you don't have any CVS conflicts. Search for <<<<<< or >>>>>> in all your pkgsrc files.

  3. Make sure that you don't have old copies of the packages extracted. Run make clean clean-depends to verify this.

  4. If you are a package developer who wants to invest some work, have a look at Chapter 21, Making your package work.

  5. If the problem still exists, write a mail to the pkgsrc-users mailing list.

10.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?

You have modified a file from pkgsrc, and someone else has modified that same file afterwards in the CVS repository. Both changes are in the same region of the file, so when you updated pkgsrc, the cvs command marked the conflicting changes in the file. Because of these markers, the file is no longer a valid Makefile.

Have a look at that file, and if you don't need your local changes anymore, you can remove that file and run cvs -q update -dP in that directory to download the current version.

Part II. The pkgsrc developer's guide

This part of the book deals with creating and modifying packages. It starts with a HOWTO-like guide on creating a new package. The remaining chapters are more like a reference manual for pkgsrc.

Table of Contents

11. Getting help
12. Package components - files, directories and contents
12.1. Makefile
12.2. distinfo
12.3. patches/*
12.3.1. Structure of a single patch file
12.3.2. Creating patch files
12.3.3. Sources where the patch files come from
12.3.4. Patching guidelines
12.3.5. Feedback to the author
12.4. Other mandatory files
12.5. Optional files
12.5.1. Files affecting the binary package
12.5.2. Files affecting the build process
12.5.3. Files affecting nothing at all
12.6. work*
12.7. files/*
13. The build process
13.1. Introduction
13.2. Program location
13.3. Directories used during the build process
13.4. Running a phase
13.5. The fetch phase
13.5.1. What to fetch and where to get it from
13.5.2. How are the files fetched?
13.6. The checksum phase
13.7. The extract phase
13.8. The patch phase
13.9. The tools phase
13.10. The wrapper phase
13.11. The configure phase
13.12. The build phase
13.13. The test phase
13.14. The install phase
13.15. The package phase
13.16. Cleaning up
13.17. Other helpful targets
14. Creating a new pkgsrc package from scratch
14.1. Common types of packages
14.1.1. Python modules and programs
14.1.2. R packages
14.1.3. TeXlive packages
14.2. Examples
14.2.1. How the www/nvu package came into pkgsrc
15. Programming in Makefiles
15.1. Caveats
15.2. Makefile variables
15.2.1. Naming conventions
15.3. Code snippets
15.3.1. Adding things to a list
15.3.2. Echoing a string exactly as-is
15.3.3. Passing CFLAGS to GNU configure scripts
15.3.4. Handling possibly empty variables
15.3.5. Testing yes/no variables in conditions
16. Options handling
16.1. Global default options
16.2. Converting packages to use bsd.options.mk
16.3. Option Names
16.4. Determining the options of dependencies
17. Tools needed for building or running
17.1. Tools for pkgsrc builds
17.2. Tools needed by packages
17.3. Tools provided by platforms
18. Buildlink methodology
18.1. Converting packages to use buildlink3
18.2. Writing buildlink3.mk files
18.2.1. Anatomy of a buildlink3.mk file
18.2.2. Updating BUILDLINK_API_DEPENDS.pkg and BUILDLINK_ABI_DEPENDS.pkg in buildlink3.mk files
18.3. Writing builtin.mk files
18.3.1. Anatomy of a builtin.mk file
19. PLIST issues
19.1. RCS ID
19.2. Semi-automatic PLIST generation
19.3. Tweaking output of make print-PLIST
19.4. Variable substitution in PLIST
19.5. Man page compression
19.6. Changing PLIST source with PLIST_SRC
19.7. Platform-specific and differing PLISTs
19.8. Build-specific PLISTs
19.9. Sharing directories between packages
20. The pkginstall framework
20.1. Files and directories outside the installation prefix
20.1.1. Directory manipulation
20.1.2. File manipulation
20.2. Configuration files
20.2.1. How PKG_SYSCONFDIR is set
20.2.2. Telling the software where configuration files are
20.2.3. Patching installation
20.2.4. Declaring configuration files
20.2.5. Disabling handling of configuration files
20.3. System startup scripts
20.3.1. Disabling handling of system startup scripts
20.4. System users and groups
20.5. System shells
20.5.1. Disabling shell registration
20.6. Fonts
20.6.1. Disabling automatic update of the fonts databases
21. Making your package work
21.1. General operation
21.1.1. How to pull in user-settable variables from mk.conf
21.1.2. User interaction
21.1.3. Handling licenses
21.1.4. Restricted packages
21.1.5. Handling dependencies
21.1.6. Handling conflicts with other packages
21.1.7. Packages that cannot or should not be built
21.1.8. Packages which should not be deleted, once installed
21.1.9. Handling packages with security problems
21.1.10. How to handle incrementing versions when fixing an existing package
21.1.11. Substituting variable text in the package files (the SUBST framework)
21.2. The fetch phase
21.2.1. Packages whose distfiles aren't available for plain downloading
21.2.2. How to handle modified distfiles with the 'old' name
21.2.3. Packages hosted on github.com
21.3. The configure phase
21.3.1. Shared libraries - libtool
21.3.2. Using libtool on GNU packages that already support libtool
21.3.3. GNU Autoconf/Automake
21.3.4. Meson / ninja
21.4. Programming languages
21.4.1. C, C++, and Fortran
21.4.2. Java
21.4.3. Go
21.4.4. Rust
21.4.5. Packages containing Perl scripts
21.4.6. Packages containing shell scripts
21.4.7. Other programming languages
21.5. The build phase
21.5.1. Compiling C and C++ code conditionally
21.5.2. How to handle compiler bugs
21.5.3. No such file or directory
21.5.4. Undefined reference to ...
21.5.5. Running out of memory
21.6. The install phase
21.6.1. Creating needed directories
21.6.2. Where to install documentation
21.6.3. Installing highscore files
21.6.4. Adding DESTDIR support to packages
21.6.5. Packages with hardcoded paths to other interpreters
21.6.6. Packages installing Perl modules
21.6.7. Packages installing pkg-config files
21.6.8. Packages installing info files
21.6.9. Packages installing man pages
21.6.10. Packages installing X11 fonts
21.6.11. Packages installing SGML or XML data
21.6.12. Packages installing extensions to the MIME database
21.6.13. Packages using intltool
21.6.14. Packages installing startup scripts
21.6.15. Packages installing TeX modules
21.6.16. Packages supporting running binaries in emulation
21.6.17. Packages installing hicolor icons
21.6.18. Packages installing desktop files
21.7. Marking packages as having problems
22. GNOME packaging and porting
22.1. Meta packages
22.2. Packaging a GNOME application
22.3. Updating GNOME to a newer version
22.4. Patching guidelines
23. Submitting and Committing
23.1. Submitting binary packages
23.2. Submitting source packages (for non-NetBSD-developers)
23.3. General notes when adding, updating, or removing packages
23.4. Commit Messages
23.5. Committing: Adding a package to CVS
23.6. Updating a package to a newer version
23.7. Renaming a package in pkgsrc
23.8. Moving a package in pkgsrc
24. Frequently Asked Questions

Chapter 11. Getting help

To get help when developing pkgsrc, the definitive source is this document, the pkgsrc guide. If you don't find anything here, there are alternatives:

  • The built-in pkgsrc help, which is available after bootstrapping pkgsrc. Run bmake help topic=… to get help for any topic, such as a variable name like BUILD_DEFS, a make target like do-build, a missing C or C++ function like strcasecmp or any other topic.

    The available help topics are listed in Appendix E, Help topics.

  • To see the value of a single variable, run bmake show-var VARNAME=X.

  • To see the values of the most common variables, run bmake show-all. These variables are grouped by topic. To see the variables for a single topic, run bmake show-all-topic, for example bmake show-all-fetch.

  • The tech-pkg mailing list, to which you can subscribe and then ask your questions.

  • The #pkgsrc IRC channel, which is accessible via a web browser or by using a specialized chat program such as XChat. Pick any user name and join the channel #pkgsrc.

Chapter 12. Package components - files, directories and contents

Whenever you're preparing a package, there are a number of files involved which are described in the following sections.

12.1. Makefile

Building, installation and creation of a binary package are all controlled by the package's Makefile. The Makefile describes various things about a package, for example from where to get it, how to configure, build, and install it.

A package Makefile contains several sections that describe the package.

In the first section there are the following variables, which should appear exactly in the order given here. The order and grouping of the variables is mostly historical and has no further meaning.

  • DISTNAME is the basename of the distribution file to be downloaded from the package's website.

  • PKGNAME is the name of the package, as used by pkgsrc. You need to provide it if DISTNAME (which is the default) is not a good name for the package in pkgsrc or DISTNAME is not provided (no distribution file is required). Usually it is the pkgsrc directory name together with the version number. It must match the regular expression ^[A-Za-z0-9][A-Za-z0-9-_.+]*$, that is, it starts with a letter or digit, and contains only letters, digits, dashes, underscores, dots and plus signs. New packages should have entirely lower-case names, with the exception of some that must follow pre-existing conventions (e.g. R packages begin with R-). You can use the :tl variable modifier to lower-case the package name.

  • CATEGORIES is a list of categories which the package fits in. You can choose any of the top-level directories of pkgsrc for it.

    Currently the following values are available for CATEGORIES. If more than one is used, they need to be separated by spaces:

    archivers     cross         geography     meta-pkgs     security
    audio         databases     graphics      misc          shells
    benchmarks    devel         ham           multimedia    sysutils
    biology       editors       inputmethod   net           textproc
    cad           emulators     lang          news          time
    chat          finance       mail          parallel      wm
    comms         fonts         math          pkgtools      www
    converters    games         mbone         print         x11
    
  • MASTER_SITES, DYNAMIC_MASTER_SITES, DIST_SUBDIR, EXTRACT_SUFX and DISTFILES are discussed in detail in Section 13.5, “The fetch phase”.

The second section contains information about separately downloaded patches, if any.

  • PATCHFILES: Name(s) of additional files that contain distribution patches. There is no default. pkgsrc will look for them at PATCH_SITES. They will automatically be uncompressed before patching if the names end with .gz or .Z.

  • PATCH_SITES: Primary location(s) for distribution patch files (see PATCHFILES above) if not found locally.

  • PATCH_DIST_STRIP: an argument to patch(1) that sets the pathname strip count to help find the correct files to patch. It defaults to -p0.

The third section contains the following variables.

  • MAINTAINER is the email address of the person who is currently responsible for this package. In theory, the maintainer will be aware of upstream release, keep it updated, and generally resolve problems. Others contemplating significant changes should ask the maintainer for advice or review of a proposed change. This is not necessary for micro updates, bug fixes, pkgsrc-wide changes affecting many packages, and other things expected to be uncontroversial. It goes with this "should ask" that the maintainer should respond to inquiries reasonably promptly (most of the time), and either approve changes or provide reasons why not. Typically, when packaging a new program, set MAINTAINER to yourself. If you don't intend to maintain the package (especially if you feel you have no special insight), set it to . This special value is a code point indicating that there is no maintainer, but the variable is mandatory, absent OWNER.

  • OWNER can be used instead of MAINTAINER in relatively rare circumstances when the package is such that modifying it is riskier than normal. This is a stronger form of being the maintainer, with an expectation that others will ask for almost all changes, except revbumps and accommodating structural changes. Someone who becomes OWNER has a strong obligation to keep the package very well maintained, to answer queries promptly and to be a steward of the package on behalf of users. In this case, MAINTAINER should be omitted.

    Because of the friction that OWNER adds, PMC may downgrade it to MAINTAINER at any time.

  • HOMEPAGE is a URL where users can find more information about the package.

  • COMMENT is a one-line description of the package (should not include the package name).

  • LICENSE indicates the license(s) applicable for the package. See Section 21.1.3, “Handling licenses” for further details.

Other variables that affect the build:

  • WRKSRC: The directory where the interesting distribution files of the package are found. The default is ${WRKDIR}/${DISTNAME}, which works for most packages.

    If a package doesn't create a subdirectory for itself (most GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC=${WRKDIR}.

    If a package doesn't create a subdirectory with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}, for example WRKSRC=${WRKDIR}/${DISTNAME}/unix. See lang/tcl and x11/tk for other examples.

    The name of the working directory created by pkgsrc is taken from the WRKDIR_BASENAME variable. By default, its value is work. If you want to use the same pkgsrc tree for building different kinds of binary packages, you can change the variable according to your needs. Two other variables handle common cases of setting WRKDIR_BASENAME individually. If OBJHOSTNAME is defined in mk.conf, the first component of the host's name is attached to the directory name. If OBJMACHINE is defined, the platform name is attached, which might look like work.i386 or work.sparc.

Please pay attention to the following gotchas:

  • Add MANCOMPRESSED if man pages are installed in compressed form by the package. For packages using BSD-style makefiles which honor MANZ, there is MANCOMPRESSED_IF_MANZ.

  • Replace /usr/local with ${PREFIX} in all files (see patches, below).

  • If the package installs any info files, see Section 21.6.8, “Packages installing info files”.

12.2. distinfo

The distinfo file contains the message digest, or checksum, of each distfile needed for the package. This ensures that the distfiles retrieved from the Internet have not been corrupted during transfer or altered by a malign force to introduce a security hole. To provide maximum security, all distfiles are protected using two different message digest algorithms (BLAKE2s and SHA512), as well as the file size.

The distinfo file also contains the checksums for all the patches found in the patches directory (see Section 12.3, “patches/*). These checksums ensure that patches are only applied intentionally and that they don't accidentally change, e.g. when merging different changes together. They also make sure that new patches are actually added to CVS and old ones are removed. Too see whether the patches and the distinfo file match, run pkglint after changing the patches.

To regenerate the distinfo file, use the make distinfo command.

Some packages have different sets of distfiles depending on the platform, for example lang/openjdk8. These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

12.3. patches/*

Some packages don't work out-of-the box on the various platforms that are supported by pkgsrc. These packages need to be patched to make them work. The patch files can be found in the patches/ directory.

In the patch phase, these patches are applied to the files in WRKSRC directory after extracting them, in alphabetic order.

12.3.1. Structure of a single patch file

The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, each patch should contain only changes for a single file, and no file should be patched by more than one patch file. This helps to keep future modifications simple.

Each patch file is structured as follows: In the first line, there is the RCS Id of the patch itself. The second line should be empty for aesthetic reasons. After that, there should be a comment for each change that the patch does. There are a number of standard cases:

  • Patches for commonly known vulnerabilities should mention the vulnerability ID (CAN, CVE).

  • Patches that change source code should mention the platform and other environment (for example, the compiler) that the patch is needed for.

The patch should be commented so that any developer who knows the code of the application can make some use of the patch. Special care should be taken for the upstream developers, since we generally want that they accept our patches, so we have less work in the future.

12.3.2. Creating patch files

One important thing to mention is to pay attention that no RCS IDs get stored in the patch files, as these will cause problems when later checked into the NetBSD CVS tree. Use the pkgdiff command from the pkgtools/pkgdiff package to avoid these problems.

For even more automation, we recommend using mkpatches from the same package to make a whole set of patches. You just have to back up files before you edit them to filename.orig, e.g., with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff. The files in patches are replaced by new files, so carefully check if you want to take all the changes.

When you have finished a package, remember to generate the checksums for the patch files by using the make makepatchsum command, see Section 12.2, “distinfo.

When adding a patch that corrects a problem in the distfile (rather than e.g. enforcing pkgsrc's view of where man pages should go), send the patch as a bug report to the maintainer. This benefits non-pkgsrc users of the package, and usually makes it possible to remove the patch in future version.

The file names of the patch files are usually of the form patch-path_to_file__with__underscores.c. Many packages still use the previous convention patch-[a-z][a-z], but new patches should be of the form containing the filename. mkpatches included in pkgtools/pkgdiff takes care of the name automatically.

When updating pre-existing patch files, if a file uses the old patch-[a-z][a-z] convention, it's best not to change it to the new form, as that will just cause churn that makes it harder to track changes to patching over time. Similarly, if a patch now applies at different line offsets, but still applies cleanly as-is, there's no need to update it, as that also unnecessarily complicates the patch history.

12.3.3. Sources where the patch files come from

If you want to share patches between multiple packages in pkgsrc, e.g. because they use the same distfiles, set PATCHDIR to the path where the patch files can be found, e.g.:

PATCHDIR=       ../../editors/xemacs/patches

Patch files that are distributed by the author or other maintainers can be listed in PATCHFILES.

If it is desired to store any patches that should not be committed into pkgsrc, they can be kept outside the pkgsrc tree in the $LOCALPATCHES directory. The directory tree there is expected to have the same category/package structure as pkgsrc, and patches are expected to be stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example, if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch files, and they are applied after pkgsrc patches are applied.

12.3.4. Patching guidelines

When fixing a portability issue in the code do not use preprocessor magic to check for the current operating system nor platform. Doing so hurts portability to other platforms because the OS-specific details are not abstracted appropriately.

The general rule to follow is: instead of checking for the operating system the application is being built on, check for the specific features you need. For example, instead of assuming that kqueue is available under NetBSD and using the __NetBSD__ macro to conditionalize kqueue support, add a check that detects kqueue itself — yes, this generally involves patching the configure script. There is absolutely nothing that prevents some OSes from adopting interfaces from other OSes (e.g. Linux implementing kqueue), something that the above checks cannot take into account.

Of course, checking for features generally involves more work on the developer's side, but the resulting changes are cleaner and there are chances they will work on many other platforms. Not to mention that there are higher chances of being later integrated into the mainstream sources. Remember: It doesn't work unless it is right!

Some typical examples:

Table 12.1. Patching examples

Where Incorrect Correct
configure script
case ${target_os} in
netbsd*) have_kvm=yes ;;
*)       have_kvm=no  ;;
esac
AC_CHECK_LIB(kvm, kvm_open, have_kvm=yes, have_kvm=no)
C source file
#if defined(__NetBSD__)
#  include <sys/event.h>
#endif
#if defined(HAVE_SYS_EVENT_H)
#  include <sys/event.h>
#endif
C source file
int
monitor_file(...)
{
#if defined(__NetBSD__)
        int fd = kqueue();
        ...
#else
        ...
#endif
}
int
monitor_file(...)
{
#if defined(HAVE_KQUEUE)
        int fd = kqueue();
        ...
#else
        ...
#endif
}

12.3.5. Feedback to the author

Always, always, always feed back any portability fixes or improvements you do to a package to the mainstream developers. This is the only way to get their attention on portability issues and to ensure that future versions can be built out-of-the box on NetBSD. Furthermore, any user that gets newer distfiles will get the fixes straight from the packaged code.

This generally involves cleaning up the patches (because sometimes the patches that are added to pkgsrc are quick hacks), filing bug reports in the appropriate trackers for the projects and working with the mainstream authors to accept your changes. It is extremely important that you do it so that the packages in pkgsrc are kept simple and thus further changes can be done without much hassle.

When you have done this, please add a URL to the upstream bug report to the patch comment.

Support the idea of free software!

12.4. Other mandatory files

DESCR

A multi-line description of the piece of software. This should include any credits where they are due. Please bear in mind that others do not share your sense of humour (or spelling idiosyncrasies), and that others will read everything that you write here.

PLIST

This file governs the files that are installed on your system: all the binaries, manual pages, etc. There are other directives which may be entered in this file, to control the creation and deletion of directories, and the location of inserted files. See Chapter 19, PLIST issues for more information.

12.5. Optional files

12.5.1. Files affecting the binary package

INSTALL

This shell script is invoked twice by pkg_add(1). First time after package extraction and before files are moved in place, the second time after the files to install are moved in place. This can be used to do any custom procedures not possible with @@exec commands in PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 20.1, “Files and directories outside the installation prefix”. Please note that you can modify variables in it easily by using FILES_SUBST in the package's Makefile:

FILES_SUBST+=  SOMEVAR="somevalue"

replaces "@@SOMEVAR@@" with somevalue in the INSTALL. By default, substitution is performed for PREFIX, LOCALBASE, X11BASE, VARBASE, and a few others, type make help topic=FILES_SUBST for a complete list.

DEINSTALL

This script is executed before and after any files are removed. It is this script's responsibility to clean up any additional messy details around the package's installation, since all pkg_delete knows is how to delete the files created in the original distribution. See pkg_delete(1) and pkg_create(1) for more information. The same methods to replace variables can be used as for the INSTALL file.

MESSAGE

This file is displayed after installation of the package. While this was used often in the past, it has two problems: the display will be missed if many packages are intalled at once, and the person installing the package and the one using or configuring it may be different. It should therefore be used only in exceptional circumstances where lasting negative consequences would result from someone not reading it.

MESSAGE should not be used for:

  • exhortations to read the documentation

  • reminders to install rc.d files and set variables

  • anything that should be explained in the installation/configuration documentation that should come with the package

If the documentation provided by upstream needs enhancing, create e.g. files/README.pkgsrc and install it in the package's documentation directory.

Note that MESSAGE is shown for all operating systems and all init systems. If a MESSAGE is necessary, it should be narrowed to only those operating systems and init systems to which it applies.

Note that you can modify variables in it easily by using MESSAGE_SUBST in the package's Makefile:

MESSAGE_SUBST+=  SOMEVAR="somevalue"

replaces "${SOMEVAR}" with somevalue in MESSAGE. By default, substitution is performed for PKGNAME, PKGBASE, PREFIX, LOCALBASE, X11BASE, PKG_SYSCONFDIR, ROOT_GROUP, and ROOT_USER.

You can display a different or additional files by setting the MESSAGE_SRC variable. Its default is MESSAGE, if the file exists.

ALTERNATIVES

This file is used by the alternatives framework. It creates, configures, and destroys generic wrappers used to run programs with similar interfaces. See pkg_alternatives(8) from pkgtools/pkg_alternatives for more information.

Each line of the file contains two filenames, first the wrapper and then the alternative provided by the package. Both paths are relative to PREFIX.

12.5.2. Files affecting the build process

Makefile.common

This file contains arbitrary things that could also go into a Makefile, but its purpose is to be used by more than one package. This file should only be used when the packages that will use the file are known in advance. For other purposes it is often better to write a *.mk file and give it a good name that describes what it does.

buildlink3.mk

This file contains the dependency information for the buildlink3 framework (see Chapter 18, Buildlink methodology).

hacks.mk

This file contains workarounds for compiler bugs and similar things. It is included automatically by the pkgsrc infrastructure, so you don't need an extra .include line for it.

options.mk

This file contains the code for the package-specific options (see Chapter 16, Options handling) that can be selected by the user. If a package has only one or two options, it is equally acceptable to put the code directly into the Makefile.

12.5.3. Files affecting nothing at all

README*

These files do not take place in the creation of a package and thus are purely informative to the package developer.

TODO

This file contains things that need to be done to make the package even better.

12.6. work*

When you type make, the distribution files are unpacked into the directory denoted by WRKDIR. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp files. The directory gets removed completely on clean. The default is ${.CURDIR}/work or ${.CURDIR}/work.${MACHINE_ARCH} if OBJMACHINE is set.

12.7. files/*

If you have any files that you wish to be placed in the package prior to configuration or building, you can place these files here and use a ${CP} command in the post-extract target to achieve this.

If you want to share files in this way with other packages, set the FILESDIR variable to point to the other package's files directory, e.g.:

FILESDIR=       ../../editors/xemacs/files

Chapter 13. The build process

13.1. Introduction

This chapter gives a detailed description on how a package is built. Building a package is separated into different phases (for example fetch, build, install), all of which are described in the following sections. Each phase is split into so-called stages, which take the name of the containing phase, prefixed by one of pre-, do- or post-. (Examples are pre-configure, post-build.) Most of the actual work is done in the do-* stages.

Never override the regular targets (like fetch), if you have to, override the do-* ones instead.

The basic steps for building a program are always the same. First the program's source (distfile) must be brought to the local system and then extracted. After any pkgsrc-specific patches to compile properly are applied, the software can be configured, then built (usually by compiling), and finally the generated binaries, etc. can be put into place on the system.

To get more details about what is happening at each step, you can set the PKG_VERBOSE variable, or the PATCH_DEBUG variable if you are just interested in more details about the patch step.

13.2. Program location

Before outlining the process performed by the NetBSD package system in the next section, here's a brief discussion on where programs are installed, and which variables influence this.

The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the cross category. The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See Section 12.3, “patches/* and Section 21.3.1, “Shared libraries - libtool” for more details.

When choosing which of these variables to use, follow the following rules:

  • PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own installation path, use ${PREFIX}.

  • LOCALBASE is where all pkgs are installed. If you need to construct a -I or -L argument to the compiler to find includes and libraries installed by another pkg, use ${LOCALBASE}. The name LOCALBASE stems from FreeBSD, which installed all packages in /usr/local. As pkgsrc leaves /usr/local for the system administrator, this variable is a misnomer.

  • X11BASE is where the actual X11 distribution (from xsrc, etc.) is installed. When looking for standard X11 includes (not those installed by a package), use ${X11BASE}.

  • X11-based packages using imake must set USE_IMAKE to be installed correctly under LOCALBASE.

  • Within ${PREFIX}, packages should install files according to hier(7), with the exception that manual pages go into ${PREFIX}/man, not ${PREFIX}/share/man.

13.3. Directories used during the build process

When building a package, various directories are used to store source files, temporary files, pkgsrc-internal files, and so on. These directories are explained here.

Some of the directory variables contain relative pathnames. There are two common base directories for these relative directories: PKGSRCDIR/PKGPATH is used for directories that are pkgsrc-specific. WRKSRC is used for directories inside the package itself.

PKGSRCDIR

This is an absolute pathname that points to the pkgsrc root directory. Generally, you don't need it.

PKGDIR

This is an absolute pathname that points to the current package.

PKGPATH

This is a pathname relative to PKGSRCDIR that points to the current package. It is defined after including bsd.prefs.mk and can be used in makefile fragments that are used by several packages to distinguish between these packages. Other variables that would serve the same purpose are PKGBASE and PKGNAME, but these are only defined after including bsd.pkg.mk, which is too late.

In mk.conf, the pkgsrc user can use PKGPATH to tweak variables like MAKE_JOBS and CFLAGS.

WRKDIR

This is an absolute pathname pointing to the directory where all work takes place. The distfiles are extracted to this directory. It also contains temporary directories and log files used by the various pkgsrc frameworks, like buildlink or the wrappers.

WRKSRC

This is an absolute pathname pointing to the directory where the distfiles are extracted. It is usually a direct subdirectory of WRKDIR, and often it's the only directory entry that isn't hidden. This variable may be changed by a package Makefile.

The CREATE_WRKDIR_SYMLINK definition takes either the value yes or no and defaults to no. It indicates whether a symbolic link to the WRKDIR is to be created in the pkgsrc entry's directory. If users would like to have their pkgsrc trees behave in a read-only manner, then the value of CREATE_WRKDIR_SYMLINK should be set to no.

13.4. Running a phase

You can run a particular phase by typing make phase, where phase is the name of the phase. This will automatically run all phases that are required for this phase. The default phase is build, that is, when you run make without parameters in a package directory, the package will be built, but not installed.

13.5. The fetch phase

The first step in building a package is to fetch the distribution files (distfiles) from the sites that are providing them. This is the task of the fetch phase.

13.5.1. What to fetch and where to get it from

In simple cases, MASTER_SITES defines all URLs from where the distfile, whose name is derived from the DISTNAME variable, is fetched. The more complicated cases are described below.

The variable DISTFILES specifies the list of distfiles that have to be fetched. Its value defaults to ${DEFAULT_DISTFILES} and its value is ${DISTNAME}${EXTRACT_SUFX}, so that most packages don't need to define it at all. EXTRACT_SUFX is .tar.gz by default, but can be changed freely. Note that if your package requires additional distfiles to the default one, you cannot just append the additional filenames using the += operator, but you have write for example:

DISTFILES=      ${DEFAULT_DISTFILES} additional-files.tar.gz

Each distfile is fetched from a list of sites, usually MASTER_SITES. If the package has multiple DISTFILES or multiple PATCHFILES from different sites, you can set SITES.distfile to the list of URLs where the file distfile (including the suffix) can be found.

DISTFILES=      ${DISTNAME}${EXTRACT_SUFX}
DISTFILES+=     foo-file.tar.gz
SITES.foo-file.tar.gz= \
https://www.somewhere.com/somehow/ \
https://www.somewhereelse.com/mirror/somehow/

When actually fetching the distfiles, each item from MASTER_SITES or SITES.* gets the name of each distfile appended to it, without an intermediate slash. Therefore, all site values have to end with a slash or other separator character. This allows for example to set MASTER_SITES to a URL of a CGI script that gets the name of the distfile as a parameter. In this case, the definition would look like:

MASTER_SITES=   https://www.example.com/download.cgi?file=

The exception to this rule are URLs starting with a dash. In that case the URL is taken as is, fetched and the result stored under the name of the distfile. You can use this style for the case when the download URL style does not match the above common case. For example, if permanent download URL is a redirector to the real download URL, or the download file name is offered by an HTTP Content-Disposition header. In the following example, foo-1.0.0.tar.gz will be created instead of the default v1.0.0.tar.gz.

DISTNAME=       foo-1.0.0
MASTER_SITES=   -https://www.example.com/archive/v1.0.0.tar.gz

There are some predefined values for MASTER_SITES, which can be used in packages. The names of the variables should speak for themselves.

MASTER_SITE_APACHE MASTER_SITE_BACKUP
MASTER_SITE_CRATESIO MASTER_SITE_CYGWIN
MASTER_SITE_DEBIAN MASTER_SITE_FREEBSD
MASTER_SITE_FREEBSD_LOCAL MASTER_SITE_GENTOO
MASTER_SITE_GITHUB MASTER_SITE_GITLAB
MASTER_SITE_GNOME MASTER_SITE_GNU
MASTER_SITE_GNUSTEP MASTER_SITE_HASKELL_HACKAGE
MASTER_SITE_IFARCHIVE MASTER_SITE_KDE
MASTER_SITE_MOZILLA MASTER_SITE_MOZILLA_ALL
MASTER_SITE_MYSQL MASTER_SITE_NETLIB
MASTER_SITE_OPENBSD MASTER_SITE_OPENOFFICE
MASTER_SITE_OSDN MASTER_SITE_PERL_CPAN
MASTER_SITE_PGSQL MASTER_SITE_PYPI
MASTER_SITE_RUBYGEMS MASTER_SITE_R_CRAN
MASTER_SITE_SOURCEFORGE MASTER_SITE_SUNSITE
MASTER_SITE_SUSE MASTER_SITE_TEX_CTAN
MASTER_SITE_XCONTRIB MASTER_SITE_XEMACS
MASTER_SITE_XORG  

Some explanations for the less self-explaining ones: MASTER_SITE_BACKUP contains backup sites for packages that are maintained in ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local package source distributions that are maintained in ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/LOCAL_PORTS/.

If you choose one of these predefined sites, you may want to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

MASTER_SITES=   ${MASTER_SITE_GNU:=subdirectory/name/}
MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE:=project_name/}

Note the trailing slash after the subdirectory name.

13.5.2. How are the files fetched?

The fetch phase makes sure that all the distfiles exist in a local directory (DISTDIR, which can be set by the pkgsrc user). If the files do not exist, they are fetched using commands of the form

${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS}

where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES.file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first and the last can be optionally sorted by the user, via setting either MASTER_SORT_RANDOM, and MASTER_SORT_AWK or MASTER_SORT_REGEX.

The specific command and arguments used depend on the FETCH_USING parameter. The example above is for FETCH_USING=custom.

The distfiles mirror run by the NetBSD Foundation uses the mirror-distfiles target to mirror the distfiles, if they are freely distributable. Packages setting NO_SRC_ON_FTP (usually to ${RESTRICTED}) will not have their distfiles mirrored.

13.6. The checksum phase

After the distfile(s) are fetched, their checksum is generated and compared with the checksums stored in the distinfo file. If the checksums don't match, the build is aborted. This is to ensure the same distfile is used for building, and that the distfile wasn't changed, e.g. by some malign force, deliberately changed distfiles on the master distribution site or network lossage.

13.7. The extract phase

When the distfiles are present on the local system, they need to be extracted, as they usually come in the form of some compressed archive format.

By default, all DISTFILES are extracted. If you only need some of them, you can set the EXTRACT_ONLY variable to the list of those files.

Extracting the files is usually done by a little program, mk/extract/extract, which already knows how to extract various archive formats, so most likely you will not need to change anything here. But if you need, the following variables may help you:

EXTRACT_OPTS_{BIN,LHA,PAX,RAR,TAR,ZIP,ZOO}

Use these variables to override the default options for an extract command, which are defined in mk/extract/extract.

EXTRACT_USING

This variable can be set to bsdtar, gtar, nbtar (which is the default value), pax, or an absolute pathname pointing to the command with which tar archives should be extracted. It is preferred to choose bsdtar over gtar if NetBSD's pax-as-tar is not good enough.

If the extract program doesn't serve your needs, you can also override the EXTRACT_CMD variable, which holds the command used for extracting the files. This command is executed in the ${WRKSRC} directory. During execution of this command, the shell variable extract_file holds the absolute pathname of the file that is going to be extracted.

And if that still does not suffice, you can override the do-extract target in the package Makefile.

13.8. The patch phase

After extraction, all the patches named by the PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See Section 12.3, “patches/* for more details.

By default patch(1) is given special arguments to make it fail if the expected text from the patch context is not found in the patched file. If that happens, fix the patch file by comparing it with the actual text in the file to be patched.

13.9. The tools phase

This is covered in Chapter 17, Tools needed for building or running.

13.10. The wrapper phase

This phase creates wrapper programs for the compilers and linkers. The following variables can be used to tweak the wrappers.

ECHO_WRAPPER_MSG

The command used to print progress messages. Does nothing by default. Set to ${ECHO} to see the progress messages.

WRAPPER_DEBUG

This variable can be set to yes (default) or no, depending on whether you want additional information in the wrapper log file.

WRAPPER_UPDATE_CACHE

This variable can be set to yes or no, depending on whether the wrapper should use its cache, which will improve the speed. The default value is yes, but is forced to no if the platform does not support it.

WRAPPER_REORDER_CMDS

A list of reordering commands. A reordering command has the form reorder:l:lib1:lib2. It ensures that that -llib1 occurs before -llib2.

13.11. The configure phase

Most pieces of software need information on the header files, system calls, and library routines which are available on the platform they run on. The process of determining this information is known as configuration, and is usually automated. In most cases, a script is supplied with the distfiles, and its invocation results in generation of header files, Makefiles, etc.

If the package contains a configure script, this can be invoked by setting HAS_CONFIGURE to yes. If the configure script is a GNU autoconf script, you should set GNU_CONFIGURE to yes instead.

In the do-configure stage, a rough equivalent of the following command is run. See mk/configure/configure.mk, target do-configure-script for the exact definition.

.for dir in ${CONFIGURE_DIRS}
        cd ${WRKSRC} && cd ${dir} \
        && env ${CONFIGURE_ENV} \
            ${CONFIG_SHELL} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}
.endfor

CONFIGURE_DIRS (default: .) is a list of pathnames relative to WRKSRC. In each of these directories, the configure script is run with the environment CONFIGURE_ENV and arguments CONFIGURE_ARGS. The variables CONFIGURE_ENV, CONFIGURE_SCRIPT (default: ./configure) and CONFIGURE_ARGS may all be changed by the package.

If the program uses the Perl way of configuration (mainly Perl modules, but not only), i.e. a file called Makefile.PL, it should include ../../lang/perl5/module.mk. To set any parameter for Makefile.PL use the MAKE_PARAMS variable (e.g., MAKE_PARAMS+=foo=bar

If the program uses an Imakefile for configuration, the appropriate steps can be invoked by setting USE_IMAKE to yes. If you only need xmkmf, add it to USE_TOOLS. You can add variables to xmkmf's environment by adding them to the SCRIPTS_ENV variable.

If the program uses cmake for configuration, the appropriate steps can be invoked by including ../../devel/cmake/build.mk. You can add variables to cmake's environment by adding them to the CONFIGURE_ENV variable and arguments to cmake by adding them to the CMAKE_ARGS variable. If you want to add arguments only for particular stages, you can use the CMAKE_CONFIGURE_ARGS, CMAKE_BUILD_ARGS, and CMAKE_INSTALL_ARGS variables. You can set the CONFIGURE_DIRS variable to the directories in which CMake should be run, relative to WRKSRC. This defaults to to ..

If there is no configure step at all, set NO_CONFIGURE to yes.

13.12. The build phase

For building a package, a rough equivalent of the following code is executed; see mk/build/build.mk, target do-build for the exact definition.

.for dir in ${BUILD_DIRS}
        cd ${WRKSRC} && cd ${dir} \
        && env ${MAKE_ENV} \
            ${MAKE_PROGRAM} ${MAKE_FLAGS} ${BUILD_MAKE_FLAGS} \
                -f ${MAKE_FILE} \
                ${BUILD_TARGET}
.endfor

BUILD_DIRS (default: .) is a list of pathnames relative to WRKSRC. In each of these directories, MAKE_PROGRAM is run with the environment MAKE_ENV and arguments BUILD_MAKE_FLAGS. The variables MAKE_ENV, BUILD_MAKE_FLAGS, MAKE_FILE and BUILD_TARGET may all be changed by the package.

The default value of MAKE_PROGRAM is gmake if USE_TOOLS contains gmake, make otherwise. The default value of MAKE_FILE is Makefile, and BUILD_TARGET defaults to all.

If there is no build step at all, set NO_BUILD to yes.

13.13. The test phase

[TODO]

13.14. The install phase

Once the build stage has completed, the final step is to install the software in public directories, so users can access the programs and files.

In the install phase, a rough equivalent of the following code is executed; see mk/install/install.mk, target do-install for the exact definition. Additionally, before and after this code, several consistency checks are run against the files-to-be-installed, see mk/check/*.mk for details.

.for dir in ${INSTALL_DIRS}
        cd ${WRKSRC} && cd ${dir} \
        && env ${INSTALL_ENV} ${MAKE_ENV} \
            ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} \
                -f ${MAKE_FILE} ${INSTALL_TARGET}
.endfor

The variable's meanings are analogous to the ones in the build phase. INSTALL_DIRS defaults to BUILD_DIRS. INSTALL_TARGET is install by default, plus install.man if USE_IMAKE is defined and NO_INSTALL_MANPAGES is not defined.

In the install phase, the following variables are useful. They are all variations of the install(1) command that have the owner, group and permissions preset. INSTALL is the plain install command. The specialized variants, together with their intended use, are:

INSTALL_PROGRAM_DIR

directories that contain binaries

INSTALL_SCRIPT_DIR

directories that contain scripts

INSTALL_LIB_DIR

directories that contain shared and static libraries

INSTALL_DATA_DIR

directories that contain data files

INSTALL_MAN_DIR

directories that contain man pages

INSTALL_GAME_DIR

directories that contain data files for games

INSTALL_PROGRAM

binaries that can be stripped from debugging symbols

INSTALL_SCRIPT

binaries that cannot be stripped

INSTALL_GAME

game binaries

INSTALL_LIB

shared and static libraries

INSTALL_DATA

data files

INSTALL_GAME_DATA

data files for games

INSTALL_MAN

man pages

Some other variables are:

INSTALL_UNSTRIPPED

If set to yes, do not run strip(1) when installing binaries. Any debugging sections and symbols present in binaries will be preserved.

INSTALLATION_DIRS

A list of directories relative to PREFIX that are created by pkgsrc at the beginning of the install phase. The package is supposed to create all needed directories itself before installing files to it and list all other directories here.

In the rare cases that a package shouldn't install anything, set NO_INSTALL to yes. This is mostly relevant for packages in the regress category.

13.15. The package phase

Once the install stage has completed, a binary package of the installed files can be built. These binary packages can be used for quick installation without previous compilation, e.g. by the make bin-install or by using pkg_add.

By default, the binary packages are created in ${PACKAGES}/All and symlinks are created in ${PACKAGES}/category, one for each category in the CATEGORIES variable. PACKAGES defaults to pkgsrc/packages.

13.16. Cleaning up

Once you're finished with a package, you can clean the work directory by running make clean. If you want to clean the work directories of all dependencies too, use make clean-depends.

13.17. Other helpful targets

pre/post-*

For any of the main targets described in the previous section (configure, build, install, etc.), two auxiliary targets exist with pre- and post- used as a prefix for the main target's name. These targets are invoked before and after the main target is called, allowing extra configuration or installation steps be performed from a package's Makefile, for example, which a program's configure script or install target omitted.

About 5% of the pkgsrc packages define their custom post-extract target, another 5% define pre-configure, and 10% define post-install. The other pre/post-* targets are defined even less often.

do-*

Should one of the main targets do the wrong thing, and should there be no variable to fix this, you can redefine it with the do-* target. (Note that redefining the target itself instead of the do-* target is a bad idea, as the pre-* and post-* targets won't be called anymore, etc.)

About 15% of the pkgsrc packages override the default do-install, the other do-* targets are overridden even less often.

reinstall

If you did a make install and you noticed some file was not installed properly, you can repeat the installation with this target, which will ignore the already installed flag.

This is the default value of DEPENDS_TARGET except in the case of make update and make package, where the defaults are package and update, respectively.

deinstall

This target does a pkg_delete(1) in the current directory, effectively de-installing the package. The following variables can be used to tune the behaviour:

PKG_VERBOSE

Add a "-v" to the pkg_delete(1) command.

DEINSTALLDEPENDS

Remove all packages that require (depend on) the given package. This can be used to remove any packages that may have been pulled in by a given package, e.g. if make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, this is likely to remove whole KDE. Works by adding -R to the pkg_delete(1) command line.

bin-install

Install a binary package from local disk and via FTP from a list of sites (see the BINPKG_SITES variable), and do a make package if no binary package is available anywhere. The arguments given to pkg_add can be set via BIN_INSTALL_FLAGS e.g., to do verbose operation, etc.

install-clean

This target removes the state files for the "install" and later phases so that the "install" target may be re-invoked. This can be used after editing the PLIST to install the package without rebuilding it.

build-clean

This target removes the state files for the "build" and later phases so that the "build" target may be re-invoked.

update

This target causes the current package to be updated to the latest version. The package and all depending packages first get de-installed, then current versions of the corresponding packages get compiled and installed. This is similar to manually noting which packages are currently installed, then performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

You can use the update target to resume package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise, you lose the ability to automatically update the current package along with the dependent packages you have installed.

Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

The following variables can be used either on the command line or in mk.conf to alter the behaviour of make update:

UPDATE_TARGET

Install target to recursively use for the updated package and the dependent packages. Defaults to DEPENDS_TARGET if set, install otherwise for make update. Other good targets are package or bin-install. Do not set this to update or you will get stuck in an endless loop!

NOCLEAN

Don't clean up after updating. Useful if you want to leave the work sources of the updated packages around for inspection or other purposes. Be sure you eventually clean up the source tree (see the clean-update target below) or you may run into troubles with old source code still lying around on your next make or make update.

REINSTALL

Deinstall each package before installing (making DEPENDS_TARGET). This may be necessary if the clean-update target (see below) was called after interrupting a running make update.

DEPENDS_TARGET

Allows you to disable recursion and hardcode the target for packages. The default is update for the update target, facilitating a recursive update of prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

clean-update

Clean the source tree for all packages that would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

If you are unsure about whether your tree is clean, you can either perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running make update for the first time, otherwise you lose all the packages you wanted to update!):

# make clean-update
# make clean CLEANDEPENDS=YES
# make update
	  

The following variables can be used either on the command line or in mk.conf to alter the behaviour of make clean-update:

CLEAR_DIRLIST

After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see above).

replace

Update the installation of the current package. This differs from update in that it does not replace dependent packages. You will need to install pkgtools/pkg_tarup for this target to work.

Be careful when using this target! There are no guarantees that dependent packages will still work, in particular they will most certainly break if you make replace a library package whose shared library major version changed between your installed version and the new one. For this reason, this target is not officially supported and only recommended for advanced users.

info

This target invokes pkg_info(1) for the current package. You can use this to check which version of a package is installed.

index

This is a top-level command, i.e. it should be used in the pkgsrc directory. It creates a database of all packages in the local pkgsrc tree, including dependencies, comment, maintainer, and some other useful information. Individual entries are created by running make describe in the packages' directories. This index file is saved as pkgsrc/INDEX. It can be displayed in verbose format by running make print-index. You can search in it with make search key=something. You can extract a list of all packages that depend on a particular one by running make show-deps PKG=somepackage.

Running this command takes a very long time, some hours even on fast machines!

readme

This target generates a index.html file, which can be viewed using a browser such as www/firefox or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate index.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

The target can be run at the toplevel or in category directories, in which case it descends recursively.

readme-all

This is a top-level command, run it in pkgsrc. Use this target to create a file README-all.html which contains a list of all packages currently available in the NetBSD Packages Collection, together with the category they belong to and a short description. This file is compiled from the pkgsrc/*/index.html files, so be sure to run this after a make readme.

cdrom-readme

This is very much the same as the readme target (see above), but is to be used when generating a pkgsrc tree to be written to a CD-ROM. This target also produces index.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

show-distfiles

This target shows which distfiles and patchfiles are needed to build the package (ALLFILES, which contains all DISTFILES and PATCHFILES, but not patches/*).

show-downlevel

This target shows nothing if the package is not installed. If a version of this package is installed, but is not the version provided in this version of pkgsrc, then a warning message is displayed. This target can be used to show which of your installed packages are downlevel, and so the old versions can be deleted, and the current ones added.

show-pkgsrc-dir

This target shows the directory in the pkgsrc hierarchy from which the package can be built and installed. This may not be the same directory as the one from which the package was installed. This target is intended to be used by people who may wish to upgrade many packages on a single host, and can be invoked from the top-level pkgsrc Makefile by using the show-host-specific-pkgs target.

show-installed-depends

This target shows which installed packages match the current package's DEPENDS. Useful if out of date dependencies are causing build problems.

print-build-depends-list

This target shows the list of packages that the current package depends on for building.

print-run-depends-list

This target shows the list of packages that the current package depends on for running.

check-shlibs

After a package is installed, check all its binaries and (on ELF platforms) shared libraries to see if they find the shared libs they need. Run by default if PKG_DEVELOPER is set in mk.conf.

print-PLIST

After a make install from a new or upgraded pkg, this prints out an attempt to generate a new PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is strongly recommended to review the result before putting it into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

If the package installs files via tar(1) or other methods that don't update file access times, be sure to add these files manually to your PLIST, as the find -newer command used by this target won't catch them!

See Section 19.3, “Tweaking output of make print-PLIST for more information on this target.

Chapter 14. Creating a new pkgsrc package from scratch

When you find a package that is not yet in pkgsrc, you most likely have a URL from where you can download the source code. Starting with this URL, creating a package involves only a few steps.

  1. In your mk.conf, set PKG_DEVELOPER=yes to enable the basic quality checks.

  2. Install the package meta-pkgs/pkg_developer, which among others will install the utilities url2pkg, pkglint, pkgvi and mkpatches:

    $ cd /usr/pkgsrc
    $ (cd meta-pkgs/pkg_developer && bmake update)
  3. Choose one of the top-level directories as the category in which you want to place your package. You can also create a directory of your own (maybe called local). Change into that category directory:

    $ cd category
  4. Run the program url2pkg, passing as argument the URL of the distribution file (in most cases a .tar.gz file). This will download the distribution file and create the necessary files of the package, based on what's in the distribution file:

    $ url2pkg https://www.example.org/packages/package-1.0.tar.gz
  5. Examine the extracted files to determine the dependencies of your package. Ideally, this is mentioned in some README file, but things may differ. For each of these dependencies, look where it exists in pkgsrc, and if there is a file called buildlink3.mk in that directory, add a line to your package Makefile which includes that file just before the last line. If the buildlink3.mk file does not exist, it must be created first. The buildlink3.mk file makes sure that the package's include files and libraries are provided.

    If you just need binaries from a dependent package, add a DEPENDS line to the Makefile, which specifies the version of the dependency and where it can be found in pkgsrc. This line should be placed in the third paragraph. If the dependency is only needed for building the package, but not when using it, use TOOL_DEPENDS or BUILD_DEPENDS instead of DEPENDS. The difference between TOOL_DEPENDS and BUILD_DEPENDS occurs when cross-compiling: TOOL_DEPENDS are native packages, i.e. packages for the platform where the package is built; BUILD_DEPENDS are target packages, i.e. packages for the platform for which the package is built. There is also TEST_DEPENDS, which specifies a dependency used only for testing the resulting package built, using the upstream project's included test suite, on the native platform. Your package may then look like this:

    [...]
    
    TOOL_DEPENDS+=  libxslt-[0-9]*:../../textproc/libxslt
    DEPENDS+=       screen-[0-9]*:../../misc/screen
    DEPENDS+=       screen>=4.0:../../misc/screen
    
    [...]
    
    .include "../../category/package/buildlink3.mk"
    .include "../../devel/glib2/buildlink3.mk"
    .include "../../mk/bsd.pkg.mk"
    
  6. Run pkglint to see what things still need to be done to make your package a good one. If you don't know what pkglint's warnings want to tell you, try pkglint --explain or pkglint -e, which outputs additional explanations.

  7. In many cases the package is not yet ready to build. You can find instructions for the most common cases in the next section, Section 14.1, “Common types of packages”. After you have followed the instructions over there, you can hopefully continue here.

  8. Run bmake clean to clean the working directory from the extracted files. Besides these files, a lot of cache files and other system information have been saved in the working directory, which may have become outdated after you edited the Makefile.

  9. Now, run bmake to build the package. For the various things that can go wrong in this phase, consult Chapter 21, Making your package work.

    If the extracted files from the package need to be fixed, run multiple rounds of these commands:

    $ bmake
    $ pkgvi ${WRKSRC}/some/file/that/does/not/compile
    $ mkpatches
    $ bmake mps
    $ bmake clean
  10. When the package builds fine, the next step is to install the package. Run bmake install and hope that everything works.

  11. Up to now, the file PLIST, which contains a list of the files that are installed by the package, is nearly empty. Run bmake print-PLIST >PLIST to generate a probably correct list. Check the file using your preferred text editor to see if the list of files looks plausible.

  12. Run pkglint again to see if the generated PLIST contains garbage or not.

  13. When you ran bmake install, the package had been registered in the database of installed files, but with an empty list of files. To fix this, run bmake deinstall and bmake install again. Now the package is registered with the list of files from PLIST.

  14. Run bmake clean update to run everything from above again in a single step, making sure that the PLIST is correct and the whole package is created as intended.

  15. Run pkglint to see if there's anything left to do.

  16. Commit the package to pkgsrc-wip or main pkgsrc; see Chapter 23, Submitting and Committing.

14.1. Common types of packages

14.1.1. Python modules and programs

Python modules and programs packages are easily created using a set of predefined variables.

If some Python versions are not supported by the software, set the PYTHON_VERSIONS_INCOMPATIBLE variable to the Python versions that are not supported, e.g.

PYTHON_VERSIONS_INCOMPATIBLE=       27

If the packaged software is a Python module, include ../../lang/python/wheel.mk. Note per PEP-518, the minimum and default requirements to create .whl files are py-setuptools plus py-wheel; however, there are various other possible tools that projects can use. Thus inclusion of wheel.mk does not imply these defaults are defined as TOOL_DEPENDS. Whatever the project specifically requires as packaging tools must be defined in the package Makefile.

The package directory should be called py-software and PKGNAME should be set to ${PYPKGPREFIX}-${DISTNAME}, e.g.

DISTNAME=   foopymodule-1.2.10
PKGNAME=    ${PYPKGPREFIX}-${DISTNAME}

For software in PyPi, the name should match what PyPi specifies for "pip install software".

If it is an application, include ../../lang/python/application.mk. In order to correctly set the path to the Python interpreter, use the REPLACE_PYTHON variable and set it to the list of files (paths relative to WRKSRC) that must be corrected. For example:

REPLACE_PYTHON=   *.py

Some Python modules have separate distributions for Python-2.x and Python-3.x support. In pkgsrc this is handled by the versioned_dependencies.mk file. Set PYTHON_VERSIONED_DEPENDENCIES to the list of packages that should be depended upon and include ../../lang/python/versioned_dependencies.mk, then the pkgsrc infrastructure will depend on the appropriate package version. For example:

PYTHON_VERSIONED_DEPENDENCIES=dialog

Look inside versioned_dependencies.mk for a list of supported packages.

14.1.2. R packages

Simple R packages from CRAN are handled automatically by R2pkg, which is available in pkgtools/R2pkg. Individual packages (and optionally their dependencies) may be created and updated. R packages generally follow the same form, and most of the relevant information needed is contained in a DESCRIPTION file as part of each R package on CRAN. Consequently, R2pkg downloads that information and creates or updates a package in the canonical form. The resulting package should be reviewed for correctness.

14.1.3. TeXlive packages

TeXlive packages from CTAN are handled automatically by texlive2pkg, which is available in pkgtools/texlive2pkg.

If the TeXlive package name is not known, it may be useful to search CTAN. A Contained in field on the package page typically identifies the basename of the package file in the TeXlive archive.

If the TeXlive package name is known, download the files from the TeXlive archive. For package foo, you will need to download foo.tar.xz. Most TeXlive packages also have associated documentation packages, so download foo.doc.tar.xz at the same time. These files should be placed in the appropriate category directory, which is often but not always print. Then run the following command in the category directory.

texlive2pkg foo.tar.xz foo.doc.tar.xz

This will create two packages, tex-foo and tex-foo-doc. Be sure to check that both packages are correct.

Finally, CTAN currently does not include version information in package filenames and changes their contents periodically when updates occur. Consequently, pkgsrc avoids downloading distfiles directly from CTAN and instead relies on the pkgsrc archives. For each new or updated TeXlive package, e.g., the main one and the corresponding documentation, upload the distfiles with the following command in each package directory.

make upload-distfiles

14.2. Examples

14.2.1. How the www/nvu package came into pkgsrc

14.2.1.1. The initial package

Looking at the file pkgsrc/doc/TODO, I saw that the nvu package has not yet been imported into pkgsrc. As the description says it has to do with the web, the obvious choice for the category is www.

$ mkdir www/nvu
$ cd www/nvu

The web site says that the sources are available as a tar file, so I fed that URL to the url2pkg program:

$ url2pkg http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2

My editor popped up, and I added a PKGNAME line below the DISTNAME line, as the package name should not have the word sources in it. I also filled in the MAINTAINER, HOMEPAGE and COMMENT fields. Then the package Makefile looked like that:

# $NetBSD $
#

DISTNAME=       nvu-1.0-sources
PKGNAME=        nvu-1.0
CATEGORIES=     www
MASTER_SITES=   http://cvs.nvu.com/download/
EXTRACT_SUFX=   .tar.bz2

MAINTAINER=     rillig@@NetBSD.org
HOMEPAGE=       http://cvs.nvu.com/
COMMENT=        Web Authoring System

# url2pkg-marker (please do not remove this line.)
.include "../../mk/bsd.pkg.mk"

On the first line of output above, an artificial space has been added between NetBSD and $, this is a workaround to prevent CVS expanding to the filename of the guide.

Then, I quit the editor and watched pkgsrc downloading a large source archive:

url2pkg> Running "make makesum" ...
=> Required installed package digest>=20010302: digest-20060826 found
=> Fetching nvu-1.0-sources.tar.bz2
Requesting http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2
100% |*************************************| 28992 KB  150.77 KB/s00:00 ETA
29687976 bytes retrieved in 03:12 (150.77 KB/s)
url2pkg> Running "make extract" ...
=> Required installed package digest>=20010302: digest-20060826 found
=> Checksum SHA1 OK for nvu-1.0-sources.tar.bz2
=> Checksum RMD160 OK for nvu-1.0-sources.tar.bz2
work.bacc -> /tmp/roland/pkgsrc/www/nvu/work.bacc
===> Installing dependencies for nvu-1.0
===> Overriding tools for nvu-1.0
===> Extracting for nvu-1.0
url2pkg> Adjusting the Makefile.

Remember to correct CATEGORIES, HOMEPAGE, COMMENT, and DESCR when you're done!

Good luck! (See pkgsrc/doc/pkgsrc.txt for some more help :-)

14.2.1.2. Fixing all kinds of problems to make the package work

Now that the package has been extracted, let's see what's inside it. The package has a README.txt, but that only says something about mozilla, so it's probably useless for seeing what dependencies this package has. But since there is a GNU configure script in the package, let's hope that it will complain about everything it needs.

$ bmake
=> Required installed package digest>=20010302: digest-20060826 found
=> Checksum SHA1 OK for nvu-1.0-sources.tar.bz2
=> Checksum RMD160 OK for nvu-1.0-sources.tar.bz2
===> Patching for nvu-1.0
===> Creating toolchain wrappers for nvu-1.0
===> Configuring for nvu-1.0
[...]
configure: error: Perl 5.004 or higher is required.
[...]
WARNING: Please add USE_TOOLS+=perl to the package Makefile.
[...]

That worked quite well. So I opened the package Makefile in my editor, and since it already has a USE_TOOLS line, I just appended perl to it. Since the dependencies of the package have changed now, and since a perl wrapper is automatically installed in the tools phase, I need to build the package from scratch.

$ bmake clean
===> Cleaning for nvu-1.0
$ bmake
[...]
*** /tmp/roland/pkgsrc/www/nvu/work.bacc/.tools/bin/make is not \
GNU Make.  You will not be able to build Mozilla without GNU Make.
[...]

So I added gmake to the USE_TOOLS line and tried again (from scratch).

[...]
checking for GTK - version >= 1.2.0... no
*** Could not run GTK test program, checking why...
[...]

Now to the other dependencies. The first question is: Where is the GTK package hidden in pkgsrc?

$ echo ../../*/gtk*
[many packages ...]
$ echo ../../*/gtk
../../x11/gtk
$ echo ../../*/gtk2
../../x11/gtk2
$ echo ../../*/gtk2/bui*
../../x11/gtk2/buildlink3.mk

The first try was definitely too broad. The second one had exactly one result, which is very good. But there is one pitfall with GNOME packages. Before GNOME 2 had been released, there were already many GNOME 1 packages in pkgsrc. To be able to continue to use these packages, the GNOME 2 packages were imported as separate packages, and their names usually have a 2 appended. So I checked whether this was the case here, and indeed it was.

Since the GTK2 package has a buildlink3.mk file, adding the dependency is very easy. I just inserted an .include line before the last line of the package Makefile, so that it now looks like this:

[...]
.include "../../x11/gtk2/buildlink3.mk"
.include "../../mk/bsd.pkg.mk

After another bmake clean && bmake, the answer was:

[...]
checking for gtk-config... /home/roland/pkg/bin/gtk-config
checking for GTK - version >= 1.2.0... no
*** Could not run GTK test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK was incorrectly installed
*** or that you have moved GTK since it was installed. In the latter case, you
*** may want to edit the gtk-config script: /home/roland/pkg/bin/gtk-config
configure: error: Test for GTK failed.
[...]

In this particular case, the assumption that every package prefers GNOME 2 had been wrong. The first of the lines above told me that this package really wanted to have the GNOME 1 version of GTK. If the package had looked for GTK2, it would have looked for pkg-config instead of gtk-config. So I changed the x11/gtk2 to x11/gtk in the package Makefile, and tried again.

[...]
cc -o xpidl.o -c -DOSTYPE=\"NetBSD3\" -DOSARCH=\"NetBSD\"  [...]
In file included from xpidl.c:42:
xpidl.h:53:24: libIDL/IDL.h: No such file or directory
In file included from xpidl.c:42:
xpidl.h:132: error: parse error before "IDL_ns"
[...]

The package still does not find all of its dependencies. Now the question is: Which package provides the libIDL/IDL.h header file?

$ echo ../../*/*idl*
../../devel/py-idle ../../wip/idled ../../x11/acidlaunch
$ echo ../../*/*IDL*
../../net/libIDL

Let's take the one from the second try. So I included the ../../net/libIDL/buildlink3.mk file and tried again. But the error didn't change. After digging through some of the code, I concluded that the build process of the package was broken and couldn't have ever worked, but since the Mozilla source tree is quite large, I didn't want to fix it. So I added the following to the package Makefile and tried again:

CPPFLAGS+=              -I${BUILDLINK_PREFIX.libIDL}/include/libIDL-2.0
BUILDLINK_TRANSFORM+=   l:IDL:IDL-2

The latter line is needed because the package expects the library libIDL.so, but only libIDL-2.so is available. So I told the compiler wrapper to rewrite that on the fly.

The next problem was related to a recent change of the FreeType interface. I looked up in www/seamonkey which patch files were relevant for this issue and copied them to the patches directory. Then I retried, fixed the patches so that they applied cleanly and retried again. This time, everything worked.

14.2.1.3. Installing the package

$ bmake CHECK_FILES=no install
[...]
$ bmake print-PLIST >PLIST
$ bmake deinstall
$ bmake install

Chapter 15. Programming in Makefiles

Pkgsrc consists of many Makefile fragments, each of which forms a well-defined part of the pkgsrc system. Using the make(1) system as a programming language for a big system like pkgsrc requires some discipline to keep the code correct and understandable.

The basic ingredients for Makefile programming are variables and shell commands. Among these shell commands may even be more complex ones like awk(1) programs. To make sure that every shell command runs as intended it is necessary to quote all variables correctly when they are used.

This chapter describes some patterns that appear quite often in Makefiles, including the pitfalls that come along with them.

15.1. Caveats

  • When you are creating a file as a target of a rule, always write the data to a temporary file first and finally rename that file. Otherwise there might occur an error in the middle of generating the file, and when the user runs make(1) for the second time, the file exists and will not be regenerated properly. Example:

    wrong:
            @@echo "line 1" > ${.TARGET}
            @@echo "line 2" >> ${.TARGET}
            @@false
    
    correct:
            @@echo "line 1" > ${.TARGET}.tmp
            @@echo "line 2" >> ${.TARGET}.tmp
            @@false
            @@mv ${.TARGET}.tmp ${.TARGET}
    

    When you run make wrong twice, the file wrong will exist, although there was an error message in the first run. On the other hand, running make correct gives an error message twice, as expected.

    You might remember that make(1) sometimes removes ${.TARGET} in case of error, but this only happens when it is interrupted, for example by pressing Ctrl+C. This does not happen when one of the commands fails (like false(1) above).

15.2. Makefile variables

Makefile variables contain strings that can be processed using the five operators =, +=, ?=, := and !=, which are described in the make(1) man page.

When a variable's value is parsed from a Makefile, the hash character # and the backslash character \ are handled specially. If a backslash is the last character in a line, that backslash is removed from the line and the line continues with the next line of the file.

The # character starts a comment that reaches until the end of the line. To get an actual # character, such as in a URL, write \# instead.

The evaluation of variables either happens immediately or lazy. It happens immediately when the variable occurs on the right-hand side of the := or the != operator, in a .if condition or a .for loop. In the other cases, it is evaluated lazily.

Some of the modifiers split the string into words and then operate on the words, others operate on the string as a whole. When a string is split into words, double quotes and single quotes are interpreted as delimiters, just like in sh(1).

15.2.1. Naming conventions

  • All variable names starting with an underscore are reserved for use by the pkgsrc infrastructure. They shall not be used by packages.

  • In .for loops you should use lowercase variable names for the iteration variables.

  • All list variables should have a plural name, such as PKG_OPTIONS or DISTFILES.

15.3. Code snippets

15.3.1. Adding things to a list

When adding a string that possibly contains whitespace or quotes to a list (example 1), it must be quoted using the :Q modifier.

When adding another list to a list (example 2), it must not be quoted, since its elements are already quoted.

STRING=         foo * bar `date`
LIST=           # empty
ANOTHER_LIST=   a=b c=d

LIST+=          ${STRING:Q}       # 1
LIST+=          ${ANOTHER_LIST}   # 2

15.3.2. Echoing a string exactly as-is

Echoing a string containing special characters needs special work.

STRING=         foo bar <    > * `date` $$HOME ' "
EXAMPLE_ENV=    string=${STRING:Q} x=multiple\ quoted\ words

all:
        echo ${STRING}                  # 1
        echo ${STRING:Q}                # 2
        printf '%s\n' ${STRING:Q}''     # 3
        env ${EXAMPLE_ENV} sh -c 'echo "$$string"; echo "$$x"'   # 4

Example 1 leads to a syntax error in the shell, as the characters are just copied.

Example 2 quotes the string so that the shell interprets it correctly. But the echo command may additionally interpret strings with a leading dash or those containing backslashes.

Example 3 can handle arbitrary strings, since printf(1) only interprets the format string, but not the next argument. The trailing single quotes handle the case when the string is empty. In that case, the :Q modifier would result in an empty string too, which would then be skipped by the shell. For printf(1) this doesn't make a difference, but other programs may care.

In example 4, the EXAMPLE_ENV does not need to be quoted because the quoting has already been done when adding elements to the list.

15.3.3. Passing CFLAGS to GNU configure scripts

When passing CFLAGS or similar variables to a GNU-style configure script (especially those that call other configure scripts), it must not have leading or trailing whitespace, since otherwise the configure script gets confused. To trim leading and trailing whitespace, use the :M modifier, as in the following example:

CPPFLAGS=               # empty
CPPFLAGS+=              -Wundef -DPREFIX=\"${PREFIX}\"
CPPFLAGS+=              ${MY_CPPFLAGS}

CONFIGURE_ARGS+=        CPPFLAGS=${CPPFLAGS:M*:Q}

all:
        echo x${CPPFLAGS:Q}x            # leading and trailing whitespace
        echo x${CONFIGURE_ARGS:Q}x      # properly trimmed

In this example, CPPFLAGS has both leading and trailing whitespace because the += operator always adds a space.

15.3.4. Handling possibly empty variables

When a possibly empty variable is used in a shell program, it may lead to a syntax error.

EGFILES=        # empty

install-examples:   # produces a syntax error in the shell
        for egfile in ${EGFILES}; do            \
                echo "Installing $$egfile";     \
        done

The shell only sees the text for egfile in ; do, since ${EGFILES} is replaced with an empty string by make(1). To fix this syntax error, use one of the snippets below.

EGFILES=        # empty

install-examples:
        for egfile in ${EGFILES} ""; do         \
                [ -n "$$egfile" ] || continue;  \
                echo "Installing $$egfile";     \
        done

In this case, an empty string is appended to the iteration list (to prevent the syntax error) and filtered out later.

EGFILES=        # empty

install-examples:
.for egfile in ${EGFILES}
        echo "Installing ${egfile}"
.endfor

If one of the filenames contains special characters, it should be enclosed in single or double quotes.

To have a shell command test whether a make variable is empty, use the following code: ${TEST} -z ${POSSIBLY_EMPTY:Q}"".

15.3.5. Testing yes/no variables in conditions

When a variable can have the values yes or no, use the following pattern to test the variable:

.if ${VAR:U:tl} == "yes"
# do something
.endif

The :U modifier is only necessary if the variable can be undefined. If the variable is guaranteed to be defined, the :U can be omitted.

The :tl modifier converts the variable value to lowercase, allowing for the values yes, Yes, YES.

Chapter 16. Options handling

Many packages have the ability to be built to support different sets of features. bsd.options.mk is a framework in pkgsrc that provides generic handling of those options that determine different ways in which the packages can be built. It's possible for the user to specify exactly which sets of options will be built into a package or to allow a set of global default options apply.

There are two broad classes of behaviors that one might want to control via options. One is whether some particular feature is enabled in a program that will be built anyway, often by including or not including a dependency on some other package. The other is whether or not an additional program will be built as part of the package. Generally, it is better to make a split package for such additional programs instead of using options, because it enables binary packages to be built which can then be added separately. For example, the foo package might have minimal dependencies (those packages without which foo doesn't make sense), and then the foo-gfoo package might include the GTK frontend program gfoo. This is better than including a gtk option to foo that adds gfoo, because either that option is default, in which case binary users can't get foo without gfoo, or not default, in which case they can't get gfoo. With split packages, they can install foo without having GTK, and later decide to install gfoo (pulling in GTK at that time). This is an advantage to source users too, avoiding the need for rebuilds.

Plugins with widely varying dependencies should usually be split instead of options.

It is often more work to maintain split packages, especially if the upstream package does not support this. The decision of split vs. option should be made based on the likelihood that users will want or object to the various pieces, the size of the dependencies that are included, and the amount of work.

A further consideration is licensing. Non-free parts, or parts that depend on non-free dependencies (especially plugins) should almost always be split if feasible.

16.1. Global default options

Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of the options that should be built into every package if that option is supported. This variable should be set in mk.conf.

16.2. Converting packages to use bsd.options.mk

The following example shows how bsd.options.mk should be used by the hypothetical ``wibble'' package, either in the package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

PKG_OPTIONS_VAR=                PKG_OPTIONS.wibble
PKG_SUPPORTED_OPTIONS=          wibble-foo ldap
PKG_OPTIONS_OPTIONAL_GROUPS=    database
PKG_OPTIONS_GROUP.database=     mysql pgsql
PKG_SUGGESTED_OPTIONS=          wibble-foo
PKG_OPTIONS_LEGACY_VARS+=       WIBBLE_USE_OPENLDAP:ldap
PKG_OPTIONS_LEGACY_OPTS+=       foo:wibble-foo

.include "../../mk/bsd.prefs.mk"

# this package was previously named wibble2
.if defined(PKG_OPTIONS.wibble2)
PKG_LEGACY_OPTIONS+=            ${PKG_OPTIONS.wibble2}
PKG_OPTIONS_DEPRECATED_WARNINGS+= \
        "Deprecated variable PKG_OPTIONS.wibble2 used, use ${PKG_OPTIONS_VAR} instead."
.endif

.include "../../mk/bsd.options.mk"

# Package-specific option-handling

###
### FOO support
###
.if !empty(PKG_OPTIONS:Mwibble-foo)
CONFIGURE_ARGS+=    --enable-foo
.endif

###
### LDAP support
###
.if !empty(PKG_OPTIONS:Mldap)
.  include "../../databases/openldap-client/buildlink3.mk"
CONFIGURE_ARGS+=    --enable-ldap=${BUILDLINK_PREFIX.openldap-client}
.endif

###
### database support
###
.if !empty(PKG_OPTIONS:Mmysql)
.  include "../../mk/mysql.buildlink3.mk"
.endif
.if !empty(PKG_OPTIONS:Mpgsql)
.  include "../../mk/pgsql.buildlink3.mk"
.endif

The first section contains the information about which build options are supported by the package, and any default options settings if needed.

  1. PKG_OPTIONS_VAR is the name of the make(1) variable that the user can set to override the default options. It should be set to PKG_OPTIONS.pkgbase. Do not set it to PKG_OPTIONS.${PKGBASE}, since PKGBASE is not defined at the point where the options are processed.

  2. PKG_SUPPORTED_OPTIONS is a list of build options supported by the package.

  3. PKG_OPTIONS_OPTIONAL_GROUPS is a list of names of groups of mutually exclusive options. The options in each group are listed in PKG_OPTIONS_GROUP.groupname. The most specific setting of any option from the group takes precedence over all other options in the group. Options from the groups will be automatically added to PKG_SUPPORTED_OPTIONS.

  4. PKG_OPTIONS_REQUIRED_GROUPS is like PKG_OPTIONS_OPTIONAL_GROUPS, but building the packages will fail if no option from the group is selected.

  5. PKG_OPTIONS_NONEMPTY_SETS is a list of names of sets of options. At least one option from each set must be selected. The options in each set are listed in PKG_OPTIONS_SET.setname. Options from the sets will be automatically added to PKG_SUPPORTED_OPTIONS. Building the package will fail if no option from the set is selected.

  6. PKG_SUGGESTED_OPTIONS is a list of build options which are enabled by default.

  7. PKG_OPTIONS_LEGACY_VARS is a list of USE_VARIABLE:option pairs that map legacy mk.conf variables to their option counterparts. Pairs should be added with += to keep the listing of global legacy variables. A warning will be issued if the user uses a legacy variable.

  8. PKG_OPTIONS_LEGACY_OPTS is a list of old-option:new-option pairs that map options that have been renamed to their new counterparts. Pairs should be added with += to keep the listing of global legacy options. A warning will be issued if the user uses a legacy option.

  9. PKG_LEGACY_OPTIONS is a list of options implied by deprecated variables used. This can be used for cases that neither PKG_OPTIONS_LEGACY_VARS nor PKG_OPTIONS_LEGACY_OPTS can handle, e. g. when PKG_OPTIONS_VAR is renamed.

  10. PKG_OPTIONS_DEPRECATED_WARNINGS is a list of warnings about deprecated variables or options used, and what to use instead.

A package should never modify PKG_DEFAULT_OPTIONS or the variable named in PKG_OPTIONS_VAR. These are strictly user-settable. To suggest a default set of options, use PKG_SUGGESTED_OPTIONS.

PKG_OPTIONS_VAR must be defined before including bsd.options.mk. If none of PKG_SUPPORTED_OPTIONS, PKG_OPTIONS_OPTIONAL_GROUPS, and PKG_OPTIONS_REQUIRED_GROUPS are defined (as can happen with platform-specific options if none of them is supported on the current platform), PKG_OPTIONS is set to the empty list and the package is otherwise treated as not using the options framework.

After the inclusion of bsd.options.mk, the variable PKG_OPTIONS contains the list of selected build options, properly filtered to remove unsupported and duplicate options.

The remaining sections contain the logic that is specific to each option. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS:

.if !empty(PKG_OPTIONS:Moption)

16.3. Option Names

Options that enable similar features in different packages (like optional support for a library) should use a common name in all packages that support it (like the name of the library). If another package already has an option with the same meaning, use the same name.

Options that enable features specific to one package, where it's unlikely that another (unrelated) package has the same (or a similar) optional feature, should use a name prefixed with pkgname-.

If a group of related packages share an optional feature specific to that group, prefix it with the name of the main package (e. g. djbware-errno-hack).

For new options, add a line to mk/defaults/options.description. Lines have two fields, separated by tab. The first field is the option name, the second its description. The description should be a whole sentence (starting with an uppercase letter and ending with a period) that describes what enabling the option does. E. g. Enable ispell support. The file is sorted by option names.

16.4. Determining the options of dependencies

When writing buildlink3.mk files, it is often necessary to list different dependencies based on the options with which the package was built. For querying these options, the file pkgsrc/mk/pkg-build-options.mk should be used. A typical example looks like this:

pkgbase := libpurple
.include "../../mk/pkg-build-options.mk"

.if !empty(PKG_BUILD_OPTIONS.libpurple:Mdbus)
...
.endif

Including pkg-build-options.mk here will set the variable PKG_BUILD_OPTIONS.libpurple to the build options of the libpurple package, which can then be queried like PKG_OPTIONS in the options.mk file. See the file pkg-build-options.mk for more details.

Chapter 17. Tools needed for building or running

The USE_TOOLS definition is used both internally by pkgsrc and also for individual packages to define what commands are needed for building a package (like TOOL_DEPENDS) or for later run-time of an installed packaged (such as DEPENDS). If the native system provides an adequate tool, then in many cases, a pkgsrc package will not be used.

When building a package, the replacement tools are made available in a directory (as symlinks or wrapper scripts) that is early in the executable search path. Just like the buildlink system, this helps with consistent builds.

A tool may be needed to help build a specific package. For example, perl, GNU make (gmake) or yacc may be needed.

Also a tool may be needed, for example, because the native system's supplied tool may be inefficient for building a package with pkgsrc. For example, a package may need GNU awk, bison (instead of yacc) or a better sed.

The tools used by a package can be listed by running make show-tools.

17.1. Tools for pkgsrc builds

The default set of tools used by pkgsrc is defined in bsd.pkg.mk. This includes standard Unix tools, such as: cat, awk, chmod, test, and so on. These can be seen by running: make show-var VARNAME=USE_TOOLS.

If a package needs a specific program to build then the USE_TOOLS variable can be used to define the tools needed.

17.2. Tools needed by packages

In the following examples, the :run means that it is needed at run-time (and becomes a DEPENDS). The default is a build dependency which can be set with :build. (So in this example, it is the same as gmake:build and pkg-config:build.)

USE_TOOLS+=     gmake perl:run pkg-config

When using the tools framework, a TOOLS_PATH.foo variable is defined which contains the full path to the appropriate tool. For example, TOOLS_PATH.bash could be /bin/bash on Linux systems.

If you always need a pkgsrc version of the tool at run-time, then just use DEPENDS instead.

17.3. Tools provided by platforms

When improving or porting pkgsrc to a new platform, have a look at (or create) the corresponding platform specific make file fragment under pkgsrc/mk/tools/tools.${OPSYS}.mk which defines the name of the common tools. For example:

.if exists(/usr/bin/bzcat)
TOOLS_PLATFORM.bzcat?=          /usr/bin/bzcat
.elif exists(/usr/bin/bzip2)
TOOLS_PLATFORM.bzcat?=          /usr/bin/bzip2 -cd
.endif

TOOLS_PLATFORM.true?=           true                    # shell builtin

Chapter 18. Buildlink methodology

Buildlink is a framework in pkgsrc that controls what headers and libraries are seen by a package's configure and build processes. This is implemented in a two step process:

  1. Symlink headers and libraries for dependencies into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

  2. Create wrapper scripts that are used in place of the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

This normalizes the environment in which a package is built so that the package may be built consistently despite what other software may be installed. Please note that the normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- buildlink3 is designed to insulate the package build from non-system-supplied software.

18.1. Converting packages to use buildlink3

The process of converting packages to use the buildlink3 framework (bl3ifying) is fairly straightforward. The things to keep in mind are:

  1. Ensure that the build always calls the wrapper scripts instead of the actual toolchain. Some packages are tricky, and the only way to know for sure is the check ${WRKDIR}/.work.log to see if the wrappers are being invoked.

  2. Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files relative to pkg_info -qp pkgname.

  3. Remember that only the buildlink3.mk files that you list in a package's Makefile are added as dependencies for that package.

If a dependency on a particular package is required for its libraries and headers, then we replace:

DEPENDS+=       foo>=1.1.0:../../category/foo

with

.include "../../category/foo/buildlink3.mk"

The buildlink3.mk files usually define the required dependencies. If you need a newer version of the dependency when using buildlink3.mk files, then you can define it in your Makefile; for example:

BUILDLINK_API_DEPENDS.foo+=   foo>=1.1.0
.include "../../category/foo/buildlink3.mk"

There are several buildlink3.mk files in pkgsrc/mk that handle special package issues:

  • bdb.buildlink3.mk chooses either the native or a pkgsrc Berkeley DB implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

  • curses.buildlink3.mk: If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

  • krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between adding a dependency on Heimdal or MIT-krb5 for packages that require a Kerberos 5 implementation.

  • motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/motif. The user can set MOTIF_TYPE to dt, lesstif or motif to choose which Motif version will be used.

  • readline.buildlink3.mk checks for a system-provided GNU readline or editline (libedit) installation, or adds a dependency on devel/readline, devel/editline. The user can set READLINE_DEFAULT to choose readline implementation. If your package really needs GNU readline library, its Makefile should include devel/readline/buildlink3.mk instead of readline.buildlink3.mk.

  • oss.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API.

  • pgsql.buildlink3.mk will accept any of the Postgres versions in the variable PGSQL_VERSIONS_ACCEPTED and default to the version PGSQL_VERSION_DEFAULT. See the file for more information.

  • pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed.

  • xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

The comments in those buildlink3.mk files provide a more complete description of how to use them properly.

18.2. Writing buildlink3.mk files

A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

To generate an initial buildlink3.mk file for further editing, Rene Hexel's pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

% cd pkgsrc/category/pkgdir
% createbuildlink >buildlink3.mk
    

18.2.1. Anatomy of a buildlink3.mk file

The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

BUILDLINK_TREE+=        tiff

.if !defined(TIFF_BUILDLINK3_MK)
TIFF_BUILDLINK3_MK:=

BUILDLINK_API_DEPENDS.tiff+=    tiff>=3.6.1
BUILDLINK_ABI_DEPENDS.tiff+=    tiff>=3.7.2nb1
BUILDLINK_PKGSRCDIR.tiff?=      ../../graphics/tiff

.include "../../devel/zlib/buildlink3.mk"
.include "../../graphics/jpeg/buildlink3.mk"
.endif # TIFF_BUILDLINK3_MK

BUILDLINK_TREE+=        -tiff

The header and footer manipulate BUILDLINK_TREE, which is common across all buildlink3.mk files and is used to track the dependency tree.

The main section is protected from multiple inclusion and controls how the dependency on pkg is added. Several important variables are set in the section:

  • BUILDLINK_API_DEPENDS.pkg is the dependency version recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the last version of the package that had an backwards-incompatible API change.

  • BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc directory.

  • BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to build. By default, the full dependency is used.

  • BUILDLINK_INCDIRS.pkg and BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These default to include and lib respectively.

  • BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The -I option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

The following variables are all optionally defined within this second section (protected against multiple inclusion) and control which package files are symlinked into ${BUILDLINK_DIR} and how their names are transformed during the symlinking:

  • BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

  • BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The resulting files are to be symlinked into ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

  • BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS.

  • BUILDLINK_FNAME_TRANSFORM.pkg (not shown above) is a list of sed arguments used to transform the name of the source filename into a destination filename, e.g. -e "s|/curses.h|/ncurses.h|g".

This section can additionally include any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included. Dependencies are only added for directly include buildlink3.mk files.

When providing a buildlink3.mk and including other buildlink3.mk files in it, please only add necessary ones, i.e., those whose libraries or header files are automatically exposed when the package is use.

In particular, if only an executable (bin/foo) is linked against a library, that library does not need to be propagated in the buildlink3.mk file.

The following steps should help you decide if a buildlink3.mk file needs to be included:

  • Look at the installed header files: What headers do they include? The packages providing these files must be buildlinked.

  • Run ldd on all installed libraries and look against what other libraries they link. Some of the packages providing these probably need to be buildlinked; however, it's not automatic, since e.g. GTK on some systems pulls in the X libraries, so they will show up in the ldd output, while on others (like OS X) it won't. ldd output can thus only be used as a hint.

18.2.2. Updating BUILDLINK_API_DEPENDS.pkg and BUILDLINK_ABI_DEPENDS.pkg in buildlink3.mk files

Both variables set lower bounds for a version of this package. The two variables differ in that one describes source compatibility (API) and the other binary compatibility (ABI). The difference is that a change in the API breaks compilation of programs while changes in the ABI stop compiled programs from running.

The BUILDLINK_API_DEPENDS.pkg variable in a buildlink3.mk should be changed very rarely. (One possible scenario: If all packages using this package need a higher version than defined in the buildlink3.mk, BUILDLINK_API_DEPENDS.pkg could be updated to that higher version.)

On the other hand, changes to BUILDLINK_ABI_DEPENDS.pkg are more common. The variable will need to be updated every time the major version of one of its shared libraries is changed, or any other change where a binary built against the previous version of the package will not run against the new version any longer.

In such a case, the package's BUILDLINK_ABI_DEPENDS.pkg must be increased to require the new package version. Then the PKGREVISION of all packages foo that depend on this package need to be increased, and if they have buildlink3.mk files, BUILDLINK_ABI_DEPENDS.foo in their buildlink3.mk files must be increased to the new version as well. This is required so that a package will pull in the versions of the packages that use the new ABI and that the packages' PKGREVISIONs uniquely identify the packages built against the new ABI. The pkgtools/revbump package can help with these updates.

See Section 21.1.5, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_API_DEPENDS definitions.

Please take careful consideration before adjusting BUILDLINK_API_DEPENDS.pkg or BUILDLINK_ABI_DEPENDS.pkg in a buildlink3.mk file as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

Also, it is not needed to set BUILDLINK_ABI_DEPENDS.pkg when it is identical to BUILDLINK_API_DEPENDS.pkg.

Note there is also the distinction that users are able to disable enforcement of ABI dependencies using the USE_ABI_DEPENDS variable, but there is no equivalent option for API dependencies.

18.3. Writing builtin.mk files

Some packages in pkgsrc install headers and libraries that coincide with headers and libraries present in the base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

The only requirements of a builtin.mk file for pkg are:

  1. It should set USE_BUILTIN.pkg to either yes or no after it is included.

  2. It should not override any USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

  3. It should be written to allow multiple inclusion. This is very important and takes careful attention to Makefile coding.

18.3.1. Anatomy of a builtin.mk file

The following is the recommended template for builtin.mk files:

.if !defined(IS_BUILTIN.foo)
#
# IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo"
# genuinely exists in the system or not.
#
IS_BUILTIN.foo?=        no

# BUILTIN_PKG.foo should be set here if "foo" is built-in and its package
# version can be determined.
#
.  if !empty(IS_BUILTIN.foo:M[yY][eE][sS])
BUILTIN_PKG.foo?=       foo-1.0
.  endif
.endif  # IS_BUILTIN.foo

.if !defined(USE_BUILTIN.foo)
USE_BUILTIN.foo?=       ${IS_BUILTIN.foo}
.  if defined(BUILTIN_PKG.foo)
.    for _depend_ in ${BUILDLINK_API_DEPENDS.foo}
.      if !empty(USE_BUILTIN.foo:M[yY][eE][sS])
USE_BUILTIN.foo!=                                                       \
        ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo}            \
        && ${ECHO} "yes" || ${ECHO} "no"
.      endif
.    endfor
.  endif
.endif  # USE_BUILTIN.foo

CHECK_BUILTIN.foo?=     no
.if !empty(CHECK_BUILTIN.foo:M[nN][oO])
#
# Here we place code that depends on whether USE_BUILTIN.foo is set to
# "yes" or "no".
#
.endif  # CHECK_BUILTIN.foo

The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be yes if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is yes). This variable is only used internally within the builtin.mk file.

The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_API_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_API_DEPENDS.pkg. USE_BUILTIN.pkg must be set to the correct value by the end of the builtin.mk file. Note that USE_BUILTIN.pkg may be yes even if IS_BUILTIN.pkg is no because we may make the determination that the built-in version of the software is similar enough to be used as a replacement.

The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding additional dependency restrictions and listing additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

Chapter 19. PLIST issues

The PLIST file contains a package's packing list, i.e. a list of files that belong to the package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the pkg_create(1) man page for a full list. This chapter addresses some issues that need attention when dealing with the PLIST file (or files, see below!).

19.1. RCS ID

Be sure to add a RCS ID line as the first thing in any PLIST file you write:

@@comment $NetBSD $

An artificial space has been added between NetBSD and $, this is a workaround here to prevent CVS expanding to the filename of the guide. When adding the RCS ID the space should be omitted.

19.2. Semi-automatic PLIST generation

You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See Section 13.17, “Other helpful targets” for more information on this target.

19.3. Tweaking output of make print-PLIST

The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with quoting.

For example, to get all files inside the libdata/foo directory removed from the resulting PLIST:

PRINT_PLIST_AWK+=       /^libdata\/foo/ { next; }

The PRINT_PLIST_AWK transformations are evaluated after the file list and directory list are sorted. EARLY_PRINT_PLIST_AWK is like PRINT_PLIST_AWK except it operates before the file list and directory list are sorted.

19.4. Variable substitution in PLIST

A number of variables are substituted automatically in PLISTs when a package is installed on a system. This includes the following variables:

${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}

Some packages like emacs and perl embed information about which architecture they were built on into the pathnames where they install their files. To handle this case, PLIST will be preprocessed before actually used, and the symbol ${MACHINE_ARCH} will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf-created configure scripts.

Legacy note

There used to be a symbol $ARCH that was replaced by the output of uname -m, but that's no longer supported and has been removed.

${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}

Some packages want to embed the OS name and version into some paths. To do this, use these variables in the PLIST:

  • ${OPSYS} - output of uname -s

  • ${LOWER_OPSYS} - lowercase common name (eg. solaris)

  • ${OS_VERSION} - uname -r

For a list of values which are replaced by default, the output of make help topic=PLIST_SUBST as well as searching the pkgsrc/mk directory with grep for PLIST_SUBST should help.

If you want to change other variables not listed above, you can add variables and their expansions to this variable in the following way, similar to MESSAGE_SUBST (see Section 12.5, “Optional files”):

PLIST_SUBST+=   SOMEVAR="somevalue"

This replaces all occurrences of ${SOMEVAR} in the PLIST with somevalue.

The PLIST_VARS variable can be used to simplify the common case of conditionally including some PLIST entries. It can be done by adding PLIST_VARS+=foo and setting the corresponding PLIST.foo variable to yes if the entry should be included. This will substitute ${PLIST.foo} in the PLIST with either "" or "@@comment ". For example, in Makefile:

PLIST_VARS+=    foo
.if condition
PLIST.foo=      yes
.else

And then in PLIST:

@@comment $NetBSD $
bin/bar
man/man1/bar.1
${PLIST.foo}bin/foo
${PLIST.foo}man/man1/foo.1
${PLIST.foo}share/bar/foo.data

An artificial space has been added between NetBSD and $, this is a workaround here to prevent CVS expanding to the filename of the guide. When adding the RCS ID the space should be omitted.

19.5. Man page compression

Man pages should be installed in compressed form if MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix .gz is appended/removed automatically for man pages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

19.6. Changing PLIST source with PLIST_SRC

To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). The files are later concatenated using cat(1), and the order of things is important. The default for PLIST_SRC is ${PKGDIR}/PLIST.

19.7. Platform-specific and differing PLISTs

Some packages decide to install a different set of files based on the operating system being used. These differences can be automatically handled by using the following files:

  • PLIST.common

  • PLIST.${OPSYS}

  • PLIST.${MACHINE_ARCH}

  • PLIST.${OPSYS}-${MACHINE_ARCH}

  • PLIST.common_end

19.8. Build-specific PLISTs

Some packages decide to generate hard-to-guess file names during installation that are hard to wire down.

In such cases, you can set the GENERATE_PLIST variable to shell code terminated (with a semicolon) that will output PLIST entries which will be appended to the PLIST

You can find one example in editors/xemacs:

GENERATE_PLIST+=        ${ECHO} bin/${DISTNAME}-`${WRKSRC}/src/xemacs -sd`.dmp ;

which will append something like bin/xemacs-21.4.23-54e8ea71.dmp to the PLIST.

19.9. Sharing directories between packages

A shared directory is a directory where multiple (and unrelated) packages install files. These directories were problematic because you had to add special tricks in the PLIST to conditionally remove them, or have some centralized package handle them.

In pkgsrc, it is now easy: Each package should create directories and install files as needed; pkg_delete will remove any directories left empty after uninstalling a package.

If a package needs an empty directory to work, create the directory during installation as usual, and also add an entry to the PLIST:

@@pkgdir path/to/empty/directory

or take a look at MAKE_DIRS and OWN_DIRS.

Chapter 20. The pkginstall framework

This chapter describes the framework known as pkginstall, whose key features are:

  • Generic installation and manipulation of directories and files outside the pkgsrc-handled tree, LOCALBASE.

  • Automatic handling of configuration files during installation, provided that packages are correctly designed.

  • Generation and installation of system startup scripts.

  • Registration of system users and groups.

  • Registration of system shells.

  • Automatic updating of fonts databases.

The following sections inspect each of the above points in detail.

You may be thinking that many of the things described here could be easily done with simple code in the package's post-installation target (post-install). This is incorrect, as the code in them is only executed when building from source. Machines using binary packages could not benefit from it at all (as the code itself could be unavailable). Therefore, the only way to achieve any of the items described above is by means of the installation scripts, which are automatically generated by pkginstall.

20.1. Files and directories outside the installation prefix

As you already know, the PLIST file holds a list of files and directories that belong to a package. The names used in it are relative to the installation prefix (${PREFIX}), which means that it cannot register files outside this directory (absolute path names are not allowed). Despite this restriction, some packages need to install files outside this location; e.g., under ${VARBASE} or ${PKG_SYSCONFDIR}. The only way to achieve this is to create such files during installation time by using installation scripts.

The generic installation scripts are shell scripts that can contain arbitrary code. The list of scripts to execute is taken from the INSTALL_FILE variable, which defaults to INSTALL. A similar variable exists for package removal (DEINSTALL_FILE, whose default is DEINSTALL). These scripts can run arbitrary commands, so they have the potential to create and manage files anywhere in the file system.

Using these general installation files is not recommended, but may be needed in some special cases. One reason for avoiding them is that the user has to trust the packager that there is no unwanted or simply erroneous code included in the installation script. Also, previously there were many similar scripts for the same functionality, and fixing a common error involved finding and changing all of them.

The pkginstall framework offers another, standardized way. It provides generic scripts to abstract the manipulation of such files and directories based on variables set in the package's Makefile. The rest of this section describes these variables.

20.1.1. Directory manipulation

The following variables can be set to request the creation of directories anywhere in the file system:

  • MAKE_DIRS and OWN_DIRS contain a list of directories that should be created and should attempt to be destroyed by the installation scripts. The difference between the two is that the latter prompts the administrator to remove any directories that may be left after deinstallation (because they were not empty), while the former does not. Example:

    MAKE_DIRS+=             ${VARBASE}/foo/private
    
  • MAKE_DIRS_PERMS and OWN_DIRS_PERMS contain a list of tuples describing which directories should be created and should attempt to be destroyed by the installation scripts. Each tuple holds the following values, separated by spaces: the directory name, its owner, its group and its numerical mode. For example:

    MAKE_DIRS_PERMS+=       ${VARBASE}/foo/private \
                            ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
    

    The difference between the two is exactly the same as their non-PERMS counterparts.

20.1.2. File manipulation

Creating non-empty files outside the installation prefix is tricky because the PLIST forces all files to be inside it. To overcome this problem, the only solution is to extract the file in a known place (i.e., inside the installation prefix) and copy it to the appropriate location during installation (done by the installation scripts generated by pkginstall). We will call the former the reference file in the following paragraphs, which describe the variables that can be used to automatically and consistently handle files outside the installation prefix:

  • REQD_FILES is a list of pairs of reference and target files. At installation time, the reference file is copied to the target if and only if the latter does not exist. Upon deinstallation, the reference file is removed provided that it was not modified by the installation.

  • REQD_FILES_PERMS contains tuples describing reference files and targets, including owner, group, and numeric permissions that should be set. For example:

    REQD_FILES_PERMS+=      ${PREFIX}/share/somefile ${VARBASE}/somefile \
                            ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
    
  • CONF_FILES and CONF_FILES_PERMS have the same syntax as REQD_FILES and REQD_FILES_PERMS respectively. The difference is that these variables are specifically intended for handling configuration files, for which additional conventions and constraints apply. See Section 20.2, “Configuration files” for further discussion. Note in particular that while handling of configuration files can be disabled by the user (see Section 20.2.5, “Disabling handling of configuration files”), this setting does not affect REQD_FILES and REQD_FILES_PERMS.

To install an empty file, one can use these macros and /dev/null as the reference file.

20.2. Configuration files

There are two principles that govern the handling of configuration files in pkgsrc: first, the user's configuration must not be lost or overwritten by upgrades or reinstallations; and second, the default configuration should always be available for reference. To that end, pkgsrc has a framework specifically for handling configuration files. In general, configuration files are installed into ${PREFIX}/share/examples, and copied from there to the pertinent etc directory as a separate step and only as needed.

To make this work, there are three things that need to happen, any of which may require patching. First, the package must be told to read its configuration from the correct place at runtime; this place is ${PKG_SYSCONFDIR} (or possibly a subdirectory of it) which is often but not always ${PREFIX}/etc. Second, the package must be taught to install its default configuration files in ${PREFIX}/share/examples/${PKGBASE}; this is the point at which patching often becomes required because it is not the same place as the runtime location. Third, the configuration files need to be declared in the package makefile; this is the easy part.

With those elements in place, the right things will happen: the package install phase and resulting binary package will not touch ${PKG_SYSCONFDIR}, and the default configuration will be copied into place by the pkgsrc framework only if not already present. Similarly, upon deinstall the configuration will not be removed if it has been modified. (This means that in the case of reinstallation and upgrades, unmodified configuration files are updated but modifications are never discarded.)

The following sections describe how to make these things happen and document other relevant knobs available in the pkgsrc infrastructure.

20.2.1. How PKG_SYSCONFDIR is set

As said before, the PKG_SYSCONFDIR variable specifies where configuration files shall be installed. Its contents are set based upon the following variables:

  • PKG_SYSCONFBASE: The configuration's root directory. Defaults to ${PREFIX}/etc although it may be overridden by the user to point to their preferred location (e.g., /etc, /etc/pkg, etc.). Packages must not use it directly.

  • PKG_SYSCONFSUBDIR: A subdirectory of PKG_SYSCONFBASE under which the configuration files for the package being built shall be installed. The definition of this variable only makes sense in the package's Makefile (i.e., it is not user-customizable).

    As an example, consider the Apache package, www/apache24, which places its configuration files under the httpd/ subdirectory of PKG_SYSCONFBASE. This should be set in the package Makefile.

  • PKG_SYSCONFVAR: Specifies the name of the variable that holds this package's configuration directory (if different from PKG_SYSCONFBASE). It defaults to PKGBASE's value, and is always prefixed with PKG_SYSCONFDIR.

  • PKG_SYSCONFDIR.${PKG_SYSCONFVAR}: Holds the directory where the configuration files for the package identified by PKG_SYSCONFVAR's shall be placed.

Based on the above variables, pkginstall determines the value of PKG_SYSCONFDIR, which is the only variable that may be used within a package to refer to its configuration directory. The algorithm used to set its value is basically the following:

  1. If PKG_SYSCONFDIR.${PKG_SYSCONFVAR} is set, its value is used.

  2. If the previous variable is not defined but PKG_SYSCONFSUBDIR is set in the package's Makefile, the resulting value is ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}.

  3. Otherwise, it is set to ${PKG_SYSCONFBASE}.

It is worth mentioning that ${PKG_SYSCONFDIR} is automatically added to OWN_DIRS. This causes it to be automatically created if needed. See Section 20.1.1, “Directory manipulation” for further details. This does not apply to subdirectories of ${PKG_SYSCONFDIR}; they must be manually created with OWN_DIRS or MAKE_DIRS.

20.2.2. Telling the software where configuration files are

Given that pkgsrc (and users!) expect configuration files to be in a known place, you need to teach each package where to install its files. In some cases you will have to patch the package Makefiles to achieve it. If you are lucky, though, it may be as easy as passing an extra flag to the configuration script. This is the case for packages using GNU autoconf:

CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}

Note that this specifies where the package has to look for its configuration files, not where they will be installed. Fortunately, there is a different way to specify the latter, as seen in the next section, although the combination is rather confusing at first glance.

20.2.3. Patching installation

As discussed above, packages themselves must not touch the contents of ${PKG_SYSCONFDIR} directly. Bad news is that many software installation scripts will, out of the box, mess with the contents of that directory. So what is the correct procedure to fix this issue?

You must teach the package (usually by manually patching it) to install any configuration files under the examples hierarchy, share/examples/${PKGBASE}/. This way, the PLIST registers them and the administrator always has the original copies available.

It turns out that for packages using GNU autoconf it is possible to create the desired effect by setting sysconfdir on the make command line at install time. Consider this example taken from mail/mutt:

EGDIR=                  ${PREFIX}/share/examples/mutt
INSTALL_MAKE_FLAGS=     ${MAKE_FLAGS} sysconfdir=${EGDIR}

Note that the EGDIR variable, though commonly used for this purpose, is local to that package and has no meaning outside it.

20.2.4. Declaring configuration files

Once the required configuration files are in place (i.e., under the examples hierarchy), the pkginstall framework can use them as reference copies during the package installation to update what is in ${PKG_SYSCONFDIR}. To achieve this, the variables CONF_FILES and CONF_FILES_PERMS are used. Check out Section 20.1.2, “File manipulation” for further information about their syntax and their purpose. Here is an example, taken from the mail/mutt package:

EGDIR=                  ${PREFIX}/share/examples/mutt
CONF_FILES=             ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc

Note that (as in the previous section's example) the EGDIR variable is specific to the package and has no meaning outside it.

For reference, the complete example from Mutt is as follows:

CONFIGURE_ARGS+=        --sysconfdir=${PKG_SYSCONFDIR}
EGDIR=                  ${PREFIX}/share/examples/mutt
CONF_FILES=             ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc
INSTALLATION_DIRS+=     ${EGDIR}
INSTALL_MAKE_FLAGS=     ${MAKE_FLAGS} sysconfdir=${EGDIR}

20.2.5. Disabling handling of configuration files

The automatic copying of config files can be toggled by setting the environment variable PKG_CONFIG prior to package installation.

20.3. System startup scripts

System startup scripts are special files because they must be installed in a place known by the underlying OS, usually outside the installation prefix. Therefore, the same rules described in Section 20.1, “Files and directories outside the installation prefix” apply, and the same solutions can be used. However, pkginstall provides a special mechanism to handle these files.

In order to provide system startup scripts, the package has to:

  1. Store the script inside ${FILESDIR}, with the .sh suffix appended. Considering the print/cups-base package as an example, it has a cupsd.sh in its files directory.

  2. Tell pkginstall to handle it, appending the name of the script, without its extension, to the RCD_SCRIPTS variable. Continuing the previous example:

    RCD_SCRIPTS+=   cupsd
    

Once this is done, pkginstall will do the following steps for each script in an automated fashion:

  1. Process the file found in the files directory applying all the substitutions described in the FILES_SUBST variable.

  2. Copy the script from the files directory to the examples hierarchy, ${PREFIX}/share/examples/rc.d/. Note that this reference file must be explicitly registered in the PLIST.

  3. Add code to the installation scripts to copy the startup script from the examples hierarchy into the system-wide startup scripts directory.

20.3.1. Disabling handling of system startup scripts

The automatic copying of config files can be toggled by setting the environment variable PKG_RCD_SCRIPTS prior to package installation. Note that the scripts will be always copied inside the examples hierarchy, ${PREFIX}/share/examples/rc.d/, no matter what the value of this variable is.

20.4. System users and groups

If a package needs to create special users and/or groups during installation, it can do so by using the pkginstall framework.

Users can be created by adding entries to the PKG_USERS variable. Each entry has the following syntax:

user:group

Further specification of user details may be done by setting per-user variables. PKG_UID.user is the numeric UID for the user. PKG_GECOS.user is the user's description or comment. PKG_HOME.user is the user's home directory, and defaults to /nonexistent if not specified. PKG_SHELL.user is the user's shell, and defaults to /sbin/nologin if not specified.

Similarly, groups can be created by adding entries to the PKG_GROUPS variable, whose syntax is:

group

The numeric GID of the group may be set by defining PKG_GID.group.

If a package needs to create the users and groups at an earlier stage, then it can set USERGROUP_PHASE to either configure,build, or pre-install to indicate the phase before which the users and groups are created. In this case, the numeric UIDs and GIDs of the created users and groups are automatically hardcoded into the final installation scripts.

20.5. System shells

Packages that install system shells should register them in the shell database, /etc/shells, to make things easier to the administrator. This must be done from the installation scripts to keep binary packages working on any system. pkginstall provides an easy way to accomplish this task.

When a package provides a shell interpreter, it has to set the PKG_SHELL variable to its absolute file name. This will add some hooks to the installation scripts to handle it. Consider the following example, taken from shells/zsh:

PKG_SHELL=      ${PREFIX}/bin/zsh

20.5.1. Disabling shell registration

The automatic registration of shell interpreters can be disabled by the administrator by setting the PKG_REGISTER_SHELLS environment variable to NO.

20.6. Fonts

Packages that install X11 fonts should update the database files that index the fonts within each fonts directory. This can easily be accomplished within the pkginstall framework.

When a package installs X11 fonts, it must list the directories in which fonts are installed in the FONTS_DIRS.type variables, where type can be one of ttf, type1 or x11. This will add hooks to the installation scripts to run the appropriate commands to update the fonts database files within each of those directories. For convenience, if the directory path is relative, it is taken to be relative to the package's installation prefix. Consider the following example, taken from fonts/dbz-ttf:

FONTS_DIRS.ttf= ${PREFIX}/share/fonts/X11/TTF

20.6.1. Disabling automatic update of the fonts databases

The automatic update of fonts databases can be disabled by the administrator by setting the PKG_UPDATE_FONTS_DB environment variable to NO.

Chapter 21. Making your package work

Table of Contents

21.1. General operation
21.1.1. How to pull in user-settable variables from mk.conf
21.1.2. User interaction
21.1.3. Handling licenses
21.1.4. Restricted packages
21.1.5. Handling dependencies
21.1.6. Handling conflicts with other packages
21.1.7. Packages that cannot or should not be built
21.1.8. Packages which should not be deleted, once installed
21.1.9. Handling packages with security problems
21.1.10. How to handle incrementing versions when fixing an existing package
21.1.11. Substituting variable text in the package files (the SUBST framework)
21.2. The fetch phase
21.2.1. Packages whose distfiles aren't available for plain downloading
21.2.2. How to handle modified distfiles with the 'old' name
21.2.3. Packages hosted on github.com
21.3. The configure phase
21.3.1. Shared libraries - libtool
21.3.2. Using libtool on GNU packages that already support libtool
21.3.3. GNU Autoconf/Automake
21.3.4. Meson / ninja
21.4. Programming languages
21.4.1. C, C++, and Fortran
21.4.2. Java
21.4.3. Go
21.4.4. Rust
21.4.5. Packages containing Perl scripts
21.4.6. Packages containing shell scripts
21.4.7. Other programming languages
21.5. The build phase
21.5.1. Compiling C and C++ code conditionally
21.5.2. How to handle compiler bugs
21.5.3. No such file or directory
21.5.4. Undefined reference to ...
21.5.5. Running out of memory
21.6. The install phase
21.6.1. Creating needed directories
21.6.2. Where to install documentation
21.6.3. Installing highscore files
21.6.4. Adding DESTDIR support to packages
21.6.5. Packages with hardcoded paths to other interpreters
21.6.6. Packages installing Perl modules
21.6.7. Packages installing pkg-config files
21.6.8. Packages installing info files
21.6.9. Packages installing man pages
21.6.10. Packages installing X11 fonts
21.6.11. Packages installing SGML or XML data
21.6.12. Packages installing extensions to the MIME database
21.6.13. Packages using intltool
21.6.14. Packages installing startup scripts
21.6.15. Packages installing TeX modules
21.6.16. Packages supporting running binaries in emulation
21.6.17. Packages installing hicolor icons
21.6.18. Packages installing desktop files
21.7. Marking packages as having problems

21.1. General operation

One appealing feature of pkgsrc is that it runs on many different platforms. As a result, it is important to ensure, where possible, that packages in pkgsrc are portable. This chapter mentions some particular details you should pay attention to while working on pkgsrc.

21.1.1. How to pull in user-settable variables from mk.conf

The pkgsrc user can configure pkgsrc by overriding several variables in the file pointed to by MAKECONF, which is mk.conf by default. When you want to use those variables in the preprocessor directives of make(1) (for example .if or .for), you need to include the file ../../mk/bsd.prefs.mk before, which in turn loads the user preferences.

But note that some variables may not be completely defined after ../../mk/bsd.prefs.mk has been included, as they may contain references to variables that are not yet defined. In shell commands (the lines in Makefile that are indented with a tab) this is no problem, since variables are only expanded when they are used. But in the preprocessor directives mentioned above and in dependency lines (of the form target: dependencies) the variables are expanded at load time.

Note

To check whether a variable can be used at load time, run pkglint -Wall on your package.

21.1.2. User interaction

Occasionally, packages require interaction from the user, and this can be in a number of ways:

  • When fetching the distfiles, some packages require user interaction such as entering username/password or accepting a license on a web page.

  • When extracting the distfiles, some packages may ask for passwords.

  • help to configure the package before it is built

  • help during the build process

  • help during the installation of a package

A package can set the INTERACTIVE_STAGE variable to define which stages need interaction. This should be done in the package's Makefile, e.g.:

INTERACTIVE_STAGE=      configure install

The user can then decide to skip this package by setting the BATCH variable. Packages that require interaction are also excluded from bulk builds.

21.1.3. Handling licenses

Authors of software can choose the licence under which software can be copied. The Free Software Foundation has declared some licenses "Free", and the Open Source Initiative has a definition of "Open Source".

By default, pkgsrc allows packages with Free or Open Source licenses to be built. To allow packages with other licenses to be built as well, the pkgsrc user needs to add these licenses to the ACCEPTABLE_LICENSES variable in mk.conf. Note that this variable only affects which packages may be built, while the license terms often also restrict the actual use of the package and its redistribution.

One might want to only install packages with a BSD license, or the GPL, and not the other. The free licenses are added to the default ACCEPTABLE_LICENSES variable. The pkgsrc user can override the default by setting the ACCEPTABLE_LICENSES variable with "=" instead of "+=". The licenses accepted by default are defined in the DEFAULT_ACCEPTABLE_LICENSES variable in the file pkgsrc/mk/license.mk.

The license tag mechanism is intended to address copyright-related issues surrounding building, installing and using a package, and not to address redistribution issues (see RESTRICTED and NO_SRC_ON_FTP, etc.). Packages with redistribution restrictions should set these tags.

Denoting that a package may be copied according to a particular license is done by placing the license in pkgsrc/licenses and setting the LICENSE variable to a string identifying the license, e.g. in graphics/xv:

LICENSE=        xv-license

When trying to build, the user will get a notice that the package is covered by a license which has not been placed in the ACCEPTABLE_LICENSES variable:

% make
===> xv-3.10anb9 has an unacceptable license: xv-license.
===>     To view the license, enter "/usr/bin/make show-license".
===>     To indicate acceptance, add this line to your /etc/mk.conf:
===>     ACCEPTABLE_LICENSES+=xv-license
*** Error code 1

The license can be viewed with make show-license, and if the user so chooses, the line printed above can be added to mk.conf to convey to pkgsrc that it should not in the future fail because of that license:

ACCEPTABLE_LICENSES+=xv-license

The use of LICENSE=shareware, LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to tell pkgsrc to proceed for a single package without also telling pkgsrc to proceed for all packages with that tag.

21.1.3.1. Adding a package with a new license

When adding a package with a new license, the following steps are required:

  1. Check whether the license qualifies as Free or Open Source by referencing Various Licenses and Comments about Them and Licenses by Name | Open Source Initiative. If this is the case, the filename in pkgsrc/licenses/ does not need the -license suffix, and the license name should be added to:

    • DEFAULT_ACCEPTABLE_LICENSES in pkgsrc/mk/license.mk

    • default_acceptable_licenses in pkgsrc/pkgtools/pkg_install/files/lib/license.c

  2. The license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory.

21.1.3.2. Change to the license

When the license changes (in a way other than formatting), make sure that the new license has a different name (e.g., append the version number if it exists, or the date). Just because a user told pkgsrc to build programs under a previous version of a license does not mean that pkgsrc should build programs under the new licenses. The higher-level point is that pkgsrc does not evaluate licenses for reasonableness; the only test is a mechanistic test of whether a particular text has been approved by either of two bodies (FSF or OSI).

21.1.4. Restricted packages

Some licenses restrict how software may be re-distributed. By declaring the restrictions, package tools can automatically refrain from e.g. placing binary packages on FTP sites.

There are four possible restrictions, which are the cross product of sources (distfiles) and binaries not being placed on FTP sites and CD-ROMs. Because this is rarely the exact language in any license, and because non-Free licenses tend to be different from each other, pkgsrc adopts a definition of FTP and CD-ROM. "FTP" means making the source or binary file available over the Internet at no charge. "CD-ROM" means making the source or binary available on some kind of media, together with other source and binary packages, which is sold for a distribution charge.

In order to encode these restrictions, the package system defines five make variables that can be set to note these restrictions:

  • RESTRICTED

    This variable should be set whenever a restriction exists (regardless of its kind). Set this variable to a string containing the reason for the restriction. It should be understood that those wanting to understand the restriction will have to read the license, and perhaps seek advice of counsel.

  • NO_BIN_ON_CDROM

    Binaries may not be placed on CD-ROM containing other binary packages, for which a distribution charge may be made. In this case, set this variable to ${RESTRICTED}.

  • NO_BIN_ON_FTP

    Binaries may not made available on the Internet without charge. In this case, set this variable to ${RESTRICTED}. If this variable is set, binary packages will not be included on ftp.NetBSD.org.

  • NO_SRC_ON_CDROM

    Distfiles may not be placed on CD-ROM, together with other distfiles, for which a fee may be charged. In this case, set this variable to ${RESTRICTED}.

  • NO_SRC_ON_FTP

    Distfiles may not made available via FTP at no charge. In this case, set this variable to ${RESTRICTED}. If this variable is set, the distfile(s) will not be mirrored on ftp.NetBSD.org.

Please note that packages will be removed from pkgsrc when the distfiles are not distributable and cannot be obtained for a period of one full quarter branch. Packages with manual/interactive fetch must have a maintainer and it is his/her responsibility to ensure this.

21.1.5. Handling dependencies

Your package may depend on some other package being present, and there are various ways of expressing this dependency. pkgsrc supports the DEPENDS, BUILD_DEPENDS, TOOL_DEPENDS, and TEST_DEPENDS definitions, the USE_TOOLS definition, as well as dependencies via buildlink3.mk, which is the preferred way to handle dependencies, and which uses the variables named above. See Chapter 18, Buildlink methodology for more information.

The basic difference is that the DEPENDS definition registers that pre-requisite in the binary package so it will be pulled in when the binary package is later installed, whilst the BUILD_DEPENDS, TOOL_DEPENDS, and TEST_DEPENDS definitions do not, marking a dependency that is only needed for building or testing the resulting package. See also Chapter 14, Creating a new pkgsrc package from scratch for more information.

This means that if you only need a package present whilst you are building or testing, it should be noted as a TOOL_DEPENDS, BUILD_DEPENDS, or TEST_DEPENDS. When cross-compiling, TOOL_DEPENDS are native packages, i.e. packages for the architecture where the package is built; BUILD_DEPENDS are target packages, i.e., packages for the architecture for which the package is built.

The format for a DEPENDS, BUILD_DEPENDS, TOOL_DEPENDS, and TEST_DEPENDS definition is:

<pre-req-package-name>:../../<category>/<pre-req-package>

Please note that the pre-req-package-name may include any of the wildcard version numbers recognized by pkg_info(1).

  1. If your package needs another package's binaries or libraries to build and run, and if that package has a buildlink3.mk file available, use it:

    .include "../../graphics/jpeg/buildlink3.mk"
    
  2. If your package needs another package's binaries or libraries only for building, and if that package has a buildlink3.mk file available, use it:

    .include "../../graphics/jpeg/buildlink3.mk"
    

    but set BUILDLINK_DEPMETHOD.jpeg?=build to make it a build dependency only. This case is rather rare.

  3. If your package needs binaries from another package to build, use the TOOL_DEPENDS definition:

    TOOL_DEPENDS+= itstool-[0-9]*:../../textproc/itstool
    
  4. If your package needs static libraries to link against, header files to include, etc. from another package to build, use the BUILD_DEPENDS definition.

  5. If your package needs a library with which to link and there is no buildlink3.mk file available, create one. Using DEPENDS won't be sufficient because the include files and libraries will be hidden from the compiler.

  6. If your package needs some executable to be able to run correctly and if there's no buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the tex-latex-bin package when it runs, and that is specified:

    DEPENDS+=        tex-latex-bin-[0-9]*:../../print/tex-latex-bin
    
  7. If your package includes a test suite that has extra dependencies only required for this purpose (frequently this can be run as a make test target), use the TEST_DEPENDS variable.

  8. You can use wildcards in package dependencies. Note that such wildcard dependencies are retained when creating binary packages. The dependency is checked when installing the binary package and any package which matches the pattern will be used. Wildcard dependencies should be used with care.

    The -[0-9]* should be used instead of -* to avoid potentially ambiguous matches such as tk-postgresql matching a tk-* DEPENDS.

    Wildcards can also be used to specify that a package will only build against a certain minimum version of a pre-requisite:

    DEPENDS+=       ImageMagick>=6.0:../../graphics/ImageMagick
    

    This means that the package will build using version 6.0 of ImageMagick or newer. Such a dependency may be warranted if, for example, the command line options of an executable have changed.

    If you need to depend on minimum versions of libraries, set BUILDLINK_API_DEPENDS.pkg to the appropriate pattern before including its buildlink3.mk file, e.g.

    BUILDLINK_API_DEPENDS.jpeg+=    jpeg>=9.0
    .include "../../graphics/jpeg/buildlink3.mk"
    

    For security fixes, please update the package vulnerabilities file. See Section 21.1.9, “Handling packages with security problems” for more information.

If your package needs files from another package to build, add the relevant distribution files to DISTFILES, so they will be extracted automatically. See the print/ghostscript package for an example. (It relies on the jpeg sources being present in source form during the build.)

21.1.6. Handling conflicts with other packages

Your package may conflict with other packages users might already have installed on their system, e.g., if your package installs the same set of files as another package in the pkgsrc tree.

For example, x11/libXaw3d and x11/Xaw-Xpm install the same shared library, thus you set in pkgsrc/x11/libXaw3d/Makefile:

CONFLICTS=      Xaw-Xpm-[0-9]*

and in pkgsrc/x11/Xaw-Xpm/Makefile:

CONFLICTS=      libXaw3d-[0-9]*

pkg_add(1) is able to detect attempts to install packages that conflict with existing packages and abort. However, in many situations this is too late in the process. Binary package managers will not know about the conflict until they attempt to install the package after already downloading it and all its dependencies. Users may also waste time building a package and its dependencies only to find out at the end that it conflicts with another package they have installed.

To avoid these issues CONFLICTS entries should be added in all cases where it is known that packages conflict with each other. These CONFLICTS entries are exported in pkg_summary(5) files and consumed by binary package managers to inform users that packages cannot be installed onto the target system.

21.1.7. Packages that cannot or should not be built

There are several reasons why a package might be instructed to not build under certain circumstances. If the package builds and runs on most platforms, the exceptions should be noted with BROKEN_ON_PLATFORM. If the package builds and runs on a small handful of platforms, set BROKEN_EXCEPT_ON_PLATFORM instead. Both BROKEN_ON_PLATFORM and BROKEN_EXCEPT_ON_PLATFORM are OS triples (OS-version-platform) that can use glob-style wildcards.

If a package is not appropriate for some platforms (as opposed to merely broken), a different set of variables should be used as this affects failure reporting and statistics. If the package is appropriate for most platforms, the exceptions should be noted with NOT_FOR_PLATFORM. If the package is appropriate for only a small handful of platforms (often exactly one), set ONLY_FOR_PLATFORM instead. Both ONLY_FOR_PLATFORM and NOT_FOR_PLATFORM are OS triples (OS-version-platform) that can use glob-style wildcards.

Some packages are tightly bound to a specific version of an operating system, e.g. LKMs or sysutils/lsof. Such binary packages are not backwards compatible with other versions of the OS, and should be uploaded to a version specific directory on the FTP server. Mark these packages by setting OSVERSION_SPECIFIC to yes. This variable is not currently used by any of the package system internals, but may be used in the future.

If the package should be skipped (for example, because it provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive message.

21.1.8. Packages which should not be deleted, once installed

To ensure that a package may not be deleted, once it has been installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any binary package that is made from this pkgsrc entry. A preserved package will not be deleted using pkg_delete(1) unless the -f option is used.

21.1.9. Handling packages with security problems

When a vulnerability is found, this should be noted in pkgsrc/doc/pkg-vulnerabilities. Entries in that file consist of three parts:

  • package version pattern

  • type of vulnerability (please cut'n'paste an existing one where possible)

  • URL providing additional information about the issue

For the package version pattern please always use `<' to mark an upper bound (not `<='!). This will avoid possible problems due unrelated PKGREVISION bumps not related to security fixes. Lower bounds can be added too, using '>' or '>='. For example, foo>=1<1.2 would mark versions 1.0 (included) to 1.2 (excluded) of foo as affected by the security issue.

Entries should always be added at the bottom of the file.

When fixing packages, please modify the upper bound of the corresponding entry. To continue the previous example, if a fix was backported to version 1.1nb2, change the previous pattern to foo>=1<1.1nb2.

To locally test a package version pattern against a PKGNAME you can use the pkg_admin pmatch command.

The URL should be as permanent as possible and provide as much information about the issue as possible. CVE entries are preferred.

After committing that file, ask pkgsrc-security@@NetBSD.org to update the file on ftp.NetBSD.org.

After fixing the vulnerability by a patch, its PKGREVISION should be increased (this is of course not necessary if the problem is fixed by using a newer release of the software), and the pattern in the pkg-vulnerabilities file must be updated.

Also, if the fix should be applied to the stable pkgsrc branch, be sure to submit a pullup request!

Binary packages already on ftp.NetBSD.org will be handled semi-automatically by a weekly cron job.

In case a security issue is disputed, please contact pkgsrc-security@@NetBSD.org.

21.1.10. How to handle incrementing versions when fixing an existing package

When making fixes to an existing package it can be useful to change the version number in PKGNAME. To avoid conflicting with future versions by the original author, a nb1, nb2, ... suffix can be used on package versions by setting PKGREVISION=1 (2, ...). The nb is treated like a . by the package tools. e.g.

DISTNAME=       foo-17.42
PKGREVISION=    9

will result in a PKGNAME of foo-17.42nb9. If you want to use the original value of PKGNAME without the nbX suffix, e.g. for setting DIST_SUBDIR, use PKGNAME_NOREV.

When a new release of the package is released, the PKGREVISION should be removed, e.g. on a new minor release of the above package, things should be like:

DISTNAME=       foo-17.43

PKGREVISION should be incremented for any non-trivial change in the resulting binary package. Without a PKGREVISION bump, someone with the previous version installed has no way of knowing that their package is out of date. Thus, changes without increasing PKGREVISION are essentially labeled "this is so trivial that no reasonable person would want to upgrade", and this is the rough test for when increasing PKGREVISION is appropriate. Examples of changes that do not merit increasing PKGREVISION are:

  • Changing HOMEPAGE, MAINTAINER, OWNER, or comments in Makefile.

  • Changing build variables if the resulting binary package is the same.

  • Changing DESCR.

  • Adding PKG_OPTIONS if the default options don't change.

Examples of changes that do merit an increase to PKGREVISION include:

  • Security fixes

  • Changes or additions to a patch file

  • Changes to the PLIST

  • A dependency is changed or renamed.

PKGREVISION must also be incremented when dependencies have ABI changes.

21.1.11. Substituting variable text in the package files (the SUBST framework)

When you want to replace the same text in multiple files, or multiple times in the same file, it is cumbersome to maintain a patch file for this. This is where the SUBST framework steps in. It provides an easy-to-use interface for replacing text in files. It just needs the following information:

  • In which phase of the package build cycle should the replacement happen?

  • In which files should the replacement happen?

  • Which text should be replaced with what?

This information is encoded in a block of SUBST variables. A minimal example is:

SUBST_CLASSES+=         paths
SUBST_STAGE.paths=      pre-configure
SUBST_FILES.paths=      src/*.c
SUBST_SED.paths=        -e 's,/usr/local,${PREFIX},g'

Translated into English, it means: In the pre-configure stage (that is, after applying the patches from the patches/ directory and before running the configure script and the portability check), replace the text /usr/local with the content of the variable PREFIX.

Each SUBST block starts by appending an identifier to SUBST_CLASSES (note the +=). This identifier can be chosen freely by the package. If there should ever be duplicate identifiers, the pkgsrc infrastructure will catch this and fail early, so don't worry about name collisions.

Except for SUBST_CLASSES, all variables in a SUBST block are parameterized using this identifier. In the remainder of this section, these parameterized variables are written as SUBST_STAGE.*.

SUBST_CLASSES+=         paths
SUBST_STAGE.paths=      pre-configure
SUBST_MESSAGE.paths=    Fixing absolute paths.
SUBST_FILES.paths=      src/*.c
SUBST_FILES.paths+=     scripts/*.sh
SUBST_SED.paths=        -e 's,"/usr/local,"${PREFIX},g'
SUBST_SED.paths+=       -e 's,"/var/log,"${VARBASE}/log,g'
SUBST_VARS.paths=       LOCALBASE PREFIX PKGVERSION

To get a complete picture about the SUBST substitutions, run bmake show-all-subst. If something doesn't work as expected, run pkglint on the package, which detects several typical mistakes surrounding the SUBST blocks. For any questions that might remain after this, have a look at mk/subst.mk.

21.1.11.1. Choosing the time where the substitutions happen

The SUBST_STAGE.* is one of {pre,do,post}-{extract,patch,configure,build,test,install}. Of these, pre-configure is used most often, by far. The most popular stages are, in chronological order:

post-extract

The substitutions are applied immediately after the distfiles are extracted. Running bmake extract on the package will leave no traces of the original files.

When the substitution applies to files for which there is also a patch in the patches/ directory, this means that the patches will be computed based on the result of the substitution. When these patches are sent to the upstream maintainer later, to be fixed in the upstream package, these patches may no longer match what the upstream author is used to. Because of this, pre-configure is often a better choice.

pre-configure

The substitutions are applied after the patches from the patches/ directory. This makes it possible to run bmake patch on the package, after which the patches can be edited using the tools pkgvi and mkpatches from the pkgtools/pkgdiff package.

When updating the patches, it is helpful to explicitly separate the bmake patch from the bmake configure, and to only edit the patches between these commands. Otherwise the substitutions from the SUBST block will end up in the patch file. When this happens in really obvious ways, pkglint will complain about patches that contain a hard-coded /usr/pkg instead of the correct and intended @@PREFIX@@, but it can only detect these really obvious cases.

do-configure

This stage should only be used if the package defines a pre-configure action itself, and the substitution must happen after that. Typical examples are packages that use the pre-configure stage to regenerate the GNU configure script from configure.ac.

post-configure

This stage is used to fix up any mistakes by the configure stage.

pre-build

This stage should only be used for substitutions that are clearly related to building the package, not for fixing the configuration. Substitutions for pathnames (such as replacing /usr/local with ${PREFIX}) or user names (such as replacing @@MY_USER@@ with the actual username) belong in pre-configure or post-configure instead.

post-build

Just as with pre-build, this stage should only be used for substitutions that are clearly related to building the package, not for fixing the configuration. Substitutions for pathnames (such as replacing /usr/local with ${PREFIX}) or user names (such as replacing @@MY_USER@@ with the actual username) belong in pre-configure or post-configure instead.

A typical use is to update pkg-config files to include the rpath compiler options.

pre-install

In general, the install phase should be as simple as possible. As with the pre-build and post-build stages, it should not be used to fix pathnames or user names, these belong in pre-configure instead. There are only few legitimate use cases for applying substitutions in this stage.

21.1.11.2. Choosing the files where the substitutions happen

The SUBST_FILES.* variable contains a list of filename patterns. These patterns are relative to WRKSRC since that is where most substitutions happen. A typical example is:

SUBST_FILES.path=       Makefile */Makefile */*/Makefile *.[ch]

The above patterns, especially the last, are quite broad. The SUBST implementation checks that each filename pattern that is mentioned here has an effect. For example, if none of the */*/Makefile files contains the patterns to be found and substituted, that filename pattern is redundant and should be left out. By default, the SUBST framework will complain with an error message. If the text to be substituted occurs in some of the files from a single pattern, but not in all of them, that is totally ok, and the SUBST framework will only print an INFO message for those files.

If there is a good reason for having redundant filename patterns, set SUBST_NOOP_OK.* to yes.

Another popular way of choosing the files for the substitutions is via a shell command, like this:

C_FILES_CMD=            cd ${WRKSRC} && ${FIND} . -name '*.c'
SUBST_FILES.path=       ${C_FILES_CMD:sh}

The variable name C_FILES_CMD in this example is freely chosen and independent of the SUBST framework.

In this variant, the SUBST_FILES.* variable lists each file individually. Thereby chances are higher that there are filename patterns in which no substitution happens. Since the SUBST framework cannot know whether the filename patterns in SUBST_FILES.* have been explicitly listed in the Makefile (where any redundant filename pattern would be suspicious) or been generated by a shell command (in which redundant filename patterns are more likely and to be expected), it will complain about these redundant filename patterns. Therefore, SUBST blocks that use a shell command to generate the list of filename patterns often need to set SUBST_NOOP_OK.* to yes.

21.1.11.3. Choosing what to substitute

In most cases, the substitutions are given using one or more sed(1) commands, like this:

SUBST_SED.path=         -e 's|/usr/local|${PREFIX}|g'

Each of the sed commands needs to be preceded by the -e option and should be specified on a line of its own, to avoid hiding short sed commands at the end of a line.

Since the sed commands often contain shell metacharacters as the separator (the | in the above example), it is common to enclose them in single quotes.

A common substitution is to replace placeholders of the form @@VARNAME@@ with their pkgsrc counterpart variable ${VARNAME}. A typical example is:

SUBST_VARS.path=        PREFIX

This type of substitutions is typically done by the GNU configure scripts during the do-configure stage, but in some cases these need to be overridden. The same pattern is also used when a package defines patches that replace previously hard-coded paths like /usr/local with a @@PREFIX@@ placeholder first, which then gets substituted by the actual ${PREFIX} in the pre-configure stage. In many of these cases, it works equally well to just use the SUBST framework to directly replace /usr/local with ${PREFIX}, thereby omitting the intermediate patch file.

If the above is not flexible enough, it is possible to not use sed at all for the substitution but to specify an entirely different command, like this:

SUBST_FILTER_CMD.path=  LC_ALL=C ${TR} -d '\r'

This is used for the few remaining packages in which the distributed files use Windows-style line endings that need to be converted to UNIX-style line endings.

21.1.11.4. Other SUBST variables

When a SUBST block is applied during a package build, a message is logged. The default message is fine for most purposes but can be overridden by setting SUBST_MESSAGE.* to an individual message.

21.2. The fetch phase

21.2.1. Packages whose distfiles aren't available for plain downloading

If you need to download from a dynamic URL you can set DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

If the download can't be automated, because the user must submit personal information to apply for a password, or must pay for the source, or whatever, you can set FETCH_MESSAGE to a list of lines that are displayed to the user before aborting the build. Example:

FETCH_MESSAGE=  "Please download the files"
FETCH_MESSAGE+= "    "${DISTFILES:Q}
FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"."

21.2.2. How to handle modified distfiles with the 'old' name

Sometimes authors of a software package make some modifications after the software was released, and they put up a new distfile without changing the package's version number. If a package is already in pkgsrc at that time, the checksum will no longer match. The contents of the new distfile should be compared against the old one before changing anything, to make sure the distfile was really updated on purpose, and that no trojan horse or so crept in. Please mention that the distfiles were compared and what was found in your commit message.

Then, the correct way to work around this is to set DIST_SUBDIR to a unique directory name, usually based on PKGNAME_NOREV (but take care with python or ruby packages, where PKGNAME includes a variable prefix). All DISTFILES and PATCHFILES for this package will be put in that subdirectory of the local distfiles directory. (See Section 21.1.10, “How to handle incrementing versions when fixing an existing package” for more details.) In case this happens more often, PKGNAME can be used (thus including the nbX suffix) or a date stamp can be appended, like ${PKGNAME_NOREV}-YYYYMMDD.

DIST_SUBDIR is also used when a distfile's name does not contain a version and the distfile is apt to change. In cases where the likelihood of this is very small, DIST_SUBDIR might not be required. Additionally, DIST_SUBDIR must not be removed unless the distfile name changes, even if a package is being moved or renamed.

Do not forget regenerating the distinfo file after that, since it contains the DIST_SUBDIR path in the filenames. Also, increase the PKGREVISION if the installed package is different. Furthermore, a mail to the package's authors seems appropriate telling them that changing distfiles after releases without changing the file names is not good practice.

21.2.3. Packages hosted on github.com

Helper methods exist for packages hosted on github.com which will often have distfile names that clash with other packages, for example 1.0.tar.gz. Use one of the three recipes from below:

21.2.3.1. Fetch based on a tagged release

If your distfile URL looks similar to https://github.com/username/example/archive/v1.0.zip, then you are packaging a tagged release.

DISTNAME=       example-1.0
MASTER_SITES=   ${MASTER_SITE_GITHUB:=username/}
#GITHUB_PROJECT= example    # can be omitted if same as DISTNAME
GITHUB_TAG=     v${PKGVERSION_NOREV}
EXTRACT_SUFX=   .zip

Here, DISTNAME combined with use of GITHUB_TAG leads the file fetching infrastructure to save the resulting file locally as example-1.0.zip.

21.2.3.2. Fetch based on a specific commit before the first release

If your distfile looks similar to https://github.com/username/example/archive/988881adc9fc3655077dc2d4d757d480b5ea0e11 and is from a commit before the first release, then set the package version to 0.0.0.N, where N is the number of commits to the repository, and set GITHUB_TAG to the commit hash. This will (almost) ensure that the first tagged release will have a version greater than this one so that package upgrades will function properly.

DISTNAME=       example-0.0.0.347
MASTER_SITES=   ${MASTER_SITE_GITHUB:=username/}
#GITHUB_PROJECT= example    # can be omitted if same as DISTNAME
GITHUB_TAG=     988881adc9fc3655077dc2d4d757d480b5ea0e11

21.2.3.3. Fetch based on a specific commit after a release

If your distfile looks similar to https://github.com/username/example/archive/988881adc9fc3655077dc2d4d757d480b5ea0e11 and is from a commit after a release, then include the last release version and the commit count since that release in the package version and set GITHUB_TAG to the commit hash. The latest release and commit count are shown in the output of "git describe --tags":

# git clone https://github.com/username/example
# cd example
# git describe --tags
1.2.3-5-g988881a
DISTNAME=       example-1.2.3.5
MASTER_SITES=   ${MASTER_SITE_GITHUB:=username/}
#GITHUB_PROJECT= example    # can be omitted if same as DISTNAME
GITHUB_TAG=     988881adc9fc3655077dc2d4d757d480b5ea0e11

21.2.3.4. Fetch based on release

If your distfile URL looks similar to https://github.com/username/example/releases/download/rel-1.6/offensive-1.6.zip, then you are packaging a release.

DISTNAME=       offensive-1.6
PKGNAME=        ${DISTNAME:S/offensive/proper/}
MASTER_SITES=   ${MASTER_SITE_GITHUB:=username/}
GITHUB_PROJECT= example
GITHUB_RELEASE= rel-${PKGVERSION_NOREV} # usually just set this to ${DISTNAME}
EXTRACT_SUFX=   .zip

21.3. The configure phase

21.3.1. Shared libraries - libtool

pkgsrc supports many different machines, with different object formats like a.out and ELF, and varying abilities to do shared library and dynamic loading at all. To accompany this, varying commands and options have to be passed to the compiler, linker, etc. to get the Right Thing, which can be pretty annoying especially if you don't have all the machines at your hand to test things. The devel/libtool pkg can help here, as it just knows how to build both static and dynamic libraries from a set of source files, thus being platform-independent.

Here's how to use libtool in a package in seven simple steps:

  1. Add USE_LIBTOOL=yes to the package Makefile.

  2. For library objects, use ${LIBTOOL} --mode=compile ${CC} in place of ${CC}. You could even add it to the definition of CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

  3. For the linking of the library, remove any ar, ranlib, and ld -Bshareable commands, and instead use:

    ${LIBTOOL} --mode=link \
        ${CC} -o ${.TARGET:.a=.la} \
            ${OBJS:.o=.lo} \
            -rpath ${PREFIX}/lib \
            -version-info major:minor
    

    Note that the library is changed to have a .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include -version-info, especially when major and minor are zero, as libtool will otherwise strip off the shared library version.

    From the libtool manual:

    So, libtool library versions are described by three integers:
    
    CURRENT
    The most recent interface number that this library implements.
    
    REVISION
    The implementation number of the CURRENT interface.
    
    AGE
    The difference between the newest and oldest interfaces that
    this library implements.  In other words, the library implements
    all the interface numbers in the range from number `CURRENT -
    AGE' to `CURRENT'.
    
    If two libraries have identical CURRENT and AGE numbers, then the
    dynamic linker chooses the library with the greater REVISION number.
    

    The -release option will produce different results for a.out and ELF (excluding symlinks) in only one case. An ELF library of the form libfoo-release.so.x.y will have a symlink of libfoo.so.x.y on an a.out platform. This is handled automatically.

    The -rpath argument is the install directory of the library being built.

    In the PLIST, include only the .la file, the other files will be added automatically.

  4. When linking shared object (.so) files, i.e. files that are loaded via dlopen(3), NOT shared libraries, use -module -avoid-version to prevent them getting version tacked on.

    The PLIST file gets the foo.so entry.

  5. When linking programs that depend on these libraries before they are installed, preface the cc(1) or ld(1) line with ${LIBTOOL} --mode=link, and it will find the correct libraries (static or shared), but please be aware that libtool will not allow you to specify a relative path in -L (such as -L../somelib), because it expects you to change that argument to be the .la file. e.g.

    ${LIBTOOL} --mode=link ${CC} -o someprog -L../somelib -lsomelib
    

    should be changed to:

    ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la
    

    and it will do the right thing with the libraries.

  6. When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} --mode=install, and change the library name to .la. e.g.

    ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} ${SOMELIB:.a=.la} ${PREFIX}/lib
    

    This will install the static .a, shared library, any needed symlinks, and run ldconfig(8).

  7. In your PLIST, include only the .la file (this is a change from previous behaviour).

21.3.2. Using libtool on GNU packages that already support libtool

Add USE_LIBTOOL=yes to the package Makefile. This will override the package's own libtool in most cases. For older libtool using packages, libtool is made by ltconfig script during the do-configure step; you can check the libtool script location by doing make configure; find work*/ -name libtool.

LIBTOOL_OVERRIDE specifies which libtool scripts, relative to WRKSRC, to override. By default, it is set to libtool */libtool */*/libtool. If this does not match the location of the package's libtool script(s), set it as appropriate.

If you do not need *.a static libraries built and installed, then use SHLIBTOOL_OVERRIDE instead.

If your package makes use of the platform-independent library for loading dynamic shared objects, that comes with libtool (libltdl), you should include devel/libltdl/buildlink3.mk.

Some packages use libtool incorrectly so that the package may not work or build in some circumstances. Some of the more common errors are:

  • The inclusion of a shared object (-module) as a dependent library in an executable or library. This in itself isn't a problem if one of two things has been done:

    1. The shared object is named correctly, i.e. libfoo.la, not foo.la

    2. The -dlopen option is used when linking an executable.

  • The use of libltdl without the correct calls to initialisation routines. The function lt_dlinit() should be called and the macro LTDL_SET_PRELOADED_SYMBOLS included in executables.

21.3.3. GNU Autoconf/Automake

If a package needs GNU autoconf or automake to be executed to regenerate the configure script and Makefile.in makefile templates from configure.ac and Makefile.am, then they should be executed in a pre-configure target:

USE_TOOLS+=	autoconf automake autoreconf
GNU_CONFIGURE=	yes
...

pre-configure:
        set -e; cd ${WRKSRC} && autoreconf -fi
...

Packages which use GNU Automake will sometimes require GNU Make (gmake in USE_TOOLS), but not always. Note that autoreconf only needs to be executed if configure.ac or Makefiles are modified, or configure is not present.

There are times when the configure process makes additional changes to the generated files, which then causes the build process to try to re-execute the automake sequence. This is prevented by touching various files in the configure stage. If this causes problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package Makefile.

21.3.4. Meson / ninja

Packages using Meson to configure need to include:

.include "../../devel/meson/build.mk"

In nearly all cases (any program with dependencies), pkg-config needs to be added to USE_TOOLS. If the package installs translation files for non-English languages, also add msgfmt and xgettext:

USE_TOOLS+=	pkg-config msgfmt xgettext

If any options need to be passed to Meson, use MESON_ARGS instead of CONFIGURE_ARGS:

MESON_ARGS+=	-Dx11=false

21.4. Programming languages

21.4.1. C, C++, and Fortran

Compilers for the C and C++ languages come with the NetBSD base system. By default, pkgsrc assumes that a package is written in C and will hide all other compilers (via the wrapper framework, see Chapter 18, Buildlink methodology).

To declare which languages should be made available through pkgsrc's compiler wrappers, use the USE_LANGUAGES variable. Allowed values currently are:

c, c++, fortran, fortran77, java, objc, obj-c++, and ada.

(and any combination). The default is c. Packages using GNU configure scripts, even if written in C++, usually need a C compiler for the configure phase.

To declare which features a package requires from the compiler, set either USE_CC_FEATURES or USE_CXX_FEATURES. Allowed values for USE_CC_FEATURES are currently:

c11, c99, has_include

Allowed values for USE_CXX_FEATURES are currently:

c++11, c++14, c++17, c++20, has_include, regex, filesystem,
charconv, parallelism_ts, unique_ptr, put_time,
is_trivially_copy_constructible

Note at present these variables only affect use of GCC, not other compilers.

Language variants like gnu99 and c++11 can be specified in FORCE_C_STD and FORCE_CXX_STD if the package does not explicitly set -std=... when compiling (i.e. the package assumes the compiler defaults to C++11 or some other standard). This is a common bug in upstream build systems.

Allowed values for FORCE_C_STD are currently:

c90, c99, c11, gnu90, gnu99, gnu11

Allowed values for FORCE_CXX_STD are currently:

c++03, c++11, c++14, c++17, c++20,
gnu++03, gnu++11, gnu++14, gnu++17, gnu++20

Note at present these variables only affect use of GCC and Clang.

21.4.2. Java

If a program is written in Java, use the Java framework in pkgsrc. The package must include ../../mk/java-vm.mk. This Makefile fragment provides the following variables:

  • USE_JAVA defines if a build dependency on the JDK is added. If USE_JAVA is set to run, then there is only a runtime dependency on the JDK. The default is yes, which also adds a build dependency on the JDK.

  • Set USE_JAVA2 to declare that a package needs a Java2 implementation. The supported values are yes, 1.4, and 1.5. yes accepts any Java2 implementation, 1.4 insists on versions 1.4 or above, and 1.5 only accepts versions 1.5 or above. This variable is not set by default.

  • PKG_JAVA_HOME is automatically set to the runtime location of the used Java implementation dependency. It may be used to set JAVA_HOME to a good value if the program needs this variable to be defined.

21.4.3. Go

If a program is written in Go and has any dependencies on other Go modules, have the package include ../../lang/go/go-module.mk.

  1. Generate a list of those dependencies with make clean && make patch && make show-go-modules > go-modules.mk.

  2. Prepend .include "go-modules.mk" to any other .includes.

  3. Incorporate these modules in distinfo with make makesum.

21.4.4. Rust

If a program is written in Rust and uses Cargo to build, have the package include ../../lang/rust/cargo.mk.

  1. Generate a list of those dependencies with make CARGO_ARGS="build --release" build && make print-cargo-depends > cargo-depends.mk.

  2. Prepend .include "cargo-depends.mk" to any other .includes.

  3. Incorporate these modules in distinfo with make makesum.

21.4.5. Packages containing Perl scripts

If your package contains interpreted Perl scripts, add perl to the USE_TOOLS variable and set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted. Every occurrence of */bin/perl in a she-bang line will be replaced with the full path to the Perl executable.

If a particular version of Perl is needed, set the PERL5_REQD variable to the version number. The default is 5.0.

See Section 21.6.6, “Packages installing Perl modules” for information about handling Perl modules.

There is also the REPLACE_PERL6 variable for the language now known as Raku.

21.4.6. Packages containing shell scripts

REPLACE_SH, REPLACE_BASH, REPLACE_CSH, and REPLACE_KSH can be used to replace shell she-bangs in files. Please use the appropriate one, preferring REPLACE_SH when this shell is sufficient. Each should contain a list of scripts, relative to WRKSRC, that you want adjusted. Every occurrence of the matching shell in a she-bang line will be replaced with the full path to the shell executable. When using REPLACE_BASH, don't forget to add bash to USE_TOOLS.

21.4.7. Other programming languages

There are further similar REPLACE variables available, e.g., REPLACE_AWK for packages containing awk scripts, and REPLACE_R for R. These two, like the others noted above, have their actions defined centrally in mk/configure/replace-interpreter.mk. Other languages define the actions of these variables within their own dedicated part of the tree, e.g., REPLACE_PHP is actioned in lang/php/replace.mk, and REPLACE_PYTHON is actioned in lang/python/application.mk. For other languages, consult the mk files found within their specific directories (the naming convention varies), or check the list found in Appendix E, Help topics.

Currently, special handling for other languages varies in pkgsrc. If a compiler package provides a buildlink3.mk file, include that, otherwise just add a (build) dependency on the appropriate compiler package.

21.5. The build phase

The most common failures when building a package are that some platforms do not provide certain header files, functions or libraries, or they provide the functions in a library that the original package author didn't know. To work around this, you can rewrite the source code in most cases so that it does not use the missing functions or provides a replacement function.

21.5.1. Compiling C and C++ code conditionally

If a package already comes with a GNU configure script, the preferred way to fix the build failure is to change the configure script, not the code. In the other cases, you can utilize the C preprocessor, which defines certain macros depending on the operating system and hardware architecture it compiles for. These macros can be queried using for example #if defined(__i386). Almost every operating system, hardware architecture and compiler has its own macro. For example, if the macros __GNUC__, __i386__ and __NetBSD__ are all defined, you know that you are using NetBSD on an i386 compatible CPU, and your compiler is GCC.

The list of the following macros for hardware and operating system depends on the compiler that is used. For example, if you want to conditionally compile code on Solaris, don't use __sun__, as the SunPro compiler does not define it. Use __sun instead.

21.5.1.1. C preprocessor macros to identify the operating system

To distinguish between specific NetBSD versions, you should use the following code.

#ifdef __NetBSD__
#include <sys/param.h>
#if __NetBSD_Prereq__(9,99,17)
/* use a newer feature */
#else
/* older code */
#endif
#endif

#ifndef _WIN32
/* Unix-like specific code */
#endif

To distinguish between 4.4 BSD-derived systems and the rest of the world, you should use the following code.

#include <sys/param.h>
#if (defined(BSD) && BSD >= 199306)
/* BSD-specific code goes here */
#else
/* non-BSD-specific code goes here */
#endif

You can also test for the following macros:

Cygwin      __CYGWIN__
DragonFly   __DragonFly__
FreeBSD     __FreeBSD__
Haiku       __HAIKU__
Interix     __INTERIX
IRIX        __sgi (TODO: get a definite source for this)
Linux       __linux
Mac OS X    __APPLE__
MirBSD      __MirBSD__ (__OpenBSD__ is also defined)
Minix3      __minix
NetBSD      __NetBSD__
OpenBSD     __OpenBSD__
Solaris     sun, __sun

21.5.1.2. C preprocessor macros to identify the hardware architecture

i386        i386, __i386, __i386__
x86-64      __amd64__, __x86_64__
ARM         __arm__
MIPS        __mips
SPARC       sparc, __sparc
PowerPC     __powerpc

21.5.1.3. C preprocessor macros to identify the compiler

GCC         __GNUC__ (major version), __GNUC_MINOR__
MIPSpro     _COMPILER_VERSION (0x741 for MIPSpro 7.41)
SunPro      __SUNPRO_C (0x570 for Sun C 5.7)
SunPro C++  __SUNPRO_CC (0x580 for Sun C++ 5.8)

21.5.2. How to handle compiler bugs

Some source files trigger bugs in the compiler, based on combinations of compiler version and architecture and almost always relation to optimisation being enabled. Common symptoms are gcc internal errors or never finishing compiling a file.

Typically, a workaround involves testing the MACHINE_ARCH and compiler version, disabling optimisation for that combination of file, MACHINE_ARCH and compiler.

This used to be a big problem in the past, but is rarely needed now as compiler technology has matured. If you still need to add a compiler specific workaround, please do so in the file hacks.mk and describe the symptom and compiler version as detailed as possible.

21.5.3. No such file or directory

Compilation sometimes fails with an error message like this:

.../x11/gtk3/work/gtk+-3.24.12/gdk/gdktypes.h:35:10:
    fatal error: pango/pango.h: No such file or directory

The proper way to fix this problem depends on the type of the header, which is described in the following sections.

21.5.3.1. Headers from other packages

If the header name looks like it comes from a different package, that other package should be included via the buildlink3 framework.

First, look whether the header is somewhere in the buildlink3 directory below WRKDIR. In the above case of the missing Pango header:

$ find work/.buildlink/ -print | grep -F pango/pango.h

In the case of Pango, the output is:

work/.buildlink/include/pango-1.0/pango/pango.h

If the pango/pango.h file were placed directly in the .buildlink directory, it would have been found automatically. There is an extra pango-1.0 path component though, which means that the compiler command line must contain an option of the form -I${BUILDLINK3_PREFIX.pango}/include/pango-1.0. In most cases this option is generated by the configure script, which can be examined using:

$ $ grep -o '[-]I[^[:space:]]*/pango[^[:space:]]*' work/*/Makefile
-I/usr/pkg/include/pango-1.0
-I/usr/pkg/include/pango-1.0
-I/usr/pkg/include/pango-1.0
-I/usr/pkg/include/pango-1.0
-I/usr/pkg/include/pango-1.0

This looks good. These options are transformed by the buildlink wrapper to refer to the correct path inside work/.buildlink.

Since the compilation fails though, examine the compiler command lines in work/.work.log to see whether the -I option is included in the particular command line.

To further analyze the situation, run bmake build-env, which sets up an interactive, realistic environment including all the pkgsrc wrapper commands and environment variables. From there, try to compile some simple example programs that use the header.

21.5.3.2. Headers generated during the build

If the name of the header seems to come from the package itself, and if the build is run with parallel jobs, the package may have some undeclared dependencies between the .c and the .h files, and a C file is compiled before its required header is generated.

To see whether the build runs with parallel jobs, run bmake show-all-build | grep JOBS. Its output looks like this:

  usr   MAKE_JOBS=              7
  pkg   MAKE_JOBS_SAFE          # undefined
  def   _MAKE_JOBS_N=           7

In this case the pkgsrc user has asked pkgsrc to build packages with 7 jobs in parallel (MAKE_JOBS). The package could have disabled parallel builds by setting MAKE_JOBS_SAFE to no, but in this case it hasn't.

To see whether the build failure is caused by parallel builds, first save the exact error message and a bit of context, maybe you need it later for reporting a bug. Next, run:

MAKE_JOBS_SAFE=no bmake clean build

If that succeeds, file a bug report against the pkgsrc package, including the exact error message and the contents of your mk.conf file.

21.5.3.3. Symlinks

Pkgsrc does not work reliably if any of LOCALBASE, VARBASE or WRKDIR contains a symlink. Since 2019Q2, the pkgsrc bootstrap program prevents installing pkgsrc in symlink-based directories. Existing pkgsrc installations are not checked for symlinks though.

The "No such file or directory" error messages are a typical symptom of symlinks, and it's quite difficult to find out that this is the actual cause.

21.5.3.4. Stale working directories

When building a hierarchy of packages, it may happen that one package is built and then pkgsrc is updated. This situation can provoke various hard to diagnose build errors. To clean up the situation:

$ (cd ../../ && cat mk/bsd.pkg.mk >/dev/null && rm -rf */*/work)

(The only purpose of the bsd.pkg.mk is to prevent running this command in the wrong directory.)

If you have set WRKOBJDIR in mk.conf, remove that directory as well.

21.5.3.5. Other possible reasons

On platforms other than BSD, third-party packages are installed in /usr/include, together with the base system. This means that pkgsrc cannot distinguish between headers provided by the base system (which it needs) and headers from third-party packages (which are often included in pkgsrc as well). This can lead to subtle version mismatches.

In pkgsrc installations that have been active for several years, it may happen that some files are manually deleted. To exclude this unlikely reason, run pkg_admin check.

It may help to run pkg_admin rebuild-tree to check/fix dependencies.

If all of the above doesn't help, see Chapter 2, Getting help for contact information. Be prepared to describe what you have tried so far and what any error messages were.

21.5.4. Undefined reference to ...

This error message often means that a package did not link to a shared library it needs. The following functions are known to cause this error message over and over.

Function Library Affected platforms
accept, bind, connect -lsocket Solaris
crypt -lcrypt DragonFly, NetBSD
dlopen, dlsym -ldl Linux
gethost* -lnsl Solaris
inet_aton -lresolv Solaris
nanosleep, sem_*, timer_* -lrt Solaris
openpty -lutil Linux

To fix these linker errors, it is often sufficient to add LIBS.OperatingSystem+= -lfoo to the package Makefile and then run bmake clean; bmake.

21.5.4.1. The SunPro compiler and inline functions

When you are using the SunPro compiler, there is another possibility. That compiler cannot handle the following code:

extern int extern_func(int);

static inline int
inline_func(int x)
{
        return extern_func(x);
}

int main(void)
{
        return 0;
}

It generates the code for inline_func even if that function is never used. This code then refers to extern_func, which can usually not be resolved. To solve this problem you can try to tell the package to disable inlining of functions.

21.5.4.2. Missing atomic functions

When building for older machine architectures (e.g., i386, PowerPC), builds may fail because the package expects modern 64-bit atomic functions which the underlying hardware either doesn't support, or will only support with specific compiler flags. This is generally handled via inclusion of mk/atomic64.mk.

21.5.5. Running out of memory

Sometimes packages fail to build because the compiler runs into an operating system specific soft limit. With the UNLIMIT_RESOURCES variable pkgsrc can be told to unlimit the resources. The allowed values are any combination of cputime, datasize, memorysize, stacksize and virtualsize. Setting this variable is similar to running the shell builtin ulimit command to raise the maximum data segment size or maximum stack size of a process, respectively, to their hard limits.

21.6. The install phase

21.6.1. Creating needed directories

The BSD-compatible install supplied with some operating systems cannot create more than one directory at a time. As such, you should call ${INSTALL_*_DIR} like this:

${INSTALL_DATA_DIR} ${PREFIX}/dir1
${INSTALL_DATA_DIR} ${PREFIX}/dir2

Instead of running the install commands directly, you can also append dir1 dir2 to the INSTALLATION_DIRS variable, which will automatically do the right thing.

21.6.2. Where to install documentation

In general, documentation should be installed into ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME_NOREV} (the latter includes the version number of the package).

Many modern packages using GNU autoconf allow to set the directory where HTML documentation is installed with the --with-html-dir option. Sometimes using this flag is needed because otherwise the documentation ends up in ${PREFIX}/share/doc/html or other places. In pkgsrc, the HTML documentation should go into the package-specific directory, just like any other documentation.

An exception to the above is that library API documentation generated with the textproc/gtk-doc tools, for use by special browsers (devhelp) should be left at their default location, which is ${PREFIX}/share/gtk-doc. Such documentation can be recognized from files ending in .devhelp or .devhelp2. (It is also acceptable to install such files in ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME}; the .devhelp* file must be directly in that directory then, no additional subdirectory level is allowed in this case. This is usually achieved by using --with-html-dir=${PREFIX}/share/doc. ${PREFIX}/share/gtk-doc is preferred though.)

21.6.3. Installing highscore files

Certain packages, most of them in the games category, install a score file that allows all users on the system to record their highscores. In order for this to work, the binaries need to be installed setgid and the score files owned by the appropriate group and/or owner (traditionally the "games" user/group). Set USE_GAMESGROUP to yes to support this. The following variables, documented in more detail in mk/defaults/mk.conf, control this behaviour: GAMEDATAMODE, GAMEDIRMODE, GAMES_GROUP, GAMEMODE, GAME_USER. Other useful variables are: GAMEDIR_PERMS, GAMEDATA_PERMS and SETGID_GAMES_PERMS.

An example that illustrates some of the variables described above is games/moon-buggy. OWN_DIRS_PERMS is used to properly set directory permissions of the directory where the scorefile is saved, REQD_FILES_PERMS is used to create a dummy scorefile (mbscore) with the proper permissions and SPECIAL_PERMS is used to install setgid the game binary:

USE_GAMESGROUP=         yes

BUILD_DEFS+=            VARBASE

OWN_DIRS_PERMS+=        ${VARBASE}/games/moon-buggy ${GAMEDIR_PERMS}
REQD_FILES_PERMS+=      /dev/null ${VARBASE}/games/moon-buggy/mbscore ${GAMEDATA_PERMS}
SPECIAL_PERMS+=         ${PREFIX}/bin/moon-buggy ${SETGID_GAMES_PERMS}

Various INSTALL_* variables are also available: INSTALL_GAME to install setgid game binaries, INSTALL_GAME_DIR to install game directories that are needed to be accessed by setgid games and INSTALL_GAME_DATA to install scorefiles.

A package should therefore never hard code file ownership or access permissions but rely on *_PERMS as described above or alternatively on INSTALL_GAME, INSTALL_GAME_DATA and INSTALL_GAME_DIR to set these correctly.

21.6.4. Adding DESTDIR support to packages

DESTDIR support means that a package installs into a staging directory, not the final location of the files. Then a binary package is created which can be used for installation as usual. There are two ways: Either the package must install as root (destdir) or the package can install as non-root user (user-destdir).

  • PKG_DESTDIR_SUPPORT has to be set to destdir or user-destdir. By default PKG_DESTDIR_SUPPORT is set to user-destdir to help catching more potential packaging problems. If bsd.prefs.mk is included in the Makefile, PKG_DESTDIR_SUPPORT needs to be set before the inclusion.

  • All installation operations have to be prefixed with ${DESTDIR}.

  • automake gets this DESTDIR mostly right automatically. Many manual rules and pre/post-install often are incorrect; fix them.

  • If files are installed with special owner/group use SPECIAL_PERMS.

  • In general, packages should support UNPRIVILEGED to be able to use DESTDIR.

21.6.5. Packages with hardcoded paths to other interpreters

Your package may also contain scripts with hardcoded paths to other interpreters besides (or as well as) Perl. To correct the full pathname to the script interpreter, you need to set the following definitions in your Makefile (we shall use tclsh in this example):

REPLACE_INTERPRETER+=   tcl
REPLACE.tcl.old=        .*/bin/tclsh
REPLACE.tcl.new=        ${PREFIX}/bin/tclsh
REPLACE_FILES.tcl=      # list of tcl scripts which need to be fixed,
# relative to ${WRKSRC}, just as in REPLACE_PERL

21.6.6. Packages installing Perl modules

Makefiles of packages providing perl5 modules should include the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

Perl5 modules will install into different places depending on the version of perl used during the build process. To address this, pkgsrc will append lines to the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of packlist files relative to PERL5_PACKLIST_DIR (PERL5_INSTALLVENDORARCH by default), e.g.:

PERL5_PACKLIST= auto/Pg/.packlist

The perl5 config variables installarchlib, installscript, installvendorbin, installvendorscript, installvendorarch, installvendorlib, installvendorman1dir, and installvendorman3dir represent those locations in which components of perl5 modules may be installed, provided as variable with uppercase and prefixed with PERL5_, e.g. PERL5_INSTALLARCHLIB and may be used by perl5 packages that don't have a packlist. These variables are also substituted for in the PLIST as uppercase prefixed with PERL5_SUB_.

21.6.7. Packages installing pkg-config files

Some packages, usually those providing libraries, install pkg-config files so that their headers and libraries can easily be found. The file names end with .pc.

Most of the time, these files only provide the linker flags for the library, but do not include the flags for setting the rpath so the libraries can also be found at runtime. Since this is so common, pkgsrc provides PKGCONFIG_OVERRIDE for this. Many packages generate the .pc from .pc.in, in that case add those files to the PKGCONFIG_OVERRIDE variable:

PKGCONFIG_OVERRIDE+=   foo.pc.in
    

For packages using meson, the files are generated during build and you also need to change the phase in which the replacement is done. For example:

PKGCONFIG_OVERRIDE+=            output/meson-private/foo.pc
PKGCONFIG_OVERRIDE_STAGE=       post-build
    

21.6.8. Packages installing info files

Some packages install info files or use the makeinfo or install-info commands. INFO_FILES should be defined in the package Makefile so that INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info directory file. The install-info command used for the info files registration is either provided by the system, or by a special purpose package automatically added as dependency if needed.

PKGINFODIR is the directory under ${PREFIX} where info files are primarily located. PKGINFODIR defaults to info and can be overridden by the user.

The info files for the package should be listed in the package PLIST; however any split info files need not be listed.

A package which needs the makeinfo command at build time must add makeinfo to USE_TOOLS in its Makefile. If a minimum version of the makeinfo command is needed it should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a minimum version of 3.12 is required. If the system does not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

The build and installation process of the software provided by the package should not use the install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

To achieve this goal, the pkgsrc infrastructure creates overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

The script overriding install-info has no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of TEXINFO_REQD either runs the appropriate makeinfo command or exit on error.

21.6.9. Packages installing man pages

All packages that install manual pages should install them into the same directory, so that there is one common place to look for them. In pkgsrc, this place is ${PREFIX}/${PKGMANDIR}, and this expression should be used in packages. The default for PKGMANDIR is man. Another often-used value is share/man.

Note

The support for a custom PKGMANDIR is far from complete.

The PLIST files can just use man/ as the top level directory for the man page file entries, and the pkgsrc framework will convert as needed. In all other places, the correct PKGMANDIR must be used.

Packages that are configured with GNU_CONFIGURE set as yes, by default will use the ./configure --mandir switch to set where the man pages should be installed. The path is GNU_CONFIGURE_MANDIR which defaults to ${PREFIX}/${PKGMANDIR}.

Packages that use GNU_CONFIGURE but do not use --mandir, can set CONFIGURE_HAS_MANDIR to no. Or if the ./configure script uses a non-standard use of --mandir, you can set GNU_CONFIGURE_MANDIR as needed.

See Section 19.5, “Man page compression” for information on installation of compressed manual pages.

21.6.10. Packages installing X11 fonts

If a package installs font files, you will need to rebuild the fonts database in the directory where they get installed at installation and deinstallation time. This can be automatically done by using the pkginstall framework.

You can list the directories where fonts are installed in the FONTS_DIRS.type variables, where type can be one of ttf, type1 or x11. Also make sure that the database file fonts.dir is not listed in the PLIST.

Note that you should not create new directories for fonts; instead use the standard ones to avoid that the user needs to manually configure his X server to find them.

21.6.11. Packages installing SGML or XML data

If a package installs SGML or XML data files that need to be registered in system-wide catalogs (like DTDs, sub-catalogs, etc.), you need to take some extra steps:

  1. Include ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in system-wide catalogs at installation and deinstallation time.

  2. Set SGML_CATALOGS to the full path of any SGML catalogs installed by the package.

  3. Set XML_CATALOGS to the full path of any XML catalogs installed by the package.

  4. Set SGML_ENTRIES to individual entries to be added to the SGML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

  5. Set XML_ENTRIES to individual entries to be added to the XML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

21.6.12. Packages installing extensions to the MIME database

If a package provides extensions to the MIME database by installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

  1. Include ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the package.

  2. Check the PLIST and remove any entries under the share/mime directory, except for files saved under share/mime/packages. The former are handled automatically by the update-mime-database program, but the latter are package-dependent and must be removed by the package that installed them in the first place.

  3. Remove any share/mime/* directories from the PLIST. They will be handled by the shared-mime-info package.

21.6.13. Packages using intltool

If a package uses intltool during its build, add intltool to the USE_TOOLS, which forces it to use the intltool package provided by pkgsrc, instead of the one bundled with the distribution file.

This tracks intltool's build-time dependencies and uses the latest available version; this way, the package benefits of any bug fixes that may have appeared since it was released.

21.6.14. Packages installing startup scripts

If a package contains a rc.d script, it won't be copied into the startup directory by default, but you can enable it, by adding the option PKG_RCD_SCRIPTS=YES in mk.conf. This option will copy the scripts into /etc/rc.d when a package is installed, and it will automatically remove the scripts when the package is deinstalled.

21.6.15. Packages installing TeX modules

If a package installs TeX packages into the texmf tree, the ls-R database of the tree needs to be updated.

Note

Except the main TeX packages such as kpathsea, packages should install files into ${PREFIX}/share/texmf-dist, not ${PREFIX}/share/texmf.

  1. Include ../../print/kpathsea/texmf.mk. This takes care of rebuilding the ls-R database at installation and deinstallation time.

  2. If your package installs files into a texmf tree other than the one at ${PREFIX}/share/texmf-dist, set TEX_TEXMF_DIRS to the list of all texmf trees that need database update.

    If your package also installs font map files that need to be registered using updmap, include ../../print/tex-tetex/map.mk and set TEX_MAP_FILES and/or TEX_MIXEDMAP_FILES to the list of all such font map files. Then updmap will be run automatically at installation/deinstallation to enable/disable font map files for TeX output drivers.

  3. Make sure that none of ls-R databases are included in PLIST, as they will be removed only by the kpathsea package.

21.6.16. Packages supporting running binaries in emulation

There are some packages that provide libraries and executables for running binaries from a one operating system on a different one (if the latter supports it). One example is running Linux binaries on NetBSD.

The pkgtools/rpm2pkg helps in extracting and packaging Linux rpm packages.

The CHECK_SHLIBS can be set to no to avoid the check-shlibs target, which tests if all libraries for each installed executable can be found by the dynamic linker. Since the standard dynamic linker is run, this fails for emulation packages, because the libraries used by the emulation are not in the standard directories.

21.6.17. Packages installing hicolor icons

If a package installs images under the share/icons/hicolor and/or updates the share/icons/hicolor/icon-theme.cache database, you need to take some extra steps to make sure that the shared theme directory is handled appropriately and that the cache database is rebuilt:

  1. Include ../../graphics/hicolor-icon-theme/buildlink3.mk.

  2. Check the PLIST and remove the entry that refers to the theme cache.

  3. Ensure that the PLIST does not remove the shared icon directories from the share/icons/hicolor hierarchy because they will be handled automatically.

The best way to verify that the PLIST is correct with respect to the last two points is to regenerate it using make print-PLIST.

21.6.18. Packages installing desktop files

If a package installs .desktop files under share/applications and these include MIME information (MimeType key), you need to take extra steps to ensure that they are registered into the MIME database:

  1. Include ../../sysutils/desktop-file-utils/desktopdb.mk.

  2. Check the PLIST and remove the entry that refers to the share/applications/mimeinfo.cache file. It will be handled automatically.

The best way to verify that the PLIST is correct with respect to the last point is to regenerate it using make print-PLIST.

21.7. Marking packages as having problems

In some cases one does not have the time to solve a problem immediately. In this case, one can plainly mark a package as broken. For this, one just sets the variable BROKEN to the reason why the package is broken (similar to the PKG_FAIL_REASON variable). A user trying to build the package will immediately be shown this message, and the build will not be even tried.

BROKEN packages are removed from pkgsrc in irregular intervals.

Chapter 22. GNOME packaging and porting

Quoting GNOME's web site:

The GNOME project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.

pkgsrc provides a seamless way to automatically build and install a complete GNOME environment under many different platforms. We can say with confidence that pkgsrc is one of the most advanced build and packaging systems for GNOME due to its included technologies buildlink3, the wrappers and tools framework and automatic configuration file management. Lots of efforts are put into achieving a completely clean deinstallation of installed software components.

Given that pkgsrc is NetBSD's official packaging system, the above also means that great efforts are put into making GNOME work under this operating system.

This chapter is aimed at pkgsrc developers and other people interested in helping our GNOME porting and packaging efforts. It provides instructions on how to manage the existing packages and some important information regarding their internals.

22.1. Meta packages

pkgsrc includes three GNOME-related meta packages:

  • meta-pkgs/gnome-base: Provides the core GNOME desktop environment. It only includes the necessary bits to get it to boot correctly, although it may lack important functionality for daily operation. The idea behind this package is to let end users build their own configurations on top of this one, first installing this meta package to achieve a functional setup and then adding individual applications.

  • meta-pkgs/gnome: Provides a complete installation of the GNOME platform and desktop as defined by the GNOME project; this is based on the components distributed in the platform/x.y/x.y.z/sources and desktop/x.y/x.y.z/sources directories of the official FTP server. Developer-only tools found in those directories are not installed unless required by some other component to work properly. Similarly, packages from the bindings set (bindings/x.y/x.y.z/sources) are not pulled in unless required as a dependency for an end-user component. This package "extends" meta-pkgs/gnome-base.

  • meta-pkgs/gnome-devel: Installs all the tools required to build a GNOME component when fetched from the CVS repository. These are required to let the autogen.sh scripts work appropriately.

In all these packages, the DEPENDS lines are sorted in a way that eases updates: a package may depend on other packages listed before it but not on any listed after it. It is very important to keep this order to ease updates so... do not change it to alphabetical sorting!

22.2. Packaging a GNOME application

Almost all GNOME applications are written in C and use a common set of tools as their build system. Things get different with the new bindings to other languages (such as Python), but the following will give you a general idea on the minimum required tools:

  • Almost all GNOME applications use the GNU Autotools as their build system. As a general rule you will need to tell this to your package:

    GNU_CONFIGURE=  yes
    USE_LIBTOOL=    yes
    USE_TOOLS+=     gmake
    
  • If the package uses pkg-config to detect dependencies, add this tool to the list of required utilities:

    USE_TOOLS+=     pkg-config
    

    Also use pkgtools/verifypc at the end of the build process to ensure that you did not miss to specify any dependency in your package and that the version requirements are all correct.

  • If the package uses intltool, be sure to add intltool to the USE_TOOLS to handle dependencies and to force the package to use the latest available version.

  • If the package uses gtk-doc (a documentation generation utility), do not add a dependency on it. The tool is rather big and the distfile should come with pregenerated documentation anyway; if it does not, it is a bug that you ought to report. For such packages you should disable gtk-doc (unless it is the default):

    CONFIGURE_ARGS+=        --disable-gtk-doc
    

    The default location of installed HTML files (share/gtk-doc/<package-name>) is correct and should not be changed unless the package insists on installing them somewhere else. Otherwise programs as devhelp will not be able to open them. You can do that with an entry similar to:

    CONFIGURE_ARGS+=        --with-html-dir=${PREFIX}/share/gtk-doc/...
    

GNOME uses multiple shared directories and files under the installation prefix to maintain databases. In this context, shared means that those exact same directories and files are used among several different packages, leading to conflicts in the PLIST. pkgsrc currently includes functionality to handle the most common cases, so you have to forget about using @@unexec ${RMDIR} lines in your file lists and omitting shared files from them. If you find yourself doing those, your package is most likely incorrect.

The following table lists the common situations that result in using shared directories or files. For each of them, the appropriate solution is given. After applying the solution be sure to regenerate the package's file list with make print-PLIST and ensure it is correct.

Table 22.1. PLIST handling for GNOME packages

If the package... Then...
Installs icons under the share/icons/hicolor hierarchy or updates share/icons/hicolor/icon-theme.cache. See Section 21.6.17, “Packages installing hicolor icons”.
Installs files under share/mime/packages. See Section 21.6.12, “Packages installing extensions to the MIME database”.
Installs .desktop files under share/applications and these include MIME information. See Section 21.6.18, “Packages installing desktop files”.

22.3. Updating GNOME to a newer version

When seeing GNOME as a whole, there are two kinds of updates:

Major update

Given that there is still a very long way for GNOME 3 (if it ever appears), we consider a major update one that goes from a 2.X version to a 2.Y one, where Y is even and greater than X. These are hard to achieve because they introduce lots of changes in the components' code and almost all GNOME distfiles are updated to newer versions. Some of them can even break API and ABI compatibility with the previous major version series. As a result, the update needs to be done all at once to minimize breakage.

A major update typically consists of around 80 package updates and the addition of some new ones.

Minor update

We consider a minor update one that goes from a 2.A.X version to a 2.A.Y one where Y is greater than X. These are easy to achieve because they do not update all GNOME components, can be done in an incremental way and do not break API nor ABI compatibility.

A minor update typically consists of around 50 package updates, although the numbers here may vary a lot.

In order to update the GNOME components in pkgsrc to a new stable release (either major or minor), the following steps should be followed:

  1. Get a list of all the tarballs that form the new release by using the following commands. These will leave the full list of the components' distfiles into the list.txt file:

    % echo ls "*.tar.bz2" | \
        ftp -V ftp://ftp.gnome.org/pub/gnome/platform/x.y/x.y.z/sources/ | \
        awk '{ print $9 }' >list.txt
    % echo ls "*.tar.bz2" | \
        ftp -V ftp://ftp.gnome.org/pub/gnome/desktop/x.y/x.y.z/sources/ | \
        awk '{ print $9 }' >>list.txt
  2. Open each meta package's Makefile and bump their version to the release you are updating them to. The three meta packages should be always consistent with versioning. Obviously remove any PKGREVISIONs that might be in them.

  3. For each meta package, update all its DEPENDS lines to match the latest versions as shown by the above commands. Do not list any newer version (even if found in the FTP) because the meta packages are supposed to list the exact versions that form a specific GNOME release. Exceptions are permitted here if a newer version solves a serious issue in the overall desktop experience; these typically come in the form of a revision bump in pkgsrc, not in newer versions from the developers.

    Packages not listed in the list.txt file should be updated to the latest version available (if found in pkgsrc). This is the case, for example, of the dependencies on the GNU Autotools in the meta-pkgs/gnome-devel meta package.

  4. Generate a patch from the modified meta packages and extract the list of "new" lines. This will provide you an outline on what packages need to be updated in pkgsrc and in what order:

    % cvs diff -u gnome-devel gnome-base gnome | grep '^+D' >todo.txt
  5. For major desktop updates it is recommended to zap all your installed packages and start over from scratch at this point.

  6. Now comes the longest step by far: iterate over the contents of todo.txt and update the packages listed in it in order. For major desktop updates none of these should be committed until the entire set is completed because there are chances of breaking not-yet-updated packages.

  7. Once the packages are up to date and working, commit them to the tree one by one with appropriate log messages. At the end, commit the three meta package updates and all the corresponding changes to the doc/CHANGES-<YEAR> and pkgsrc/doc/TODO files.

22.4. Patching guidelines

GNOME is a very big component in pkgsrc which approaches 100 packages. Please, it is very important that you always, always, always feed back any portability fixes you do to a GNOME package to the mainstream developers (see Section 12.3.5, “Feedback to the author”). This is the only way to get their attention on portability issues and to ensure that future versions can be built out-of-the box on NetBSD. The less custom patches in pkgsrc, the easier further updates are. Those developers in charge of issuing major GNOME updates will be grateful if you do that.

The most common places to report bugs are the GNOME's GitLab and the freedesktop.org's GitLab. Not all components use these to track bugs, but most of them do. Do not be short on your reports: always provide detailed explanations of the current failure, how it can be improved to achieve maximum portability and, if at all possible, provide a patch against the main Git branch. The more verbose you are, the higher chances of your patch being accepted.

Also, please avoid using preprocessor magic to fix portability issues. While the FreeBSD GNOME people are doing a great job in porting GNOME to their operating system, the official GNOME sources are now plagued by conditionals that check for __FreeBSD__ and similar macros. This hurts portability. Please see our patching guidelines (Section 12.3.4, “Patching guidelines”) for more details.

Chapter 23. Submitting and Committing

23.1. Submitting binary packages

Our policy is that we accept binaries only from pkgsrc developers to guarantee that the packages don't contain any trojan horses etc. This is not to annoy anyone but rather to protect our users! You're still free to put up your home-made binary packages and tell the world where to get them. NetBSD developers doing bulk builds and wanting to upload them please see Chapter 8, Creating binary packages for everything in pkgsrc (bulk builds).

23.2. Submitting source packages (for non-NetBSD-developers)

Firstly, you can import new packages into pkgsrc-wip (pkgsrc work-in-progress); see the homepage at https://pkgsrc.org/wip/ for details.

Next, check that your package is complete, compiles and runs well; see Chapter 14, Creating a new pkgsrc package from scratch and the rest of this document. Run the pkgtools/pkglint tool and fix any errors that appear.

Finally, send a report to the pkgsrc bug tracking system, either with the send-pr(1) command, or if you don't have that, go to the web page https://www.NetBSD.org/support/send-pr.html, which contains some instructions and a link to a form where you can submit packages. The sysutils/gtk-send-pr package is also available as a substitute for either of the above two tools.

In the form of the problem report, the category should be pkg, the synopsis should include the package name and version number, and the description field should contain a short description of your package (contents of the COMMENT variable or DESCR file are OK).

23.3. General notes when adding, updating, or removing packages

Please note all package additions, updates, moves, and removals in pkgsrc/doc/CHANGES-YYYY. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on www.NetBSD.org and other sites. Additionally, check the pkgsrc/doc/TODO file and remove the entry for the package you updated or removed, in case it was mentioned there.

When the PKGREVISION of a package is bumped, the change should appear in pkgsrc/doc/CHANGES-YYYY if it is security related or otherwise relevant. Mass bumps that result from a dependency being updated should not be mentioned. In all other cases it's the developer's decision.

There is a make target that helps in creating proper CHANGES-YYYY entries: make changes-entry. It uses the optional CTYPE and NETBSD_LOGIN_NAME variables. The general usage is to first make sure that your CHANGES-YYYY file is up-to-date (to avoid having to resolve conflicts later-on) and then to cd to the package directory. For package updates, make changes-entry is enough. For new packages, or package moves or removals, set the CTYPE variable on the command line to "Added", "Moved", or "Removed". You can set NETBSD_LOGIN_NAME in mk.conf if your local login name is not the same as your NetBSD login name. The target also automatically removes possibly existing entries for the package in the TODO file. Don't forget to commit the changes, e.g. by using make commit-changes-entry! If you are not using a checkout directly from cvs.NetBSD.org, but e.g. a local copy of the repository, you can set USE_NETBSD_REPO=yes. This makes the cvs commands use the main repository.

23.4. Commit Messages

For several years, there have been mirrors of pkgsrc in fossil, git, and hg. Standard practise when using these tools is to make the first line of a commit message function as a summary that can be read without the rest, such as is commonly done with "git log --oneline". For this reason, we have the following guidelines for pkgsrc commit messages:

  • Start the commit message with a line that explains the big picture in 65 characters or less. When a commit is for one package, include the name of the package. For updates, include the version to which it is updated.

  • Leave the next line empty.

  • Then come the details for the commit (changes in that package, reason for a change) and any relevant PRs. Wrap this section.

Here is an example:

libxslt: update to 1.0.30

Changes since 1.0.29:
...

Here is another example:

mk/bsd.pkg.mk: enable SSP by default on NetBSD

(rationale)

Commit messages are final: no cvs admin is allowed on the pkgsrc repository to change commit messages.

23.5. Committing: Adding a package to CVS

This section is only of interest for pkgsrc developers with write access to the pkgsrc repository.

When the package is finished, cvs add the files. Start by adding the directory and then files in the directory. Don't forget to add the new package to the category's Makefile. Make sure you don't forget any files; you can check by running cvs status. An example:

$ cd .../pkgsrc/category
$ cvs add pkgname
$ cd pkgname
$ cvs add DESCR Makefile PLIST distinfo buildlink3.mk patches
$ cvs add patches/p*
$ cvs status | less
$ cvs commit
$ cd ..
$ vi Makefile # add SUBDIR+=pkgname line
$ cvs commit Makefile
$ cd pkgname
$ make CTYPE=Added commit-changes-entry

The commit message of the initial import should include part of the DESCR file, so people reading the mailing lists know what the package is/does.

Also mention the new package in pkgsrc/doc/CHANGES-20xx.

Previously, cvs import was suggested, but it was much easier to get wrong than cvs add.

23.6. Updating a package to a newer version

Please always put a concise, appropriate and relevant summary of the changes between old and new versions into the commit log when updating a package. There are various reasons for this:

  • A URL is volatile, and can change over time. It may go away completely or its information may be overwritten by newer information.

  • Having the change information between old and new versions in our CVS repository is very useful for people who use either cvs or anoncvs.

  • Having the change information between old and new versions in our CVS repository is very useful for people who read the pkgsrc-changes mailing list, so that they can make tactical decisions about when to upgrade the package.

Please also recognize that, just because a new version of a package has been released, it should not automatically be upgraded in the CVS repository. We prefer to be conservative in the packages that are included in pkgsrc - development or beta packages are not really the best thing for most places in which pkgsrc is used. Please use your judgement about what should go into pkgsrc, and bear in mind that stability is to be preferred above new and possibly untested features.

23.7. Renaming a package in pkgsrc

Renaming packages is not recommended.

When renaming packages, be sure to fix any references to the old name in other Makefiles, options, buildlink files, etc.

Also, when renaming a package, please add the package name and version pattern(s) of the previous package to SUPERSEDES. This may be repeated for multiple renames. The new package would be an exact replacement. Example:

SUPERSEDES+=    p5-IO-Compress-Zlib<2.017
SUPERSEDES+=    optcomp-[0-9]*

Note that successor in the CHANGES-YYYY file doesn't necessarily mean that it supersedes, as that successor may not be an exact replacement but is a suggestion for the replaced functionality.

23.8. Moving a package in pkgsrc

It is preferred that packages are not renamed or moved, but if needed please follow these steps.

  1. Make a copy of the directory somewhere else.

  2. Remove all CVS dirs.

    Alternatively to the first two steps you can also do:

    % cvs -d user@@cvs.NetBSD.org:/cvsroot export -D today pkgsrc/category/package

    and use that for further work.

  3. Fix CATEGORIES and any DEPENDS paths that just did ../package instead of ../../category/package.

  4. In the modified package's Makefile, consider setting PREV_PKGPATH to the previous category/package pathname. The PREV_PKGPATH can be used by tools for doing an update using pkgsrc building; for example, it can search the pkg_summary(5) database for PREV_PKGPATH (if no SUPERSEDES) and then use the corresponding new PKGPATH for that moved package. Note that it may have multiple matches, so the tool should also check on the PKGBASE too. The PREV_PKGPATH probably has no value unless SUPERSEDES is not set, i.e. PKGBASE stays the same.

  5. cvs add the modified package in the new place.

  6. Check if any package depends on it:

    % cd /usr/pkgsrc
    % grep /package */*/Makefile* */*/buildlink*
  7. Fix paths in packages from step 5 to point to new location.

  8. cvs rm (-f) the package at the old location.

  9. Remove from oldcategory/Makefile.

  10. Add to newcategory/Makefile.

  11. Commit the changed and removed files:

    % cvs commit oldcategory/package oldcategory/Makefile newcategory/Makefile

    (and any packages from step 5, of course).

Chapter 24. Frequently Asked Questions

This section contains the answers to questions that may arise when you are writing a package. If you don't find your question answered here, first have a look in the other chapters, and if you still don't have the answer, ask on the pkgsrc-users mailing list.

24.1. What is the difference between MAKEFLAGS, .MAKEFLAGS and MAKE_FLAGS?
24.2. What is the difference between MAKE, GMAKE and MAKE_PROGRAM?
24.3. What is the difference between CC, PKG_CC and PKGSRC_COMPILER?
24.4. Why does make show-var VARNAME=BUILDLINK_PREFIX.foo say it's empty?
24.5. What does ${MASTER_SITE_SOURCEFORGE:=package/} mean? I don't understand the := inside it.
24.6. Which mailing lists are there for package developers?
24.7. Where is the pkgsrc documentation?
24.8. I have a little time to kill. What shall I do?

24.1.

What is the difference between MAKEFLAGS, .MAKEFLAGS and MAKE_FLAGS?

MAKEFLAGS are the flags passed to the pkgsrc-internal invocations of make(1).

MAKE_FLAGS are the flags that are passed to the MAKE_PROGRAM when building the package.

.MAKEFLAGS is an internal variable of bmake and should not be used by packages.

24.2.

What is the difference between MAKE, GMAKE and MAKE_PROGRAM?

MAKE is the path to the make(1) program that is used in the pkgsrc infrastructure.

GMAKE is the path to GNU Make, but you need to say USE_TOOLS+=gmake to use that.

MAKE_PROGRAM is the path to the Make program that is used for building the package.

24.3.

What is the difference between CC, PKG_CC and PKGSRC_COMPILER?

CC is the path to the real C compiler, which can be configured by the pkgsrc user.

PKG_CC is the path to the compiler wrapper.

PKGSRC_COMPILER is not a path to a compiler, but the type of compiler that should be used. See mk/compiler.mk for more information about the latter variable.

24.4.

Why does make show-var VARNAME=BUILDLINK_PREFIX.foo say it's empty?

For optimization reasons, some variables are only available in the wrapper phase and later. To simulate the wrapper phase, append PKG_PHASE=wrapper to the above command.

24.5.

What does ${MASTER_SITE_SOURCEFORGE:=package/} mean? I don't understand the := inside it.

The := is not an assignment operator, even though it may look like one. Instead, it is a degenerate form of ${LIST:old_string=new_string}, which is documented in the make(1) man page and which is commonly used in the form ${SRCS:.c=.o}. In the case of MASTER_SITE_*, old_string is the empty string and new_string is package/. That's where the : and the = fall together.

24.6.

Which mailing lists are there for package developers?

tech-pkg

This is a list for technical discussions related to pkgsrc development, e.g. soliciting feedback for changes to pkgsrc infrastructure, proposed new features, questions related to porting pkgsrc to a new platform, advice for maintaining a package, patches that affect many packages, help requests moved from pkgsrc-users when an infrastructure bug is found, etc.

pkgsrc-bugs

All bug reports in category "pkg" sent with send-pr(1) appear here. Please do not report your bugs here directly; use one of the other mailing lists.

24.7.

Where is the pkgsrc documentation?

There are many places where you can find documentation about pkgsrc:

  • The pkgsrc guide (this document) is a collection of chapters that explain large parts of pkgsrc, but some chapters tend to be outdated. Which ones they are is hard to say.

  • On the mailing list archives (see https://mail-index.NetBSD.org/), you can find discussions about certain features, announcements of new parts of the pkgsrc infrastructure and sometimes even announcements that a certain feature has been marked as obsolete. The benefit here is that each message has a date appended to it.

  • Many of the files in the mk/ directory start with a comment that describes the purpose of the file and how it can be used by the pkgsrc user and package authors. An easy way to find this documentation is to run bmake help.

  • The CVS log messages are a rich source of information, but they tend to be highly abbreviated, especially for actions that occur often. Some contain a detailed description of what has changed, but they are geared towards the other pkgsrc developers, not towards an average pkgsrc user. They also only document changes, so if you don't know what has been before, these messages may not be worth too much to you.

  • Some parts of pkgsrc are only implicitly documented, that is the documentation exists only in the mind of the developer who wrote the code. To get this information, use the cvs annotate command to see who has written it and ask on the tech-pkg mailing list, so that others can find your questions later (see above). To be sure that the developer in charge reads the mail, you may CC him or her.

24.8.

I have a little time to kill. What shall I do?

This is not really an FAQ yet, but here's the answer anyway.

  • Run pkg_chk -N (from the pkgtools/pkg_chk package). It will tell you about newer versions of installed packages that are available, but not yet updated in pkgsrc.

  • Browse pkgsrc/doc/TODO — it contains a list of suggested new packages and a list of cleanups and enhancements for pkgsrc that would be nice to have.

  • Review packages for which review was requested on the tech-pkg mailing list.

Part III. The pkgsrc infrastructure internals

Chapter 25. Design of the pkgsrc infrastructure

The pkgsrc infrastructure consists of many small Makefile fragments. Each such fragment needs a properly specified interface. This chapter explains how such an interface looks like.

25.1. The meaning of variable definitions

Whenever a variable is defined in the pkgsrc infrastructure, the location and the way of definition provide much information about the intended use of that variable. Additionally, more documentation may be found in a header comment or in this pkgsrc guide.

A special file is mk/defaults/mk.conf, which lists all variables that are intended to be user-defined. They are either defined using the ?= operator or they are left undefined because defining them to anything would effectively mean yes. All these variables may be overridden by the pkgsrc user in the MAKECONF file.

Outside this file, the following conventions apply: Variables that are defined using the ?= operator may be overridden by a package.

Variables that are defined using the = operator may be used read-only at run-time.

Variables whose name starts with an underscore must not be accessed outside the pkgsrc infrastructure at all. They may change without further notice.

Note

These conventions are currently not applied consistently to the complete pkgsrc infrastructure.

25.2. Avoiding problems before they arise

All variables that contain lists of things should default to being empty. Two examples that do not follow this rule are USE_LANGUAGES and DISTFILES. These variables cannot simply be modified using the += operator in package Makefiles (or other files included by them), since there is no guarantee whether the variable is already set or not, and what its value is. In the case of DISTFILES, the packages know the default value and just define it as in the following example.

DISTFILES=      ${DISTNAME}${EXTRACT_SUFX} additional-files.tar.gz

Because of the selection of this default value, the same value appears in many package Makefiles. Similarly for USE_LANGUAGES, but in this case the default value (c) is so short that it doesn't stand out. Nevertheless it is mentioned in many files.

25.3. Variable evaluation

25.3.1. At load time

Variable evaluation takes place either at load time or at runtime, depending on the context in which they occur. The contexts where variables are evaluated at load time are:

  • The right hand side of the := and != operators,

  • Make directives like .if or .for,

  • Dependency lines.

A special exception are references to the iteration variables of .for loops, which are expanded inline, no matter in which context they appear.

As the values of variables may change during load time, care must be taken not to evaluate them by accident. Typical examples for variables that should not be evaluated at load time are DEPENDS and CONFIGURE_ARGS. To make the effect more clear, here is an example:

CONFIGURE_ARGS=         # none
CFLAGS=                 -O
CONFIGURE_ARGS+=        CFLAGS=${CFLAGS:Q}

CONFIGURE_ARGS:=        ${CONFIGURE_ARGS}

CFLAGS+=                -Wall

This code shows how the use of the := operator can quickly lead to unexpected results. The first paragraph is fairly common code. The second paragraph evaluates the CONFIGURE_ARGS variable, which results in CFLAGS=-O. In the third paragraph, the -Wall is appended to the CFLAGS, but this addition will not appear in CONFIGURE_ARGS. In actual code, the three paragraphs from above typically occur in completely unrelated files.

25.3.2. At runtime

After all the files have been loaded, the values of the variables cannot be changed anymore. Variables that are used in the shell commands are expanded at this point.

25.4. How can variables be specified?

There are many ways in which the definition and use of a variable can be restricted in order to detect bugs and violations of the (mostly unwritten) policies. A package can be checked with pkglint -Wall to see whether it meets these rules.

25.5. Designing interfaces for Makefile fragments

Most of the .mk files fall into one of the following classes. Cases where a file falls into more than one class should be avoided as it often leads to subtle bugs.

25.5.1. Procedures with parameters

In a traditional imperative programming language some of the .mk files could be described as procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all variables in Makefiles have global scope care must be taken not to use parameter names that have already another meaning. For example, PKGNAME is a bad choice for a parameter name.

Procedures are completely evaluated at preprocessing time. That is, when calling a procedure all input parameters must be completely resolvable. For example, CONFIGURE_ARGS should never be an input parameter since it is very likely that further text will be added after calling the procedure, which would effectively apply the procedure to only a part of the variable. Also, references to other variables will be modified after calling the procedure.

A procedure can declare its output parameters either as suitable for use in preprocessing directives or as only available at runtime. The latter alternative is for variables that contain references to other runtime variables.

Procedures shall be written such that it is possible to call the procedure more than once. That is, the file must not contain multiple-inclusion guards.

Examples for procedures are mk/bsd.options.mk and mk/buildlink3/bsd.builtin.mk. To express that the parameters are evaluated at load time, they should be assigned using the := operator, which should be used only for this purpose.

25.5.2. Actions taken on behalf of parameters

Action files take some input parameters and may define runtime variables. They shall not define loadtime variables. There are action files that are included implicitly by the pkgsrc infrastructure, while other must be included explicitly.

An example for action files is mk/subst.mk.

25.6. The order in which files are loaded

Package Makefiles usually consist of a set of variable definitions, and include the file ../../mk/bsd.pkg.mk in the very last line. Before that, they may also include various other *.mk files if they need to query the availability of certain features like the type of compiler or the X11 implementation. Due to the heavy use of preprocessor directives like .if and .for, the order in which the files are loaded matters.

This section describes at which point the various files are loaded and gives reasons for that order.

25.6.1. The order in bsd.prefs.mk

The very first action in bsd.prefs.mk is to define some essential variables like OPSYS, OS_VERSION and MACHINE_ARCH.

Then, the user settings are loaded from the file specified in MAKECONF, which is usually mk.conf. After that, those variables that have not been overridden by the user are loaded from mk/defaults/mk.conf.

After the user settings, the system settings and platform settings are loaded, which may override the user settings.

Then, the tool definitions are loaded. The tool wrappers are not yet in effect. This only happens when building a package, so the proper variables must be used instead of the direct tool names.

As the last steps, some essential variables from the wrapper and the package system flavor are loaded, as well as the variables that have been cached in earlier phases of a package build.

25.6.2. The order in bsd.pkg.mk

First, bsd.prefs.mk is loaded.

Then, the various *-vars.mk files are loaded, which fill default values for those variables that have not been defined by the package. These variables may later be used even in unrelated files.

Then, the file bsd.pkg.error.mk provides the target error-check that is added as a special dependency to all other targets that use DELAYED_ERROR_MSG or DELAYED_WARNING_MSG.

Then, the package-specific hacks from hacks.mk are included.

Then, various other files follow. Most of them don't have any dependencies on what they need to have included before or after them, though some do.

The code to check PKG_FAIL_REASON and PKG_SKIP_REASON is then executed, which restricts the use of these variables to all the files that have been included before. Appearances in later files will be silently ignored.

Then, the files for the main targets are included, in the order of later execution, though the actual order should not matter.

At last, some more files are included that don't set any interesting variables but rather just define make targets to be executed.

Chapter 26. Regression tests

The pkgsrc infrastructure consists of a large codebase, and there are many corners where every little bit of a file is well thought out, making pkgsrc likely to fail as soon as anything is changed near those parts. To prevent most changes from breaking anything, a suite of regression tests should go along with every important part of the pkgsrc infrastructure. This chapter describes how regression tests work in pkgsrc and how you can add new tests.

26.1. Running the regression tests

You first need to install the pkgtools/pkg_regress package, which provides the pkg_regress command. Then you can simply run that command, which will run all tests in the regress/ directory.

26.2. Adding a new regression test

Every directory in the regress/ directory that contains a file called spec is considered a regression test. This file is a shell program that is included by the pkg_regress command. The following functions can be overridden to suit your needs.

26.2.1. Overridable functions

These functions do not take any parameters. Although they are called in set -e mode, they don't stop at the first failing command. See this Stack Overflow question for details.

do_setup

This function prepares the environment for the test. By default it does nothing.

do_test

This function runs the actual test. By default, it calls TEST_MAKE with the arguments MAKEARGS_TEST and writes its output including error messages into the file TEST_OUTFILE.

When defining this function, make sure that all output that needs to be checked is written to the correct output file. Example:

do_test() {
        echo "Example output"
} 1>$TEST_OUTFILE 2>&1
check_result

This function is run after the test and is typically used to compare the actual output from the one that is expected. It can make use of the various helper functions from the next section. Example:

check_result() {
        exit_status 0
        output_require "Example"
        output_require "^[[:alpha:]+[[:space:]][[:alpha:]]{6}$"
        output_prohibit "no such file or directory"
        regress_fail "expected $expected but got $actual for input $input"
}
do_cleanup

This function cleans everything up after the test has been run. By default it does nothing.

26.2.2. Helper functions

regress_fail message...

This function makes the test fail with the given error message.

exit_status expected

This function compares the exitcode of the do_test function with its first parameter. If they differ, the test will fail.

output_require regex...

This function checks for each of its parameters if the output from do_test matches the extended regular expression. If it does not, the test will fail. Example:

output_require "looks fine"
output_require "^[[:alpha:]+[[:space:]][[:alpha:]]{6}$"
output_prohibit regex...

This function checks for each of its parameters if the output from do_test() does not match the extended regular expression. If any of the regular expressions matches, the test will fail.

Chapter 27. Porting pkgsrc

The pkgsrc system has already been ported to many operating systems, hardware architectures and compilers. This chapter explains the necessary steps to make pkgsrc even more portable.

27.1. Porting pkgsrc to a new operating system

To port pkgsrc to a new operating system (called MyOS in this example), you need to touch the following files:

pkgtools/bootstrap-mk-files/files/mods/MyOS.sys.mk

This file contains some basic definitions, for example the name of the C compiler.

mk/bsd.prefs.mk

Insert code that defines the variables OPSYS, OS_VERSION, OPSYS_VERSION, LOWER_VENDOR, MACHINE_ARCH, OBJECT_FMT, APPEND_ELF, and the other variables that appear in this file.

mk/platform/MyOS.mk

This file contains the platform-specific definitions that are used by pkgsrc. Start by copying one of the other files and edit it to your needs.

mk/tools/tools.MyOS.mk

This file defines the paths to all the tools that are needed by one or the other package in pkgsrc, as well as by pkgsrc itself. Find out where these tools are on your platform and add them.

Now, you should be able to build some basic packages, like lang/perl5, shells/bash.

Appendix A. A simple example package: bison

We checked to find a piece of software that wasn't in the packages collection, and picked GNU bison. Quite why someone would want to have bison when Berkeley yacc is already present in the tree is beyond us, but it's useful for the purposes of this exercise.

A.1. files

A.1.1. Makefile

# $NetBSD$
#

DISTNAME=       bison-1.25
CATEGORIES=     devel
MASTER_SITES=   ${MASTER_SITE_GNU:=bison/}

MAINTAINER=     pkgsrc-users@@NetBSD.org
HOMEPAGE=       https://www.gnu.org/software/bison/bison.html
COMMENT=        GNU yacc clone

GNU_CONFIGURE=  yes
INFO_FILES=     yes

.include "../../mk/bsd.pkg.mk"

A.1.2. DESCR

GNU version of yacc.  Can make re-entrant parsers, and numerous other
improvements.  Why you would want this when Berkeley yacc(1) is part
of the NetBSD source tree is beyond me.

A.1.3. PLIST

@@comment $NetBSD$
bin/bison
man/man1/bison.1.gz
share/bison.simple
share/bison.hairy

A.1.4. Checking a package with pkglint

The NetBSD package system comes with pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and run pkglint:

$ pkglint
ERROR: Makefile: Each package must define its LICENSE.
WARN: Makefile:9: HOMEPAGE should migrate from http to https.
NOTE: PLIST:3: The .gz extension is unnecessary for manual pages.
WARN: PLIST:5: "share/bison.hairy" should be sorted before "share/bison.simple".
1 error, 2 warnings and 1 note found.
(Run "pkglint -e" to show explanations.)
(Run "pkglint -fs" to show what can be fixed automatically.)
(Run "pkglint -F" to automatically fix some issues.)

Depending on the supplied command line arguments (see pkglint(1)), more checks will be performed. Use e.g. pkglint -Wall for a very thorough check.

A.2. Steps for building, installing, packaging

Create the directory where the package lives, plus any auxiliary directories:

# cd /usr/pkgsrc/lang
# mkdir bison
# cd bison
# mkdir patches

Create Makefile, DESCR and PLIST (see Chapter 12, Package components - files, directories and contents) then continue with fetching the distfile:

# make fetch
>> bison-1.25.tar.gz doesn't seem to exist on this system.
>> Attempting to fetch from ftp://prep.ai.mit.edu/pub/gnu//.
Requesting ftp://prep.ai.mit.edu/pub/gnu//bison-1.25.tar.gz (via ftp://orpheus.amdahl.com:80/)
ftp: Error retrieving file: 500 Internal error

>> Attempting to fetch from ftp://wuarchive.wustl.edu/systems/gnu//.
Requesting ftp://wuarchive.wustl.edu/systems/gnu//bison-1.25.tar.gz (via ftp://orpheus.amdahl.com:80/)
ftp: Error retrieving file: 500 Internal error

>> Attempting to fetch from ftp://ftp.freebsd.org/pub/FreeBSD/distfiles//.
Requesting ftp://ftp.freebsd.org/pub/FreeBSD/distfiles//bison-1.25.tar.gz (via ftp://orpheus.amdahl.com:80/)
Successfully retrieved file.

Generate the checksum of the distfile into distinfo:

# make makedistinfo

Now compile:

# make
>> Checksum OK for bison-1.25.tar.gz.
===>  Extracting for bison-1.25
===>  Patching for bison-1.25
===>   Ignoring empty patch directory
===>  Configuring for bison-1.25
creating cache ./config.cache
checking for gcc... cc
checking whether we are using GNU C... yes
checking for a BSD compatible install... /usr/bin/install -c -o bin -g bin
checking how to run the C preprocessor... cc -E
checking for minix/config.h... no
checking for POSIXized ISC... no
checking whether cross-compiling... no
checking for ANSI C header files... yes
checking for string.h... yes
checking for stdlib.h... yes
checking for memory.h... yes
checking for working const... yes
checking for working alloca.h... no
checking for alloca... yes
checking for strerror... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
===>  Building for bison-1.25
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g LR0.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g allocate.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g closure.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g conflicts.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g derives.c
cc -c -DXPFILE=\"/usr/pkg/share/bison.simple\"  -DXPFILE1=\"/usr/pkg/share/bison.hairy\" -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1  -g  ./files.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g getargs.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g gram.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g lalr.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g lex.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g main.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g nullable.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g output.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g print.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g reader.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g reduce.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g symtab.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g warshall.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g version.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g getopt.c
cc -c -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -I./../include  -g getopt1.c
cc  -g -o bison LR0.o allocate.o closure.o conflicts.o derives.o files.o         getargs.o gram.o lalr.o lex.o                                   main.o nullable.o output.o print.o reader.o reduce.o symtab.o   warshall.o version.o getopt.o getopt1.o
./files.c:240: warning: mktemp() possibly used unsafely, consider using mkstemp()
rm -f bison.s1
sed -e "/^#line/ s|bison|/usr/pkg/share/bison|" < ./bison.simple > bison.s1

Everything seems OK, so install the files:

# make install
>> Checksum OK for bison-1.25.tar.gz.
===>  Installing for bison-1.25
sh ./mkinstalldirs /usr/pkg/bin /usr/pkg/share  /usr/pkg/info /usr/pkg/man/man1
rm -f /usr/pkg/bin/bison
cd /usr/pkg/share; rm -f bison.simple bison.hairy
rm -f /usr/pkg/man/man1/bison.1 /usr/pkg/info/bison.info*
install -c  -o bin -g bin -m 555 bison /usr/pkg/bin/bison
/usr/bin/install -c -o bin -g bin -m 644 bison.s1 /usr/pkg/share/bison.simple
/usr/bin/install -c -o bin -g bin -m 644 ./bison.hairy /usr/pkg/share/bison.hairy
cd .; for f in bison.info*;  do /usr/bin/install -c -o bin -g bin -m 644 $f /usr/pkg/info/$f; done
/usr/bin/install -c -o bin -g bin -m 644 ./bison.1 /usr/pkg/man/man1/bison.1
===>  Registering installation for bison-1.25

You can now use bison, and also - if you decide so - remove it with pkg_delete bison. Should you decide that you want a binary package, do this now:

# make package
>> Checksum OK for bison-1.25.tar.gz.
===>  Building package for bison-1.25
Creating package bison-1.25.tgz
Registering depends:.
Creating gzip'd tar ball in '/u/pkgsrc/lang/bison/bison-1.25.tgz'

Now that you don't need the source and object files any more, clean up:

# make clean
===>  Cleaning for bison-1.25

Appendix B. Security hardening

A number of mechanisms are available in pkgsrc to improve the security of the resulting system. This page describes the mechanisms, and gives hints about detecting and fixing problems.

Mechanisms can be enabled individually in mk.conf, and are individually described below.

Typically, a feature will cause some programs to fail to build or work when first enabled. This can be due to latent problems in the program, and can be due to other reasons. After enough testing to have confidence that user problems will be quite rare, individual mechanisms will be enabled by default.

For each mechanism, see the Caveats section below for an explanation of what might go wrong at compile time and at run time, and how to notice and address these problems.

B.1. Mechanisms

B.1.1. Enabled by default

B.1.1.1. PKGSRC_USE_FORTIFY

This allows substitute wrappers to be used for some commonly used library functions that do not have built-in bounds checking - but could in some cases.

Two mitigation levels are available:

  • "weak" only enables checks at compile-time.

  • "strong" enables checks at compile-time and runtime.

"strong" has been enabled by default since pkgsrc-2017Q3.

B.1.1.2. PKGSRC_USE_SSP

This enables a stack-smashing protection mitigation. It is done by adding a guard variable to functions with vulnerable objects. The guards are initialized when a function is entered and then checked when the function exits. The guard check will fail and the program forcibly exited if the variable was modified in the meantime. This can happen in case of buffer overflows or memory corruption, and therefore exposing these bugs.

Different mitigation levels are available:

  • "yes", which will only protect functions considered vulnerable by the compiler;

  • "all", which will protect every function;

  • "strong", the default, which will apply a better balance between the two settings above.

This mitigation is supported by both GCC and clang. It may be supported in additional compilers, possibly under a different name. It is particularly useful for unsafe programming languages, such as C/C++.

  • "yes" is enabled by default where known supported since pkgsrc-2017Q3.

  • "strong" is enabled by default where known supported since pkgsrc-2021Q4.

More details can be found here:

B.1.1.3. PKGSRC_MKPIE

This requests the creation of PIE (Position Independent Executables) for all executables. The PIE mechanism is normally used for shared libraries, so that they can be loaded at differing addresses at runtime. PIE itself does not have useful security properties; however, it is necessary to fully leverage some, such as ASLR. Some operating systems support Address Space Layout Randomization (ASLR), which causes different addresses to be used each time a program is run. This makes it more difficult for an attacker to guess addresses and thus makes exploits harder to construct. With PIE, ASLR can really be applied to the entire program, instead of the stack and heap only.

PIE executables will only be built for toolchains that are known to support PIE. Currently, this means NetBSD on x86, ARM, SPARC64, m68k, and MIPS.

PKGSRC_MKPIE was enabled by default after the pkgsrc-2021Q3 branch.

B.1.1.4. PKGSRC_USE_RELRO

This also makes the exploitation of some security vulnerabilities more difficult in some cases.

Two different mitigation levels are available:

  • partial (the default): the ELF sections are reordered so that internal data sections precede the program's own data sections, and non-PLT GOT is read-only;

  • full: in addition to partial RELRO, every relocation is performed immediately when starting the program, allowing the entire GOT to be read-only. This can greatly slow down startup of large programs.

This is currently supported by GCC. Many software distributions now enable this feature by default, at the "partial" level.

More details can be found here:

B.1.2. Not enabled by default

B.1.2.1. PKGSRC_MKREPRO

With this option, pkgsrc will try to build packages reproducibly. This allows packages built from the same tree and with the same options, to produce identical results bit by bit. This option should be combined with ASLR and PKGSRC_MKPIE to avoid predictable address offsets for attackers attempting to exploit security vulnerabilities.

More details can be found here:

More work likely needs to be done before pkgsrc is fully reproducible.

B.1.2.2. PKGSRC_USE_STACK_CHECK

This uses -fstack-check with GCC for another stack protection mitigation.

It asks the compiler to generate code verifying that it does not corrupt the stack. According to GCC's manual page, this is really only useful for multi-threaded programs.

B.2. Caveats

B.2.1. Problems with PKGSRC_MKPIE

B.2.1.1. Packages failing to build

A number of packages may fail to build with this option enabled. The failures are often related to the absence of the -fPIC compilation flag when building libraries or executables (or ideally -fPIE in the latter case). This flag is added to the CFLAGS already, but requires the package to actually support it.

B.2.1.1.1. How to fix

These instructions are meant as a reference only; they likely need to be adapted for many packages individually.

For packages using Makefiles:

MAKE_FLAGS+=	CFLAGS=${CFLAGS:Q}
MAKE_FLAGS+=	LDFLAGS=${LDFLAGS:Q}

For packages using Imakefiles:

MAKE_FLAGS+=	CCOPTIONS=${CFLAGS:Q}
MAKE_FLAGS+=	LOCAL_LDFLAGS=${LDFLAGS:Q}

B.2.1.2. Run-time crashes

Some programs may fail to run, or crash at random times once built as PIE. Two scenarios are essentially possible. This is nearly always due to a bug in the program being exposed due to ASLR.

B.2.1.3. Disabling PKGSRC_MKPIE on a per-package basis

Ideally, packages should be fixed for compatibility with MKPIE. However, in some cases this is very difficult, due to complex build systems, packages using non-standard toolchains, or programming languages with odd bootstrapping mechanisms.

To disable PKGSRC_MKPIE on a per-package basis, set MKPIE_SUPPORTED= no in the package's Makefile before bsd.prefs.mk is included.

B.2.2. Problems with PKGSRC_USE_FORTIFY

B.2.2.1. Packages failing to build

This feature makes use of pre-processing directives to look for hardened, alternative implementations of essential library calls. Some programs may fail to build as a result; this usually happens for those trying too hard to be portable, or otherwise abusing definitions in the standard library.

B.2.2.2. Run-time crashes

This feature may cause some programs to crash, usually indicating an actual bug in the program. The fix will typically involve patching the original program's source code.

B.2.2.3. Optimization is required

At least in the case of GCC, FORTIFY will only be applied if optimization is applied while compiling. This means that the CFLAGS should also contain -O, -O2 or another optimization level. This cannot easily be applied globally, as some packages may require specific optimization levels.

B.2.2.4. Disabling FORTIFY on a per-package basis

Note

FORTIFY should not be disabled to work around runtime crashes in the program! This is a very bad idea and will expose you to security vulnerabilities.

To disable FORTIFY on a per-package basis, set the following in the package's Makefile before bsd.prefs.mk is included:

FORTIFY_SUPPORTED=	no

B.2.3. Problems with PKGSRC_USE_RELRO

B.2.3.1. Performance impact

For better protection, full RELRO requires every symbol to be resolved when the program starts, rather than simply when required at run-time. This will have more impact on programs using a lot of symbols, or linked to libraries exposing a lot of symbols. Therefore, daemons or programs otherwise running in background are affected only when started. Programs loading plug-ins at run-time are affected when loading the plug-ins.

The impact is not expected to be noticeable on modern hardware, except in some cases for big programs.

B.2.3.2. Run-time crashes

Some programs handle plug-ins and dependencies in a way that conflicts with RELRO: for instance, with an initialization routine listing any other plug-in required. With full RELRO, the missing symbols are resolved before the initialization routine can run, and the dynamic loader will not be able to find them directly and abort as a result. Unfortunately, this is how Xorg loads its drivers. Partial RELRO can be applied instead in this case.

B.2.3.3. Disabling RELRO on a per-package basis

To disable RELRO on a per-package basis, set the following in the package's Makefile before bsd.prefs.mk is included:

RELRO_SUPPORTED=	no

It is also possible to at most enable partial RELRO, by setting RELRO_SUPPORTED to partial.

B.2.4. Problems with PKGSRC_USE_SSP

B.2.4.1. Packages failing to build

The stack-smashing protection provided by this option does not work for some programs. The most common situation in which this happens is when the program allocates variables on the stack, with the size determined at run-time.

B.2.4.2. Run-time crashes

Again, this feature may cause some programs to crash via a SIGABRT, usually indicating an actual bug in the program.

On NetBSD LOG_CRIT level syslog messages are sent and - by default - appended to /var/log/messages, e.g.:

Jan  6 15:42:51 hostname -: hostname program - - - buffer overflow detected; terminated

(where hostname is the hostname(1) and program is the basename(1) of the program crashed).

Patching the original program is then required.

Rebuilding the package via:

% env CFLAGS=-g INSTALL_UNSTRIPPED=yes make replace

and inspecting the backtrace of the coredump via the debugger should point out the problematic call by inspecting the frame calling the _chk() (SSP) function.

B.2.4.3. Performance impact

The compiler emits extra code when using this feature: a check for buffer overflows is performed when entering and exiting functions, requiring an extra variable on the stack. The level of protection can otherwise be adjusted to affect only those functions considered more sensitive by the compiler (with -fstack-protector instead of -fstack-protector-all).

The impact is not expected to be noticeable on modern hardware. However, programs with a hard requirement to run at the fastest possible speed should avoid using this feature, or using libraries built with this feature.

B.2.4.4. Disabling SSP on a per-package basis

Note

SSP should not be disabled to work around runtime crashes in the program! This is a very bad idea and will expose you to security vulnerabilities.

To disable SSP on a per-package basis, set the following in the package's Makefile before bsd.prefs.mk is included:

SSP_SUPPORTED=	no

B.3. Auditing the system

The illusion of security is worse than having no security at all. This section lists a number of ways to ensure the security features requested are actually effective.

These instructions were obtained and tested on a system derived from NetBSD 7 (amd64). YMMV.

B.3.1. Checking for PIE

The ELF executable type in use changes for binaries built as PIE; without:

$ file /path/to/bin/ary
/path/to/bin/ary: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for NetBSD 7.0, not stripped

as opposed to the following binary, built as PIE:

$ file /path/to/pie/bin/ary
/path/to/pie/bin/ary: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for NetBSD 7.0, not stripped

The latter result is then what is expected.

B.3.2. Checking for partial RELRO

The following command should list a section called RELRO:

$ objdump -p /path/to/bin/ary

/path/to/bin/ary:     file format elf64-x86-64

Program Header:
[...]
   RELRO off    0x0000000000000d78 vaddr 0x0000000000600d78 paddr 0x0000000000600d78 align 2**0

This check is now performed automatically if PKG_DEVELOPER is set and RELRO is enabled.

B.3.3. Checking for full RELRO

The dynamic loader will apply RELRO immediately when detecting the presence of the BIND_NOW flag:

$ objdump -x /path/to/bin/ary

/path/to/bin/ary:     file format elf64-x86-64

Dynamic Section:
[...]
  BIND_NOW             0x0000000000000000

This has to be combined with partial RELRO (see above) to be fully efficient.

This check is now performed automatically (where supported) if PKG_DEVELOPER is set.

B.3.4. Checking for SSP

Note

Checking for SSP using this method only works where the operating system uses libssp. libssp is not used on recent NetBSD/FreeBSD/Linux versions.

Building objects, binaries and libraries with SSP will affect the presence of additional symbols in the resulting file:

$ nm /path/to/bin/ary
[...]
                 U __stack_chk_fail
0000000000600ea0 B __stack_chk_guard

This is an indicator that the program was indeed built with support for SSP.

This check is now performed automatically (where supported) if PKG_DEVELOPER is set and SSP is enabled.

Appendix C. Build logs

C.1. Building figlet

# make
===> Checking for vulnerabilities in figlet-2.2.1nb2
=> figlet221.tar.gz doesn't seem to exist on this system.
=> Attempting to fetch figlet221.tar.gz from ftp://ftp.figlet.org/pub/figlet/program/unix/.
=> [172219 bytes]
Connected to ftp.plig.net.
220 ftp.plig.org NcFTPd Server (licensed copy) ready.
331 Guest login ok, send your complete e-mail address as password.
230-You are user #5 of 500 simultaneous users allowed.
230-
230-  ___ _             _ _
230- |  _| |_ ___   ___| |_|___   ___ ___ ___
230- |  _|  _| . |_| . | | | . |_| . |  _| . |
230- |_| |_| |  _|_|  _|_|_|_  |_|___|_| |_  |
230-         |_|   |_|     |___|         |___|
230-
230-** Welcome to ftp.plig.org **
230-
230-Please note that all transfers from this FTP site are logged. If you
230-do not like this, please disconnect now.
230-
230-This archive is available via
230-
230-HTTP:  http://ftp.plig.org/
230-FTP:   ftp://ftp.plig.org/     (max 500 connections)
230-RSYNC: rsync://ftp.plig.org/   (max  30 connections)
230-
230-Please email comments, bug reports and requests for packages to be
230-mirrored to ftp-admin@@plig.org.
230-
230-
230 Logged in anonymously.
Remote system type is UNIX.
Using binary mode to transfer files.
200 Type okay.
250 "/pub" is new cwd.
250-"/pub/figlet" is new cwd.
250-
250-Welcome to the figlet archive at ftp.figlet.org
250-
250-	ftp://ftp.figlet.org/pub/figlet/
250-
250-The official FIGlet web page is:
250-	http://www.figlet.org/
250-
250-If you have questions, please mailto:info@@figlet.org. If you want to
250-contribute a font or something else, you can email us.
250
250 "/pub/figlet/program" is new cwd.
250 "/pub/figlet/program/unix" is new cwd.
local: figlet221.tar.gz remote: figlet221.tar.gz
502 Unimplemented command.
227 Entering Passive Mode (195,40,6,41,246,104)
150 Data connection accepted from 84.128.86.72:65131; transfer starting for figlet221.tar.gz (172219 bytes).
38% |**************                       | 65800      64.16 KB/s    00:01 ETA
226 Transfer completed.
172219 bytes received in 00:02 (75.99 KB/s)
221 Goodbye.
=> Checksum OK for figlet221.tar.gz.
===> Extracting for figlet-2.2.1nb2
===> Required installed package ccache-[0-9]*: ccache-2.3nb1 found
===> Patching for figlet-2.2.1nb2
===> Applying pkgsrc patches for figlet-2.2.1nb2
===> Overriding tools for figlet-2.2.1nb2
===> Creating toolchain wrappers for figlet-2.2.1nb2
===> Configuring for figlet-2.2.1nb2
===> Building for figlet-2.2.1nb2
gcc -O2 -DDEFAULTFONTDIR=\"/usr/pkg/share/figlet\"  -DDEFAULTFONTFILE=\"standard.flf\"  figlet.c zipio.c crc.c inflate.c -o figlet
chmod a+x figlet
gcc -O2 -o chkfont chkfont.c
=> Unwrapping files-to-be-installed.
#
# make install
===> Checking for vulnerabilities in figlet-2.2.1nb2
===> Installing for figlet-2.2.1nb2
install -d -o root -g wheel -m 755 /usr/pkg/bin
install -d -o root -g wheel -m 755 /usr/pkg/man/man6
mkdir -p /usr/pkg/share/figlet
cp figlet /usr/pkg/bin
cp chkfont /usr/pkg/bin
chmod 555 figlist showfigfonts
cp figlist /usr/pkg/bin
cp showfigfonts /usr/pkg/bin
cp fonts/*.flf /usr/pkg/share/figlet
cp fonts/*.flc /usr/pkg/share/figlet
cp figlet.6 /usr/pkg/man/man6
===> Registering installation for figlet-2.2.1nb2
#

C.2. Packaging figlet

# make package
===> Checking for vulnerabilities in figlet-2.2.1nb2
===> Packaging figlet-2.2.1nb2
===> Building binary package for figlet-2.2.1nb2
Creating package /home/cvs/pkgsrc/packages/i386/All/figlet-2.2.1nb2.tgz
Using SrcDir value of /usr/pkg
Registering depends:.
#

Appendix D. Directory layout of the pkgsrc FTP server

As in other big projects, the directory layout of pkgsrc is quite complex for newbies. This chapter explains where you find things on the FTP server. The base directory on ftp.NetBSD.org is /pub/pkgsrc/. On other servers it may be different, but inside this directory, everything should look the same, no matter on which server you are. This directory contains some subdirectories, which are explained below.

D.1. distfiles: The distributed source files

The directory distfiles contains lots of archive files from all pkgsrc packages, which are mirrored here. The subdirectories are called after their package names and are used when the distributed files have names that don't explicitly contain a version number or are otherwise too generic (for example release.tar.gz).

D.2. misc: Miscellaneous things

This directory contains things that individual pkgsrc developers find worth publishing.

D.3. packages: Binary packages

This directory contains binary packages for the various platforms that are supported by pkgsrc. Each subdirectory is of the form OPSYS/ARCH/OSVERSION_TAG. The meaning of these variables is:

  • OPSYS is the name of the operating system for which the packages have been built. The name is taken from the output of the uname command, so it may differ from the one you are used to hear.

  • ARCH is the hardware architecture of the platform for which the packages have been built. It also includes the ABI (Application Binary Interface) for platforms that have several of them.

  • OSVERSION is the version of the operating system. For version numbers that change often (for example NetBSD-current), the often-changing part should be replaced with an x, for example 4.99.x.

  • TAG is either 20xxQy for a stable branch, or head for packages built from the HEAD branch. The latter should only be used when the packages are updated on a regular basis. Otherwise the date from checking out pkgsrc should be appended, for example head_20071015.

The rationale for exactly this scheme is that the pkgsrc users looking for binary packages can quickly click through the directories on the server and find the best binary packages for their machines. Since they usually know the operating system and the hardware architecture, OPSYS and ARCH are placed first. After these choices, they can select the best combination of OSVERSION and TAG together, since it is usually the case that packages stay compatible between different version of the operating system.

In each of these directories, there is a whole binary packages collection for a specific platform. It has a directory called All which contains all binary packages. Besides that, there are various category directories that contain symbolic links to the real binary packages.

D.4. reports: Bulk build reports

Here are the reports from bulk builds, for those who want to fix packages that didn't build on some of the platforms. The structure of subdirectories should look like the one in Section D.3, “packages: Binary packages”.

D.5. current, stable, pkgsrc-20xxQy: source packages

These directories contain the real pkgsrc, that is the files that define how to create binary packages from source archives.

Each of the current, stable and pkgsrc-20xxQy directories share the same structure. They each contain a pkgsrc directory and pkgsrc.tar.{bz,gz,xz} file.

The directory pkgsrc contains a snapshot of the CVS repository, which is updated regularly. The file pkgsrc.tar.{bz,gz,xz} contains the same as the directory, ready to be downloaded as a whole.

The current directory contains files related to the HEAD branch of the CVS repository. In this directory there is an additional file called pkgsrc-readmes.tar.{bz,gz,xz} that contains all pkgsrc READMEs with information about categories and packages.

The stable directory is a symlink to the latest pkgsrc-20xxQy.

The pkgsrc-20xxQy. directories contain files related to the -20xxQy stable branch of the CVS repository. In these directories there is an additional file called pkgsrc-20xxQy.tar.{bz,gz,xz}, which contains the state of pkgsrc when it was branched.

Appendix E. Help topics

The following list contains all help topics that are available when running bmake help topic=:index.

#! -lintl
32bit 64bit
ABI ACCEPTABLE_LICENSES
ACROREAD_FONTPATH ADDITIONAL
AFAIK AIX
ALLOW_NEWER_COMPILER ALLOW_VULNERABLE_PACKAGES
ALL_ENV ALSA_PC
ALTERNATIVES_SRC AMANDA_TMP
AMANDA_USER AMANDA_VAR
APACHE_GROUP APACHE_MODULE_NAME
APACHE_MODULE_SRC APACHE_MODULE_SRCDIR
APACHE_PKG_PREFIX APACHE_SUEXEC_CONFIGURE_ARGS
APACHE_SUEXEC_DOCROOT APACHE_USER
APPEND_ABI APPEND_ELF
ARLA_CACHE AUDIT_PACKAGES_FLAGS
AUTOCONF_REQD AUTOMAKE_OVERRIDE
AUTOMAKE_REQD AUTO_MKDIRS
AUX BDB185_DEFAULT
BDBBASE BDB_ACCEPTED
BDB_DEFAULT BDB_LIBS
BDB_TYPE BINCIMAP_GROUP
BINCIMAP_LOG_USER BINCIMAP_USER
BIND_DIR BIND_GROUP
BIND_USER BINOWN
BINPKG_SITES BIN_INSTALL_FLAGS
BISON_PKGDATADIR BLAS
BLAS_ACCEPTED BLAS_C_INTERFACE
BLAS_INCLUDES BLAS_INDEX64
BLAS_LIBS BLAS_PC
BLAS_TYPE BOOTSTRAP_DEPENDS
BROKEN BROKEN_EXCEPT_ON_PLATFORM
BROKEN_ON_PLATFORM BSDSRCDIR
BSDXSRCDIR BSD_MAKE_ENV
BUILDLINK_AUTO_DIRS BUILDLINK_AUTO_VARS
BUILDLINK_CFLAGS BUILDLINK_CONTENTS_FILTER
BUILDLINK_CPPFLAGS BUILDLINK_DEPMETHOD
BUILDLINK_FILES BUILDLINK_FILES_CMD
BUILDLINK_FNAME_TRANSFORM BUILDLINK_LDFLAGS
BUILDLINK_LIBS BUILDLINK_OPSYS_SUPPORT_PTHREAD
BUILDLINK_PKGNAME BUILDLINK_PREFIX
BUILDLINK_RPATHDIRS BUILDLINK_TREE
BUILD_DEFS BUILD_DEFS_EFFECTS
BUILD_DEPENDS BUILD_DIRS
BUILD_ENV_SHELL BUILD_MAKE_CMD
BUILD_MAKE_FLAGS BUILD_TARGET
BUILTIN_FIND_FILES BUILTIN_FIND_FILES_VAR
BUILTIN_FIND_GREP BUILTIN_FIND_HEADERS
BUILTIN_FIND_HEADERS_VAR BUILTIN_FIND_PKGCONFIG
BUILTIN_FIND_PKGCONFIG_VAR BUILTIN_PKG
BUILTIN_TEST_CURSES_DEFINES BUILTIN_TEST_CURSES_FUNCS
BUILTIN_VERSION_SCRIPT BUILTIN_X11_TYPE
BUILTIN_X11_VERSION CACTI_GROUP
CACTI_USER CANNA_GROUP
CANNA_USER CAT
CBLAS_LIBS CBLAS_PC
CCACHE_BASE CCACHE_DIR
CCACHE_LOGFILE CC_VERSION
CC_VERSION_STRING CDRECORD_CONF
CDROM_PKG_URL_DIR CDROM_PKG_URL_HOST
CHANGES CHECKOUT_DATE
CHECK_COMPILER CHECK_FAKEHOME
CHECK_FILES CHECK_FILES_ONLY_PREFIX
CHECK_FILES_SKIP CHECK_FILES_STRICT
CHECK_HEADERS CHECK_HEADERS_SKIP
CHECK_INTERPRETER CHECK_INTERPRETER_SKIP
CHECK_PERMS CHECK_PERMS_AUTOFIX
CHECK_PERMS_SKIP CHECK_PIE
CHECK_PIE_SKIP CHECK_PIE_SUPPORTED
CHECK_PORTABILITY CHECK_PORTABILITY_EXPERIMENTAL
CHECK_PORTABILITY_SKIP CHECK_RELRO
CHECK_RELRO_SKIP CHECK_RELRO_SUPPORTED
CHECK_SHLIBS CHECK_SHLIBS_SKIP
CHECK_SHLIBS_SUPPORTED CHECK_SHLIBS_TOXIC
CHECK_SSP CHECK_SSP_SKIP
CHECK_SSP_SUPPORTED CHECK_STRIPPED
CHECK_STRIPPED_SKIP CHECK_WRKREF
CHECK_WRKREF_EXTRA_DIRS CHECK_WRKREF_SKIP
CLAMAV_DBDIR CLAMAV_GROUP
CLAMAV_USER CLANGBASE
CLEANDEPENDS CLT
CMAKE_DEPENDENCIES_REWRITE CMAKE_INSTALL_NAME_DIR
CMAKE_INSTALL_PREFIX CMAKE_MODULE_PATH_OVERRIDE
CMAKE_PKGSRC_BUILD_FLAGS CMAKE_PREFIX_PATH
CMAKE_USE_GNU_INSTALL_DIRS COMMON_LISP_DOCFILES
COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES
COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM
COMPILER_RPATH_FLAG COMPILER_USE_SYMLINKS
CONFIGURE_ARGS CONFIGURE_DIRS
CONFIGURE_ENV CONFIGURE_ENV_SHELL
CONFIGURE_HAS_INFODIR CONFIGURE_HAS_MANDIR
CONFIGURE_SCRIPT CONFIG_SHELL
CONFIG_SHELL_FLAGS CONF_FILES
CONF_FILES_MODE CONF_FILES_PERMS
CONSERVER_DEFAULTHOST CONSERVER_DEFAULTPORT
CP CPE
CPE_EDITION CPE_LANG
CPE_OTHER CPE_PART
CPE_PRODUCT CPE_SW_EDITION
CPE_TARGET_HW CPE_TARGET_SW
CPE_UPDATE CPE_URI
CPE_VENDOR CPE_VERSION
CPP CPP_PRECOMP_FLAGS
CREATE_WRKDIR_SYMLINK CROSSBASE
CTFCONVERT CTF_FILES_SKIP
CTF_SUPPORTED CTYPE
CUPS_GROUP CUPS_SYSTEM_GROUPS
CUPS_USER CURSES_DEFAULT
CURSES_TYPE CVS_EXTRACTDIR
CVS_MODULE CVS_PROJECT
CVS_REPOSITORIES CVS_ROOT
CVS_ROOT_GNU CVS_ROOT_NONGNU
CVS_ROOT_SOURCEFORGE CVS_TAG
CXX CYRUS_GROUP
CYRUS_IDLE CYRUS_USER
DAEMONTOOLS_GROUP DAEMONTOOLS_LOG_USER
DARWIN_NO_SYSTEM_LIBS DARWIN_REQUIRES_FILTER
DBUS_GROUP DBUS_USER
DEFANG_GROUP DEFANG_USER
DEFAULT_ACCEPTABLE_LICENSES DEFAULT_DISTFILES
DEFAULT_IRC_SERVER DEFAULT_SERIAL_DEVICE
DEF_UMASK DEINSTALLDEPENDS
DEINSTALL_SRC DEINSTALL_TEMPLATES
DELAYED_ERROR_MSG DELAYED_WARNING_MSG
DEPENDS DEPENDS_TARGET
DEPENDS_TYPE DESTDIR
DESTDIR_VARNAME DIALER_GROUP
DIGEST_REQD DISTDIR
DISTFILES DISTINFO_FILE
DISTNAME DIST_PATH
DIST_SUBDIR DJBDNS_AXFR_USER
DJBDNS_CACHE_USER DJBDNS_DJBDNS_GROUP
DJBDNS_LOG_USER DJBDNS_RBL_USER
DJBDNS_TINY_USER DLOPEN_REQUIRE_PTHREADS
DL_AUTO_VARS DL_CFLAGS
DL_LDFLAGS DL_LIBS
DNS DOCOWN
DOWNLOADED_DISTFILE DQCACHE_GROUP
DQCACHE_USER DT_LAYOUT
DYNAMIC_SITES_CMD DYNAMIC_SITES_SCRIPT
ECHO ECHO_N
ELK_GUI EMACS_TYPE
EMULDIR EMULSUBDIR
EMULSUBDIRSLASH EMUL_ARCH
EMUL_DISTRO EMUL_EXEC_FMT
EMUL_IS_NATIVE EMUL_MODULES
EMUL_OPSYS EMUL_PKG_FMT
EMUL_PLATFORM EMUL_PLATFORMS
EMUL_PREFER EMUL_REQD
EMUL_TYPE ERROR_MSG
EXIM_GROUP EXIM_USER
EXPORT_SYMBOLS_LDFLAGS EXTRACTOR
EXTRACT_CMD EXTRACT_CMD_DEFAULT
EXTRACT_DIR EXTRACT_ELEMENTS
EXTRACT_ENV EXTRACT_ONLY
EXTRACT_OPTS EXTRACT_SUFX
EXTRACT_USING FAIL
FAILOVER_FETCH FAIL_MSG
FAKE_NCURSES FAM
FAM_ACCEPTED FAM_DEFAULT
FAM_SERVER FCPATH
FEATURE_CPPFLAGS FEATURE_LDFLAGS
FEATURE_LIBS FETCH_AFTER_ARGS
FETCH_BEFORE_ARGS FETCH_CMD
FETCH_OUTPUT_ARGS FETCH_PROXY
FETCH_RESUME_ARGS FETCH_TIMEOUT
FETCH_USE_IPV4_ONLY FETCH_USING
FILES_SUBST FILES_SUBST_SED
FIX_SYSTEM_HEADERS FONTDIR
FONTS_DIRS FONTS_VERBOSE
FOO_HACKS_MK FORCE_CXX_STD
FORCE_C_STD FOSSIL_EXTRACTDIR
FOSSIL_REPO FOSSIL_REPOSITORIES
FOSSIL_VERSION FOX_USE_XUNICODE
FREEWNN_GROUP FREEWNN_USER
FTP_PKG_URL_DIR FTP_PKG_URL_HOST
GAMEDATAMODE GAMEDATA_PERMS
GAMEDIRMODE GAMEDIR_PERMS
GAMEGRP GAMEMODE
GAMEOWN GAMES_GROUP
GAMES_USER GCC
GCCBASE GCC_REQD
GCC_VERSION_SUFFIX GEM_BUILD
GEM_CLEANBUILD GEM_CLEANBUILD_EXTENSIONS
GEM_DOCDIR GEM_EXTSDIR
GEM_HOME GEM_KEEPBUILD
GEM_LIBDIR GEM_NAME
GEM_PATH GEM_PLUGINSDIR
GEM_SPECFILE GENERATE_PLIST
GHC GHOSTSCRIPT_REQD
GITHUB_PROJECT GITHUB_RELEASE
GITHUB_SUBMODULES GITHUB_TAG
GITHUB_TYPE GITLAB_PROJECT
GITLAB_RELEASE GITLAB_SUBMODULES
GITLAB_TAG GITLAB_TYPE
GIT_BRANCH GIT_ENV
GIT_EXTRACTDIR GIT_REPO
GIT_REPOSITORIES GIT_REVISION
GIT_TAG GNU
GNU_CONFIGURE GNU_CONFIGURE_INFODIR
GNU_CONFIGURE_MANDIR GNU_CONFIGURE_QUIET
GNU_CONFIGURE_STRICT GODEP_REDIRECTS
GO_BUILD_PATTERN GO_DEPS
GO_DIST_BASE GO_EXTRA_MOD_DIRS
GO_MODULE_FILES GO_SRCPATH
GROUP_SPECIFIC_PKGS GRUB_NETWORK_CARDS
GRUB_PRESET_COMMAND GRUB_SCAN_ARGS
GZIP HASKELL_COMPILER
HASKELL_ENABLE_DYNAMIC_EXECUTABLE HASKELL_ENABLE_HADDOCK_DOCUMENTATION
HASKELL_ENABLE_LIBRARY_PROFILING HASKELL_ENABLE_SHARED_LIBRARY
HASKELL_ENABLE_TESTS HASKELL_OPTIMIZATION_LEVEL
HASKELL_PKG_NAME HASKELL_UNRESTRICT_DEPENDENCIES
HEADER_TEMPLATES HG_REPO
HG_REPOSITORIES HG_TAG
HOMEPAGE HOST_PKGTOOLS_ARGS
HOST_SPECIFIC_PKGS HOWL_GROUP
HOWL_USER ICCBASE
ICECAST_CHROOTDIR ICON_THEMES
IDOBASE IGNORE_CCACHE
IGNORE_INFO_DIRS IGNORE_INTERACTIVE_FETCH
IMAKE IMAKEOPTS
IMAKE_MAKE IMAKE_MANINSTALL
IMAP_UW_CCLIENT_MBOX_FMT IMDICTDIR
INCOMPAT_CURSES INFO_DIR
INFO_FILES INFO_MSG
INIT_SYSTEM INN_DATA_DIR
INN_GROUP INN_USER
INSTALLATION_DIRS INSTALLATION_DIRS_FROM_PLIST
INSTALL_ENV INSTALL_SH_OVERRIDE
INSTALL_SRC INSTALL_TEMPLATES
INSTALL_UNSTRIPPED IRCD_HYBRID_IRC_GROUP
IRCD_HYBRID_IRC_USER IRCD_HYBRID_MAXCONN
IRCD_HYBRID_NICLEN IRCD_HYBRID_SYSLOG_EVENTS
IRCD_HYBRID_SYSLOG_FACILITY IRCD_HYBRID_TOPICLEN
IRIX IRRD_USE_PGP
JABBERD_GROUP JABBERD_LOGDIR
JABBERD_PIDDIR JABBERD_SPOOLDIR
JABBERD_USER JAVA_APP_PATH
JAVA_APP_TARGETS JAVA_BINPREFIX
JAVA_CLASSPATH JAVA_HOME
JAVA_LD_LIBRARY_PATH JAVA_NAME
JAVA_UNLIMIT JAVA_WRAPPERS
JPEG_ACCEPTED JPEG_DEFAULT
KERBEROS KERMIT_SUID_UUCP
KJS_USE_PCRE KNEWS_DOMAIN_FILE
KNEWS_DOMAIN_NAME KRB5_ACCEPTED
KRB5_DEFAULT LANGUAGES
LAPACKE_LIBS LAPACKE_PC
LAPACK_LIBS LAPACK_PC
LATEX2HTML_ICONPATH LDCONFIG_ADD_CMD
LDCONFIG_REMOVE_CMD LDD
LEAFNODE_DATA_DIR LEAFNODE_GROUP
LEAFNODE_USER LIBDVDCSS_HOMEPAGE
LIBDVDCSS_MASTER_SITES LIBIMAGEQUANT_TYPE
LIBRSVG_TYPE LIBTOOL
LIBTOOLIZE_PLIST LIBTOOL_M4_OVERRIDE
LIBUSB_TYPE LICENSE
LINKER_RPATH_FLAG LINK_RPATH_FLAG
LINUX_BASE_NODEPS LINUX_BASE_PREFERRED
LINUX_BASE_REQUIRED LINUX_LOCALES
LOCALBASE LOCALBASE_LOCKTYPE
LOCALPATCHES LOVE_DATA
LOVE_GAME LOVE_VERSION
LP32PLATFORMS LP64PLATFORMS
LUA_BUSTED_ARGS LUA_CDIR
LUA_COMPILER LUA_DOCDIR
LUA_EXAMPLESDIR LUA_INCDIR
LUA_INTERPRETER LUA_LDIR
LUA_LINKER_MAGIC LUA_PKGPREFIX
LUA_SELF_CONFLICT LUA_USE_BUSTED
LUA_VERSIONS_ACCEPTED LUA_VERSIONS_INCOMPATIBLE
LUA_VERSION_DEFAULT LUA_VERSION_REQD
Lua MACHINE_PLATFORM
MAILAGENT_DOMAIN MAILAGENT_EMAIL
MAILAGENT_FQDN MAILAGENT_ORGANIZATION
MAJORDOMO_HOMEDIR MAJOR_OS_VERSION
MAKEINFO_ARGS MAKE_DIRS
MAKE_DIRS_PERMS MAKE_ENV
MAKE_FILE MAKE_FLAGS
MAKE_JOBS MAKE_JOBS_SAFE
MAKE_PROGRAM MANCOMPRESSED_IF_MANZ
MANINSTALL MANZ
MARIADB_VERSIONS_ALL MASTER_SITES
MASTER_SITE_BACKUP MASTER_SITE_LOCAL
MASTER_SITE_MOZILLA MASTER_SITE_OVERRIDE
MASTER_SITE_PERL_CPAN MASTER_SORT
MASTER_SORT_RANDOM MASTER_SORT_REGEX
MECAB_CHARSET MEDIATOMB_GROUP
MEDIATOMB_USER MIPSPROBASE
MIREDO_GROUP MIREDO_USER
MISSING_FEATURES MKDIR
MKPIE_SUPPORTED MLDONKEY_GROUP
MLDONKEY_HOME MLDONKEY_USER
MONOTONE_GROUP MONOTONE_USER
MOTIFBASE MOTIF_TYPE
MOTIF_TYPE_DEFAULT MPI_TYPE
MSGFMT_STRIP_MSGCTXT MSGFMT_STRIP_MSGID_PLURAL
MTOOLS_ENABLE_FLOPPYD MUST
MV MYSQL_CHARSET
MYSQL_DATADIR MYSQL_EXTRA_CHARSET
MYSQL_GROUP MYSQL_USER
MYSQL_VERSION MYSQL_VERSIONS_ACCEPTED
MYSQL_VERSION_DEFAULT NAGIOSCMD_GROUP
NAGIOSDIR NAGIOS_GROUP
NAGIOS_USER NATIVE_APPEND_ABI
NATIVE_APPEND_ELF NATIVE_EXEC_FMT
NATIVE_MACHINE_PLATFORM NATIVE_OBJECT_FMT
NBPAX_PROGRAM_PREFIX NETBSD_LOGIN_NAME
NMH_EDITOR NMH_MTA
NMH_PAGER NODE_VERSIONS_ACCEPTED
NODE_VERSIONS_INCOMPATIBLE NODE_VERSION_DEFAULT
NODE_VERSION_REQD NOLOGIN
NOTE NOT_FOR_PLATFORM
NOT_PAX_ASLR_SAFE NOT_PAX_MPROTECT_SAFE
NO_BUILD NO_CHECKSUM
NO_CONFIGURE NO_SKIP
NS_PREFERRED NULLMAILER_GROUP
NULLMAILER_USER OBJHOSTNAME
OBJMACHINE OCAML_FINDLIB_DIRS
OCAML_FINDLIB_REGISTER OCAML_FINDLIB_REGISTER_VERBOSE
OCAML_SITELIBDIR OMF
ONLY_FOR_COMPILER ONLY_FOR_PLATFORM
OPENSSH_CHROOT OPENSSH_GROUP
OPENSSH_USER OPSYS
OPSYS_EMULDIR OPSYS_VERSION
OS OSS_TYPE
OSX OSX_PATH_TO_M4
OSX_PATH_TO_YACC OS_HAVE_ALSA
OS_HAVE_RCD OS_VARIANT
OS_VERSION OTF_FONTS_DIR
OVERRIDE_DIRDEPTH OVERRIDE_GEMSPEC
OVERRIDE_GNU_CONFIG_SCRIPTS OVERRIDE_ROCKSPEC
OWN_DIRS OWN_DIRS_PERMS
P4GROUP P4PORT
P4ROOT P4USER
PACKAGES PALMOS_DEFAULT_SDK
PAMBASE PAM_DEFAULT
PAPERSIZE PASSIVE_FETCH
PATCHDIR PATCHFILES
PATCH_ARGS PATCH_DEBUG
PATCH_DIST_ARGS PATCH_DIST_CAT
PATCH_DIST_STRIP PATCH_FUZZ_FACTOR
PATCH_STRIP PATH
PCCBASE PEAR
PEAR_CHANNEL PEAR_CHANNEL_ALIAS
PEAR_CHANNEL_VERSION PEAR_CMD
PEAR_LIB PEAR_PACKAGE_XML
PERL5 PERL5_CONFIGURE
PERL5_CONFIGURE_DIRS PERL5_LDFLAGS
PERL5_LICENSE PERL5_MODULE_TYPE
PERL5_PACKLIST PERL5_PACKLIST_DIR
PERL5_PERLBASE PERL5_SITEBASE
PERL5_USE_PACKLIST PERL5_VENDORBASE
PFCTL PFVAR_H
PF_VERSION PGGROUP
PGHOME PGPKGSRCDIR
PGSQL_TYPE PGSQL_VERSION
PGSQL_VERSIONS_ACCEPTED PGSQL_VERSION_DEFAULT
PGUSER PG_LIB_EXT
PHP PHPCOMMON_MK
PHPPKGSRCDIR PHP_BASE_VERS
PHP_CHECK_INSTALLED PHP_EXTENSION_DIR
PHP_INITIAL_TEENY PHP_PKG_PREFIX
PHP_VERSION PHP_VERSIONS_ACCEPTED
PHP_VERSIONS_INCOMPATIBLE PHP_VERSION_DEFAULT
PHP_VERSION_REQD PILRC_USE_GTK
PKGCONFIG_BASE PKGCONFIG_FILE
PKGCONFIG_OVERRIDE PKGCONFIG_OVERRIDE_STAGE
PKGDIR PKGGNUDIR
PKGINFODIR PKGLOCALEDIR
PKGMANDIR PKGNAME
PKGNAME_REQD PKGPATH
PKGREVISION PKGSRC_BLAS_TYPES
PKGSRC_CHANGES PKGSRC_COMPILER
PKGSRC_KEEP_BIN_PKGS PKGSRC_LOCKTYPE
PKGSRC_MAKE_ENV PKGSRC_MESSAGE_RECIPIENTS
PKGSRC_MKPIE PKGSRC_MKREPRO
PKGSRC_OVERRIDE_MKPIE PKGSRC_RUN_TEST
PKGSRC_SETENV PKGSRC_SLEEPSECS
PKGSRC_TODO PKGSRC_USE_CTF
PKGSRC_USE_FORTIFY PKGSRC_USE_MKTOOLS
PKGSRC_USE_RELRO PKGSRC_USE_SSP
PKGSRC_USE_STACK_CHECK PKGTASKS_DATAFILE
PKGTOOLS_ARGS PKGTOOLS_ENV
PKG_ALTERNATIVES PKG_APACHE
PKG_APACHE_ACCEPTED PKG_APACHE_DEFAULT
PKG_BEST_EXISTS PKG_BUILD_OPTIONS
PKG_COMPRESSION PKG_CONFIG
PKG_CONFIG_PERMS PKG_CREATE_USERGROUP
PKG_DB_TMPDIR PKG_DEBUG_LEVEL
PKG_DEFAULT_OPTIONS PKG_DESTDIR_SUPPORT
PKG_DEVELOPER PKG_DISABLED_OPTIONS
PKG_FATAL_ERRORS PKG_FC
PKG_FILELIST_CMD PKG_GECOS
PKG_GID PKG_GROUPS
PKG_GROUPS_VARS PKG_HOME
PKG_INIT_SCRIPTS PKG_JAVA_HOME
PKG_JVM PKG_JVMS_ACCEPTED
PKG_JVM_DEFAULT PKG_LEGACY_OPTIONS
PKG_LIBTOOL PKG_MKSYMLINKS
PKG_OPTIONS PKG_OPTIONS_DEPRECATED_WARNINGS
PKG_OPTIONS_LEGACY_OPTS PKG_OPTIONS_LEGACY_VARS
PKG_OPTIONS_NONEMPTY_SETS PKG_OPTIONS_OPTIONAL_GROUPS
PKG_OPTIONS_REQUIRED_GROUPS PKG_OPTIONS_VAR
PKG_PHP PKG_PHP_MAJOR_VERS
PKG_PHP_VERSION PKG_RCD_SCRIPTS
PKG_REFCOUNT_DBDIR PKG_REGISTER_SHELLS
PKG_RESUME_TRANSFERS PKG_SHELL
PKG_SUGGESTED_OPTIONS PKG_SUPPORTED_OPTIONS
PKG_SYSCONFBASE PKG_SYSCONFBASEDIR
PKG_SYSCONFDIR PKG_SYSCONFDIR_PERMS
PKG_SYSCONFSUBDIR PKG_SYSCONFVAR
PKG_TOOLS_BIN PKG_UID
PKG_UPDATE_FONTS_DB PKG_USERS
PKG_USERS_VARS PKG_VERBOSE
PLEASE PLIST
PLIST_AWK PLIST_AWK_ENV
PLIST_SRC PLIST_SUBST
PLIST_TYPE PLIST_VARS
POPTOP_USE_MPPE POSSIBLE_GFORTRAN_VERSION
POST_FETCH_HOOK PREFER
PREFER_NATIVE PREFER_NATIVE_PTHREADS
PREFER_PKGSRC PREFIX
PREPEND_PATH PRE_ROOT_CMD
PRIVILEGED_STAGES PS
PTHREAD_AUTO_VARS PTHREAD_CFLAGS
PTHREAD_LDFLAGS PTHREAD_LIBS
PTHREAD_OPTS PTHREAD_TYPE
PVM_SSH PYPKGPREFIX
PYTHON_FOR_BUILD_ONLY PYTHON_SELF_CONFLICT
PYTHON_VERSION PYTHON_VERSIONED_DEPENDENCIES
PYTHON_VERSIONS_ACCEPTED PYTHON_VERSIONS_INCOMPATIBLE
PYTHON_VERSION_DEFAULT PYTHON_VERSION_REQD
PYVERSSUFFIX QMAILDIR
QMAIL_ALIAS_USER QMAIL_DAEMON_USER
QMAIL_LOG_USER QMAIL_NOFILES_GROUP
QMAIL_PASSWD_USER QMAIL_QMAIL_GROUP
QMAIL_QUEUE_DIR QMAIL_QUEUE_EXTRA
QMAIL_QUEUE_USER QMAIL_REMOTE_USER
QMAIL_ROOT_USER QMAIL_SEND_USER
QORE_LATEST_MODULE_API QORE_MODULE_API
QORE_MODULE_DIR QORE_USER_MODULE_DIR
QORE_VERSION QPOPPER_FAC
QPOPPER_SPOOL_DIR QPOPPER_USER
RAKE_NAME RASMOL_DEPTH
RCD_DIR RCD_ORDER
RCD_SCRIPTS RCD_SCRIPTS_DIR
RCD_SCRIPTS_EXAMPLEDIR RCD_SCRIPTS_MODE
RCD_SCRIPTS_SHELL RCD_SCRIPT_SRC
RCD_SUBR RDOC
READLINE_DEFAULT READLINE_TYPE
REAL_ROOT_GROUP REAL_ROOT_USER
RECURSIVE_MAKE RELAY_CTRL_DIR
RELRO_SUPPORTED REPLACE_AWK
REPLACE_BASH REPLACE_CSH
REPLACE_KSH REPLACE_LUA
REPLACE_NODEJS REPLACE_OCTAVE
REPLACE_PERL REPLACE_PERL6
REPLACE_PHP REPLACE_PYTHON
REPLACE_QORE REPLACE_R
REPLACE_RUBY REPLACE_RUBY_DIRS
REPLACE_RUBY_PAT REPLACE_SH
REPLACE_TEXLUA REPLACE_TOOL_PYTHON
REPLACE_WISH REQD_DIRS
REQD_DIRS_PERMS REQD_FILES
REQD_FILES_MODE REQD_FILES_PERMS
RESOLV_AUTO_VARS RESOLV_LDFLAGS
RESOLV_LIBS RM
ROCKSPEC_NAME ROCKSPEC_SPECFILE
ROOT_CMD ROOT_GROUP
ROOT_USER RPCGEN
RPM RPM2PKG_PLIST
RPM2PKG_PREFIX RPM2PKG_STAGE
RPM2PKG_STRIP RPM2PKG_SUBPREFIX
RPMFILES RPMIGNOREPATH
RPM_DB_PREFIX RSSH_CVS_PATH
RSSH_RDIST_PATH RSSH_RSYNC_PATH
RSSH_SCP_PATH RSSH_SFTP_SERVER_PATH
RUBY RUBYGEM
RUBYGEM_MANPAGES RUBYGEM_NAME
RUBYGEM_OPTIONS RUBYGEM_USE_MANPAGES
RUBYGEM_VERBOSE RUBY_ABI_VERSION
RUBY_ARCH RUBY_ARCHINC
RUBY_ARCHLIB RUBY_BASE
RUBY_BASERIDIR RUBY_BUILD_DOCUMENT
RUBY_DLEXT RUBY_DOC
RUBY_DYNAMIC_DIRS RUBY_EG
RUBY_ENCODING_ARG RUBY_EXTCONF
RUBY_EXTCONF_CHECK RUBY_EXTCONF_DEBUG
RUBY_EXTCONF_MAKEFILE RUBY_GEM_ARCH
RUBY_GEM_BASE RUBY_INC
RUBY_LIB RUBY_LIB_BASE
RUBY_NAME RUBY_NOVERSION
RUBY_PKGPREFIX RUBY_RAILS
RUBY_RAILS61_VERSION RUBY_RAILS70_VERSION
RUBY_RAILS71_VERSION RUBY_RAILS_ACCEPTED
RUBY_RAILS_DEFAULT RUBY_RAILS_REQD
RUBY_RAILS_STRICT_DEP RUBY_RIDIR
RUBY_SETUP RUBY_SHLIB
RUBY_SHLIBALIAS RUBY_SHLIBVER
RUBY_SIMPLE_INSTALL RUBY_SITEARCHLIB
RUBY_SITELIB RUBY_SITELIB_BASE
RUBY_SITERIDIR RUBY_SLEXT
RUBY_SRCDIR RUBY_STATICLIB
RUBY_SUFFIX RUBY_SYSRIDIR
RUBY_USE_PTHREAD RUBY_VENDORARCHLIB
RUBY_VENDORLIB RUBY_VENDORLIB_BASE
RUBY_VER RUBY_VERSION
RUBY_VERSIONS_ACCEPTED RUBY_VERSIONS_INCOMPATIBLE
RUBY_VERSION_DEFAULT RUBY_VERSION_REQD
RUBY_VER_DIR RUN
RUN_LDCONFIG RUST_TYPE
SCO SCREWS_GROUP
SCREWS_USER SCRIPTS_ENV
SCROLLKEEPER_DATADIR SCROLLKEEPER_REBUILDDB
SCROLLKEEPER_UPDATEDB SDIST_PAWD
SDL12_TYPE SERIAL_DEVICES
SETGIDGAME SETGID_GAMES_PERMS
SETUID_ROOT_PERMS SH
SHLIB SHORTNAME
SIGN_PACKAGES SILC_CLIENT_WITH_PERL
SITE_SPECIFIC_PKGS SKIP_DEPENDS
SMF_INSTANCES SMF_MANIFEST
SMF_METHODS SMF_METHOD_SHELL
SMF_METHOD_SRC SMF_NAME
SMF_PREFIX SMF_SRCDIR
SNIPROXY_GROUP SNIPROXY_USER
SOURCE_BUFFSIZE SPECIAL_PERMS
SPECIFIC_PKGS SSH_SUID
SSP_SUPPORTED SSYNC_PAWD
STEP_MSG STRIP
STRIP_DBG STRIP_DEBUG
STRIP_DEBUG_SUPPORTED STRIP_FILES_SKIP
SU SUBDIR
SUBST SUBST_CLASSES
SUBST_FILES SUBST_FILTER_CMD
SUBST_MESSAGE SUBST_NOOP_OK
SUBST_SED SUBST_SHOW_DIFF
SUBST_SKIP_TEXT_CHECK SUBST_STAGE
SUBST_VARS SUNWSPROBASE
SUSE_PREFER SU_CMD
SVN_EXTRACTDIR SVN_REPO
SVN_REPOSITORIES SVN_REVISION
SYSCONFBASE TARGET_ARCH
TBL TERMCAP_TYPE
TERMINFO_DEFAULT TERMINFO_TYPE
TEST TEST_DEPENDS
TEST_DIRS TEST_ENV
TEST_ENV_SHELL TEST_MAKE_CMD
TEST_MAKE_FLAGS TEST_TARGET
TEXLIVE_IGNORE_PATTERNS TEXLIVE_REV
TEXLIVE_UNVERSIONED TEXMFSITE
TEX_FORMATS TEX_HYPHEN_DAT
TEX_HYPHEN_DEF TEX_TEXMF_DIRS
THTTPD_LOG_FACILITY TINYDYN_USER
TLSWRAPPER_CHROOT TO
TOOLS_ALIASES TOOLS_ALWAYS_WRAP
TOOLS_ARGS TOOLS_BROKEN
TOOLS_CMD TOOLS_CMDLINE_SED
TOOLS_CREATE TOOLS_CROSS_DESTDIR
TOOLS_DIR TOOLS_FAIL
TOOLS_GNU_MISSING TOOLS_LDCONFIG
TOOLS_NOOP TOOLS_PATH
TOOLS_SCRIPT TOOLS_USE_CROSS_COMPILE
TOOL_DEPENDS TTF_FONTDIR
TTF_FONTS_DIR TYPE
UAC_REQD_EXECS UCSPI_SSL_GROUP
UCSPI_SSL_USER UNLIMIT_RESOURCES
UNPRIVILEGED UNPRIVILEGED_GROUP
UNPRIVILEGED_GROUPS UNPRIVILEGED_USER
UNWRAP_FILES UNWRAP_PATTERNS
UPDATE_GEMSPEC UPDATE_TARGET
URI USERGROUP_PHASE
USERPPP_GROUP USER_SPECIFIC_PKGS
USE_ABI_DEPENDS USE_APR
USE_BSD_MAKEFILE USE_BUILTIN
USE_CC_FEATURES USE_CROSS_COMPILE
USE_CURSES USE_CWRAPPERS
USE_CXX_FEATURES USE_DB185
USE_FEATURES USE_GAMESGROUP
USE_GCC_RUNTIME USE_IMAKE
USE_JAVA USE_JAVA2
USE_LANGUAGES USE_LIBTOOL
USE_NATIVE_GCC USE_NETBSD_REPO
USE_PKGSRC_GCC USE_PKGSRC_GCC_RUNTIME
USE_PKGTASKS USE_PKG_ADMIN_DIGEST
USE_RUBY_EXTCONF USE_RUBY_INSTALL
USE_RUBY_SETUP USE_RUBY_SETUP_PKG
USE_TOOLS UUCP_GROUP
UUCP_USER VARBASE
VARNAME VIM_EXTRA_OPTS
WARNING_MSG WCALC_CGIDIR
WCALC_CGIPATH WCALC_HTMLDIR
WCALC_HTMLPATH WDM_MANAGERS
WRAPPER_CC WRAPPER_REORDER_CMDS
WRKDIR WRKDIR_BASENAME
WRKDIR_LOCKTYPE WRKLOG
WRKOBJDIR WRKSRC
X10_PORT X11
X11BASE X11_PKGSRCDIR
X11_TYPE X509_CERTIFICATE
X509_KEY XAW_TYPE
XLOCK_DEFAULT_MODE XMKMF
XMKMF_FLAGS XXX
XXXX YES
ZSH_STATIC __stdc__
_vargroups accept
acquire-localbase-lock acquire-lock
add added
administrator alloca
alternatives aslr
asprintf atlas
autoconf automake
autoreconf awk
bash big-endian
bin-install bind
binpkg-list blas
bootstrap-depends broken
broken_on_platform bsd
bsd.prog.mk build
build-env buildlink-directories
buildlink-oss-soundcard-h built-in
builtin c
c++ ccache
cce cdefs
ceil changes
changes-entry changes-entry-noupdate
check check-clean
check-files check-files-clean
check-vulnerable checksum
checksum-phase clean
clean-depends cleandir
commit commit-changes-entry
compact compiler
conf config.guess
config.sub configuration
configure configure-env
configure-help configure_args
connect cos
cpe cputime
create-usergroup csh
ctf cvs
debug declaration
declare defined
depend dependencies
depends depends-checksum
depends-fetch deps
describe destdir
disable distclean
distinfo dl
dlopen do-buildlink
do-clean do-configure
do-configure-post-hook do-extract
do-fetch do-install
emul emul-distinfo
emul-fetch emulation
emulator enable
endian endif
enomem ensurepip
err errx
etc exp
extract-rpm fabs
feature features
fetch fetch-list
follows forbids
form format
fortify fortify_source
fossil friend
fts fts_close
fts_open fts_read
fts_set gcc
gethostbyaddr gethostbyname
gethostbyname2 getopt_long
getprogname getservbyname
getservbyport getservent
gettext git
github gitlab
glob gnu
gnu_configure_strict go
go-deps golang
guess-license hashbang
heimdal help
hg imake
in-tree increment
indirect inet_aton
interp interpreter
intl ip4
ip6 ipv4
ipv6 iso
kerberos krb
krb5 ksh
lapack latex
libintl_bindtextdomain libintl_gettext
libintl_textdomain libnbcompat
libs libtool
licence license
lintl little-endian
lock locking
lua lvalue
make makesum
memory mercurial
meta meta-package
meta_package mit-krb5
mk.conf mkl
mount move
moved mprotect
mremap native
nb nbcompat
netlib node
node.js nodejs
obstack obstack_ptr_grow
occurs only
openblas options
options.mk order
override override-intltool
override-message-intltool package
parallel path
pax paxctl
pbulk-index pc
perl perl5
perms php
pkg-build-options pkg-config
pkg_build_options pkgsrc
platform plist
post-extract post-fetch
post-wrapper pre-build-checks-hook
pre-configure-checks-hook pre-extract
pre-fetch print-go-deps
print-plist print-summary-data
privileged-install-hook pypi
python r
readme-all recursive
recv recvfrom
regcomp release-localbase-lock
release-lock relro
remove removed
rename renamed
reorder replace
replace_interpreter reproducible
resolv root
ruby send
sendfile sendto
setenv setgid
setprogname setuid
sh shebang
show show-all
show-build-defs show-depends
show-depends-dirs show-depends-pkgpaths
show-depends-recursive show-deps
show-distfiles show-downlevel
show-subdir-var show-tools
show-var show-vars
snprintf socket
ssp st_mode
stage-install strcasestr
strict strip
strndup strnlen
strsep subst
substitutions subversion
sun sunpro
sunwspro svn
symlink test
test-env tex
texlive tmp
todo tool
tools tools-libtool-m4-override
transitive type
ulimit undefined
undo-replace unlimit
unprivileged unprivileged-install-hook
unstripped update
updated upload
upload-distfiles use_tools
user utimes
vasprintf verbose
vsnprintf warn
warning warnings
warnx wattr_off
wattr_on work
wrapper wrkdir

Appendix F. Editing guidelines for the pkgsrc guide

Table of Contents

F.1. Make targets
F.2. Procedure

This section contains information on editing the pkgsrc guide itself.

F.1. Make targets

The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files are created from it:

F.2. Procedure

The procedure to edit the pkgsrc guide is:

  1. Make sure you have checked out the htdocs repository into a sibling directory of your pkgsrc directory. You will need the ability to commit from both pkgsrc and htdocs.

  2. Make sure you have the packages needed to regenerate the pkgsrc guide (and other XML-based NetBSD documentation) installed. These are automatically installed when you install the meta-pkgs/pkgsrc-guide-tools package.

  3. Run cd doc/guide to get to the right directory. All further steps will take place here.

  4. Edit the XML file(s) in files/.

  5. Run bmake to check the pkgsrc guide for valid XML and to build the final output files. If you get any errors at this stage, you can just edit the files, as there are only symbolic links in the working directory, pointing to the files in files/.

  6. (cd files && cvs commit)

  7. Run bmake clean && bmake to regenerate the output files with the proper RCS Ids.

  8. Run bmake regen to install and commit the files in both pkgsrc/doc and htdocs.

    Note

    If you have added, removed or renamed some chapters, you need to synchronize them using cvs add or cvs delete in the htdocs directory.

@ 1.368 log @doc/pkgsrc.*: regen @ text @d364 10 a373 9
21.6.7. Packages installing info files
21.6.8. Packages installing man pages
21.6.9. Packages installing X11 fonts
21.6.10. Packages installing SGML or XML data
21.6.11. Packages installing extensions to the MIME database
21.6.12. Packages using intltool
21.6.13. Packages installing startup scripts
21.6.14. Packages installing TeX modules
21.6.15. Packages supporting running binaries in d375 2 a376 2
21.6.16. Packages installing hicolor icons
21.6.17. Packages installing desktop files
d3407 10 a3416 9
21.6.7. Packages installing info files
21.6.8. Packages installing man pages
21.6.9. Packages installing X11 fonts
21.6.10. Packages installing SGML or XML data
21.6.11. Packages installing extensions to the MIME database
21.6.12. Packages using intltool
21.6.13. Packages installing startup scripts
21.6.14. Packages installing TeX modules
21.6.15. Packages supporting running binaries in d3418 2 a3419 2
21.6.16. Packages installing hicolor icons
21.6.17. Packages installing desktop files
d3680 1 a3680 1
  • If the package installs any info files, see Section 21.6.7, “Packages installing info files”.

  • d4457 1 a4457 1 for packages that are maintained in ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local d7442 10 a7451 9
    21.6.7. Packages installing info files
    21.6.8. Packages installing man pages
    21.6.9. Packages installing X11 fonts
    21.6.10. Packages installing SGML or XML data
    21.6.11. Packages installing extensions to the MIME database
    21.6.12. Packages using intltool
    21.6.13. Packages installing startup scripts
    21.6.14. Packages installing TeX modules
    21.6.15. Packages supporting running binaries in d7453 2 a7454 2
    21.6.16. Packages installing hicolor icons
    21.6.17. Packages installing desktop files
    d9344 25 a9368 1 21.6.7. Packages installing info files d9415 1 a9415 1 21.6.8. Packages installing man pages d9452 1 a9452 1 21.6.9. Packages installing X11 fonts d9469 1 a9469 1 21.6.10. Packages installing SGML or XML data d9497 1 a9497 1 21.6.11. Packages installing extensions to the MIME database d9527 1 a9527 1 21.6.12. Packages using intltool d9538 1 a9538 1 21.6.13. Packages installing startup scripts d9549 1 a9549 1 21.6.14. Packages installing TeX modules d9588 1 a9588 1 21.6.15. Packages supporting running binaries in d9605 1 a9605 1 21.6.16. Packages installing hicolor icons d9627 1 a9627 1 21.6.17. Packages installing desktop files d9809 1 a9809 1 See Section 21.6.16, “Packages installing hicolor icons”. d9814 1 a9814 1 See Section 21.6.11, “Packages installing extensions to the MIME database”. d9820 1 a9820 1 See Section 21.6.17, “Packages installing desktop files”. d11975 3 d11979 1 a11981 1 AMANDA_TMP d11983 1 a11985 1 AMANDA_VAR d11987 1 a11989 1 APACHE_MODULE_NAME d11991 1 a11993 1 APACHE_MODULE_SRCDIR d11995 1 a11997 1 APACHE_SUEXEC_CONFIGURE_ARGS d11999 1 a12001 1 APACHE_USER d12003 1 a12005 1 APPEND_ELF d12007 1 a12009 1 AUDIT_PACKAGES_FLAGS d12011 1 a12013 1 AUTOMAKE_OVERRIDE d12015 1 d12018 1 a12018 1 AUTO_MKDIRS d12034 1 d12036 2 d12039 1 a12041 1 BIND_GROUP d12043 1 a12045 1 BINOWN d12047 1 a12049 1 BIN_INSTALL_FLAGS d12051 1 a12053 1 BLAS d12055 1 a12057 1 BLAS_C_INTERFACE d12059 1 a12061 1 BLAS_INDEX64 d12063 1 a12065 1 BLAS_PC d12067 1 a12069 1 BOOTSTRAP_DEPENDS d12071 1 a12073 1 BROKEN_EXCEPT_ON_PLATFORM d12075 1 a12077 1 BSDSRCDIR d12079 1 a12081 1 BSD_MAKE_ENV d12083 1 a12085 1 BUILDLINK_AUTO_VARS d12087 1 a12089 1 BUILDLINK_CONTENTS_FILTER d12091 1 d12187 3 d12191 1 a12193 1 CHECK_FAKEHOME d12195 1 d12267 3 d12271 1 a12273 1 CMAKE_INSTALL_NAME_DIR d12275 1 a12277 1 CMAKE_MODULE_PATH_OVERRIDE d12279 1 a12281 1 CMAKE_PREFIX_PATH d12283 9 d12379 19 d12399 1 a12401 1 CYRUS_GROUP d12403 1 a12405 1 CYRUS_USER d12407 1 a12409 1 DAEMONTOOLS_LOG_USER d12411 1 a12413 1 DARWIN_REQUIRES_FILTER d12415 1 a12417 1 DBUS_USER d12419 1 a12421 1 DEFANG_USER d12423 1 a12425 1 DEFAULT_DISTFILES d12427 1 a12429 1 DEFAULT_SERIAL_DEVICE d12431 1 a12433 1 DEINSTALLDEPENDS d12435 1 a12437 1 DEINSTALL_TEMPLATES d12439 1 a12441 1 DELAYED_WARNING_MSG d12443 1 a12445 1 DEPENDS_TARGET d12447 1 a12449 1 DESTDIR d12451 1 a12453 1 DIALER_GROUP d12455 1 a12457 1 DISTDIR d12459 1 a12461 1 DISTINFO_FILE d12463 1 a12465 1 DIST_PATH d12467 1 a12469 1 DJBDNS_AXFR_USER d12471 1 a12473 1 DJBDNS_DJBDNS_GROUP d12475 1 a12477 1 DJBDNS_RBL_USER d12479 1 a12481 1 DLOPEN_REQUIRE_PTHREADS d12483 1 a12485 1 DL_CFLAGS d12487 1 a12489 1 DL_LIBS d12491 1 a12493 1 DOCOWN d12495 1 a12497 1 DQCACHE_GROUP d12499 1 a12501 1 DT_LAYOUT d12503 1 a12505 1 DYNAMIC_SITES_SCRIPT d12507 1 a12509 1 ECHO_N d12511 1 a12513 1 EMACS_TYPE d12515 1 a12517 1 EMULSUBDIR d12519 1 a12521 1 EMUL_ARCH d12523 1 a12525 1 EMUL_EXEC_FMT d12527 1 a12529 1 EMUL_MODULES d12531 1 a12533 1 EMUL_PKG_FMT d12535 1 a12537 1 EMUL_PLATFORMS d12539 1 a12541 1 EMUL_REQD d12543 1 a12545 1 ERROR_MSG d12547 1 a12549 1 EXIM_USER d12551 1 a12553 1 EXTRACTOR d12555 1 a12557 1 EXTRACT_CMD_DEFAULT d12559 1 a12561 1 EXTRACT_ELEMENTS d12563 1 a12565 1 EXTRACT_ONLY d12567 1 a12569 1 EXTRACT_SUFX d12571 1 a12573 1 FAIL d12575 1 a12577 1 FAIL_MSG d12579 1 a12581 1 FAM d12583 1 a12585 1 FAM_DEFAULT d12587 1 a12589 1 FCPATH d12591 1 a12593 1 FEATURE_LDFLAGS d12595 1 a12597 1 FETCH_AFTER_ARGS d12599 1 a12601 1 FETCH_CMD d12603 1 a12605 1 FETCH_PROXY d12607 1 a12609 1 FETCH_TIMEOUT d12611 1 a12613 1 FETCH_USING d12615 1 a12617 1 FILES_SUBST_SED d12619 1 d12631 8 d12726 13 d12740 2 d12743 1 a12745 1 GNU_CONFIGURE_INFODIR d12747 1 a12749 1 GNU_CONFIGURE_QUIET d12751 1 a12753 1 GODEP_REDIRECTS d12755 1 a12757 1 GO_DEPS d12759 1 a12761 1 GO_EXTRA_MOD_DIRS d12763 1 a12765 1 GO_SRCPATH d12767 1 a12769 1 GRUB_NETWORK_CARDS d12771 1 a12773 1 GRUB_SCAN_ARGS d12775 1 d12795 5 a12799 1 HOMEPAGE d12802 1 a12803 1 HOST_SPECIFIC_PKGS d12806 1 a12807 1 HOWL_USER d12810 1 a12811 1 ICECAST_CHROOTDIR d12814 1 a12815 1 IDOBASE d12818 1 a12819 1 IGNORE_INFO_DIRS d12822 1 a12823 1 IMAKE d12826 1 a12827 1 IMAKE_MAKE d12830 1 a12831 1 IMAP_UW_CCLIENT_MBOX_FMT d12834 1 a12835 1 INCOMPAT_CURSES d12838 1 a12839 1 INFO_FILES d12842 1 a12843 1 INIT_SYSTEM d12846 1 a12847 1 INN_GROUP d12850 1 a12851 1 INSTALLATION_DIRS d12854 1 a12855 1 INSTALL_ENV d12858 1 a12859 1 INSTALL_SRC d12862 1 a12863 1 INSTALL_UNSTRIPPED d12866 1 d12868 2 d12871 1 a12873 1 IRCD_HYBRID_MAXCONN d12875 1 a12877 1 IRCD_HYBRID_SYSLOG_EVENTS d12879 1 a12881 1 IRCD_HYBRID_TOPICLEN d12883 1 a12885 1 IRRD_USE_PGP d12887 1 a12889 1 JABBERD_LOGDIR d12891 1 a12893 1 JABBERD_SPOOLDIR d12895 1 d12898 1 d12900 2 d12903 1 a12905 1 JAVA_HOME d12907 1 a12909 1 JAVA_NAME d12911 1 a12913 1 JAVA_WRAPPERS d12915 1 a12917 1 JPEG_DEFAULT d12919 1 a12921 1 KERMIT_SUID_UUCP d12923 1 a12925 1 KNEWS_DOMAIN_FILE d12927 1 a12929 1 KRB5_ACCEPTED d12931 1 a12933 1 LANGUAGES d12935 1 a12937 1 LAPACKE_PC d12939 1 a12941 1 LAPACK_PC d12943 1 a12945 1 LDCONFIG_ADD_CMD d12947 1 a12949 1 LDD d12951 1 a12953 1 LEAFNODE_GROUP d12955 1 a12957 1 LIBDVDCSS_HOMEPAGE d12959 1 a12961 1 LIBIMAGEQUANT_TYPE d12963 1 a12965 1 LIBTOOL d12967 1 a12969 1 LIBTOOL_M4_OVERRIDE d12971 1 a12973 1 LICENSE d12975 5 d12982 1 a12982 1 LINK_RPATH_FLAG d13047 3 d13051 1 a13053 1 MAKE_DIRS d13055 1 a13057 1 MAKE_ENV d13059 1 a13061 1 MAKE_FLAGS d13063 1 a13065 1 MAKE_JOBS_SAFE d13067 1 a13069 1 MANCOMPRESSED_IF_MANZ d13071 1 a13073 1 MANZ d13075 1 a13077 1 MASTER_SITES d13079 1 a13081 1 MASTER_SITE_LOCAL d13083 1 a13085 1 MASTER_SITE_OVERRIDE d13087 1 a13089 1 MASTER_SORT d13091 1 a13093 1 MASTER_SORT_REGEX d13095 1 a13097 1 MEDIATOMB_GROUP d13099 1 a13101 1 MIPSPROBASE d13103 1 a13105 1 MIREDO_USER d13107 1 a13109 1 MKDIR d13111 1 a13113 1 MLDONKEY_GROUP d13115 1 a13117 1 MLDONKEY_USER d13119 1 a13121 1 MONOTONE_USER d13123 1 a13125 1 MOTIF_TYPE d13127 1 a13129 1 MPI_TYPE d13131 1 a13133 1 MSGFMT_STRIP_MSGID_PLURAL d13135 1 d13251 8 d13271 3 d13275 1 a13277 1 OWN_DIRS_PERMS d13279 1 a13281 1 P4PORT d13283 1 a13285 1 P4USER d13287 1 a13289 1 PALMOS_DEFAULT_SDK d13291 1 a13293 1 PAM_DEFAULT d13295 1 a13297 1 PASSIVE_FETCH d13299 1 a13301 1 PATCHFILES d13303 1 a13305 1 PATCH_DEBUG d13307 1 a13309 1 PATCH_DIST_CAT d13311 1 a13313 1 PATCH_FUZZ_FACTOR d13315 1 a13317 1 PATH d13319 5 d13326 1 d13328 2 d13331 1 a13333 1 PEAR_PACKAGE_XML d13335 1 a13337 1 PERL5_CONFIGURE d13339 1 a13341 1 PERL5_LDFLAGS d13343 1 a13345 1 PERL5_MODULE_TYPE d13347 1 a13349 1 PERL5_PACKLIST_DIR d13351 1 a13353 1 PERL5_SITEBASE d13355 1 a13357 1 PERL5_VENDORBASE d13359 1 a13361 1 PFVAR_H d13363 1 a13365 1 PGGROUP d13367 1 a13369 1 PGPKGSRCDIR d13371 1 a13373 1 PGSQL_VERSION d13375 1 a13377 1 PGSQL_VERSION_DEFAULT d13379 1 a13381 1 PG_LIB_EXT d13383 1 a13385 1 PHPCOMMON_MK d13387 1 a13389 1 PHP_BASE_VERS d13391 1 a13393 1 PHP_EXTENSION_DIR d13395 1 a13397 1 PHP_PKG_PREFIX d13399 1 a13401 1 PHP_VERSIONS_ACCEPTED d13403 1 a13405 1 PHP_VERSION_DEFAULT d13407 1 a13409 1 PILRC_USE_GTK d13411 1 a13413 1 PKGCONFIG_FILE d13415 1 a13417 1 PKGCONFIG_OVERRIDE_STAGE d13419 1 a13421 1 PKGGNUDIR d13423 1 a13425 1 PKGLOCALEDIR d13427 1 a13429 1 PKGNAME d13431 1 a13433 1 PKGPATH d13435 1 a13437 1 PKGSRC_BLAS_TYPES d13439 1 a13441 1 PKGSRC_COMPILER d13443 1 a13445 1 PKGSRC_LOCKTYPE d13447 1 a13449 1 PKGSRC_MESSAGE_RECIPIENTS d13451 1 a13453 1 PKGSRC_MKREPRO d13455 1 a13457 1 PKGSRC_RUN_TEST d13459 1 a13461 1 PKGSRC_SLEEPSECS d13463 1 a13465 1 PKGSRC_USE_CTF d13467 1 a13469 1 PKGSRC_USE_MKTOOLS d13471 1 a13473 1 PKGSRC_USE_SSP d13475 1 a13477 1 PKGTASKS_DATAFILE d13479 1 a13481 1 PKGTOOLS_ENV d13483 1 a13485 1 PKG_APACHE d13487 1 a13489 1 PKG_APACHE_DEFAULT d13491 1 a13493 1 PKG_BUILD_OPTIONS d13495 1 a13497 1 PKG_CONFIG d13499 1 a13501 1 PKG_CREATE_USERGROUP d13503 1 a13505 1 PKG_DEBUG_LEVEL d13507 1 a13509 1 PKG_DESTDIR_SUPPORT d13511 1 a13513 1 PKG_DISABLED_OPTIONS d13515 1 a13517 1 PKG_FC d13519 1 a13521 1 PKG_GECOS d13523 1 a13525 1 PKG_GROUPS d13527 1 a13529 1 PKG_HOME d13531 1 a13533 1 PKG_JAVA_HOME d13535 1 a13537 1 PKG_JVMS_ACCEPTED d13539 1 a13541 1 PKG_LEGACY_OPTIONS d13543 1 a13545 1 PKG_MKSYMLINKS d13547 1 a13549 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13551 1 a13553 1 PKG_OPTIONS_LEGACY_VARS d13555 1 a13557 1 PKG_OPTIONS_OPTIONAL_GROUPS d13559 1 a13561 1 PKG_OPTIONS_VAR d13563 1 a13565 1 PKG_PHP_MAJOR_VERS d13567 1 a13569 1 PKG_RCD_SCRIPTS d13571 1 a13573 1 PKG_REGISTER_SHELLS d13575 1 a13577 1 PKG_SHELL d13579 1 a13581 1 PKG_SUPPORTED_OPTIONS d13583 1 a13585 1 PKG_SYSCONFBASEDIR d13587 1 a13589 1 PKG_SYSCONFDIR_PERMS d13591 1 a13593 1 PKG_SYSCONFVAR d13595 1 a13597 1 PKG_UID d13599 1 a13601 1 PKG_USERS d13603 1 a13605 1 PKG_VERBOSE d13607 1 a13609 1 PLIST d13611 1 a13613 1 PLIST_AWK_ENV d13615 1 a13617 1 PLIST_SUBST d13619 1 a13621 1 PLIST_VARS d13623 1 a13625 1 POSSIBLE_GFORTRAN_VERSION d13627 1 a13629 1 PREFER d13631 1 a13633 1 PREFER_NATIVE_PTHREADS d13635 1 a13637 1 PREFIX d13639 1 a13641 1 PRE_ROOT_CMD d13643 1 a13645 1 PS d13647 1 a13649 1 PTHREAD_CFLAGS d13651 1 a13653 1 PTHREAD_LIBS d13655 1 a13657 1 PTHREAD_TYPE d13659 1 a13661 1 PYPKGPREFIX d13663 1 a13665 1 PYTHON_SELF_CONFLICT d13667 1 a13669 1 PYTHON_VERSIONED_DEPENDENCIES d13671 1 a13673 1 PYTHON_VERSIONS_INCOMPATIBLE d13675 1 a13677 1 PYTHON_VERSION_REQD d13679 1 a13681 1 QMAILDIR d13683 1 a13685 1 QMAIL_DAEMON_USER d13687 1 a13689 1 QMAIL_NOFILES_GROUP d13691 1 a13693 1 QMAIL_QMAIL_GROUP d13695 1 a13697 1 QMAIL_QUEUE_EXTRA d13699 1 a13701 1 QMAIL_REMOTE_USER d13703 1 a13705 1 QMAIL_SEND_USER d13707 1 a13709 1 QORE_MODULE_API d13711 1 a13713 1 QORE_USER_MODULE_DIR d13715 1 a13717 1 QPOPPER_FAC d13719 1 a13721 1 QPOPPER_USER d13723 5 a13729 1 RASMOL_DEPTH d13731 1 a13733 1 RCD_SCRIPTS_DIR d13735 1 a13737 1 RCD_SCRIPTS_MODE d13739 1 d13742 1 a13742 1 RCD_SCRIPT_SRC d13795 3 d13799 1 a13801 1 REQD_DIRS d13803 1 a13805 1 REQD_FILES d13807 1 a13809 1 REQD_FILES_PERMS d13811 1 a13813 1 RESOLV_LDFLAGS d13815 5 a13821 1 RM d13823 1 a13825 1 ROOT_GROUP d13827 1 a13829 1 RPCGEN d13831 1 a13833 1 RPM2PKG_PLIST d13835 1 a13837 1 RPM2PKG_STAGE d13839 1 a13841 1 RPM2PKG_SUBPREFIX d13843 1 a13845 1 RPMIGNOREPATH d13847 1 a13849 1 RSSH_CVS_PATH d13851 1 a13853 1 RSSH_RSYNC_PATH d13855 1 a13857 1 RSSH_SFTP_SERVER_PATH d13859 1 a13861 1 RUBYGEM d13863 1 a13865 1 RUBYGEM_NAME d13867 1 a13869 1 RUBYGEM_USE_MANPAGES d13871 1 a13873 1 RUBY_ABI_VERSION d13875 1 a13877 1 RUBY_ARCHINC d13879 1 a13881 1 RUBY_BASE d13883 1 a13885 1 RUBY_BUILD_DOCUMENT d13887 1 a13889 1 RUBY_DOC d13891 1 a13893 1 RUBY_EG d13895 1 a13897 1 RUBY_EXTCONF d13899 1 a13901 1 RUBY_EXTCONF_DEBUG d13903 1 a13905 1 RUBY_GEM_ARCH d13907 1 a13909 1 RUBY_INC d13911 1 a13913 1 RUBY_LIB_BASE d13915 1 a13917 1 RUBY_NOVERSION d13919 1 a13921 1 RUBY_RAILS d13923 1 a13925 1 RUBY_RAILS70_VERSION d13927 1 a13929 1 RUBY_RAILS_ACCEPTED d13931 1 a13933 1 RUBY_RAILS_REQD d13935 1 a13937 1 RUBY_RIDIR d13939 1 a13941 1 RUBY_SHLIB d13943 1 a13945 1 RUBY_SHLIBVER d13947 1 a13949 1 RUBY_SITEARCHLIB d13951 1 a13953 1 RUBY_SITELIB_BASE d13955 1 a13957 1 RUBY_SLEXT d13959 1 a13961 1 RUBY_STATICLIB d13963 1 a13965 1 RUBY_SYSRIDIR d13967 1 a13969 1 RUBY_VENDORARCHLIB d13971 1 a13973 1 RUBY_VENDORLIB_BASE d13975 1 a13977 1 RUBY_VERSION d13979 1 a13981 1 RUBY_VERSIONS_INCOMPATIBLE d13983 1 a13985 1 RUBY_VERSION_REQD d13987 1 a13989 1 RUN d13991 1 a13993 1 RUST_TYPE d13995 1 a13997 1 SCREWS_GROUP d13999 1 a14001 1 SCRIPTS_ENV d14003 1 a14005 1 SCROLLKEEPER_REBUILDDB d14007 1 a14009 1 SDIST_PAWD d14011 1 a14013 1 SERIAL_DEVICES d14015 1 a14017 1 SETGID_GAMES_PERMS d14019 1 a14021 1 SH d14023 1 d14110 8 d14203 3 d14207 1 a14209 1 TYPE d14211 1 a14213 1 UCSPI_SSL_GROUP d14215 1 a14217 1 UNLIMIT_RESOURCES d14219 1 a14221 1 UNPRIVILEGED_GROUP d14223 1 a14225 1 UNPRIVILEGED_USER d14227 1 a14229 1 UNWRAP_PATTERNS d14231 1 a14233 1 UPDATE_TARGET d14235 1 a14237 1 USERGROUP_PHASE d14239 1 a14241 1 USER_SPECIFIC_PKGS d14243 1 a14245 1 USE_APR d14247 1 a14249 1 USE_BUILTIN d14251 1 a14253 1 USE_CROSS_COMPILE d14255 1 a14257 1 USE_CWRAPPERS d14259 1 a14261 1 USE_DB185 d14263 1 a14265 1 USE_GAMESGROUP d14267 1 a14269 1 USE_IMAKE d14271 1 a14273 1 USE_JAVA2 d14275 1 a14277 1 USE_LIBTOOL d14279 1 a14281 1 USE_NETBSD_REPO d14283 1 a14285 1 USE_PKGSRC_GCC_RUNTIME d14287 1 a14289 1 USE_PKG_ADMIN_DIGEST d14291 1 a14293 1 USE_RUBY_INSTALL d14295 1 a14297 1 USE_RUBY_SETUP_PKG d14299 1 a14301 1 UUCP_GROUP d14303 1 a14305 1 VARBASE d14307 1 a14309 1 VIM_EXTRA_OPTS d14311 1 a14313 1 WCALC_CGIDIR d14315 1 a14317 1 WCALC_HTMLDIR d14319 1 a14321 1 WDM_MANAGERS d14323 1 a14325 1 WRAPPER_REORDER_CMDS d14327 1 a14329 1 WRKDIR_BASENAME d14331 1 a14333 1 WRKLOG d14335 1 a14337 1 WRKSRC d14339 1 a14341 1 X11 d14343 1 a14345 1 X11_PKGSRCDIR d14347 1 a14349 1 X509_CERTIFICATE d14351 1 a14353 1 XAW_TYPE d14355 1 a14357 1 XMKMF d14359 1 d14362 1 a14362 1 XXX d14511 3 d14515 1 a14517 1 declaration d14519 1 a14521 1 defined d14523 1 a14525 1 dependencies d14527 1 a14529 1 depends-checksum d14531 1 a14533 1 deps d14535 1 a14537 1 destdir d14539 1 a14541 1 distclean d14543 1 a14545 1 dl d14547 1 a14549 1 do-buildlink d14551 1 a14553 1 do-configure d14555 1 a14557 1 do-extract d14559 1 a14561 1 do-install d14563 1 a14565 1 emul-distinfo d14567 1 a14569 1 emulation d14571 1 a14573 1 enable d14575 1 d14614 1 d14616 2 d14619 1 a14621 1 fts_close d14623 1 a14625 1 fts_read d14627 1 a14629 1 gcc d14631 1 a14633 1 gethostbyname d14635 1 a14637 1 getopt_long d14639 1 a14641 1 getservbyname d14643 1 a14645 1 getservent d14647 1 d14674 1 d14676 2 d14679 1 a14681 1 increment d14683 1 a14685 1 inet_aton d14687 1 a14689 1 interpreter d14691 1 a14693 1 ip4 d14695 1 a14697 1 ipv4 d14699 1 a14701 1 iso d14703 1 a14705 1 krb d14707 1 a14709 1 ksh d14711 1 a14713 1 latex d14715 1 a14717 1 libintl_gettext d14719 1 a14721 1 libnbcompat d14723 1 a14725 1 libtool d14727 1 a14729 1 license d14731 1 a14733 1 little-endian d14735 1 a14737 1 locking d14739 1 a14741 1 lvalue d14743 1 a14745 1 makesum d14747 1 d14979 3 d14983 1 a14985 1 sunpro d14987 1 @ 1.367 log @doc/pkgsrc.*: regen @ text @d5337 5 d11948 1 a11948 1 ALSA_PC a11950 1 ALTERNATIVES_SRC d11952 1 a11954 1 AMANDA_USER d11956 1 a11958 1 APACHE_GROUP d11960 1 a11962 1 APACHE_MODULE_SRC d11964 1 a11966 1 APACHE_PKG_PREFIX d11968 1 a11970 1 APACHE_SUEXEC_DOCROOT d11972 1 a11974 1 APPEND_ABI d11976 1 a11978 1 ARLA_CACHE d11980 1 a11982 1 AUTOCONF_REQD d11984 1 a11986 1 AUTOMAKE_REQD d11988 1 a11990 1 BDB185_DEFAULT d11992 1 a11994 1 BDB_ACCEPTED d11996 1 a11998 1 BDB_LIBS d12000 1 a12002 1 BINCIMAP_GROUP d12004 1 a12006 1 BIND_DIR d12008 1 a12010 1 BIND_USER d12012 1 a12014 1 BINPKG_SITES d12016 1 a12018 1 BISON_PKGDATADIR d12020 1 a12022 1 BLAS_ACCEPTED d12024 1 a12026 1 BLAS_INCLUDES d12028 1 a12030 1 BLAS_LIBS d12032 1 a12034 1 BLAS_TYPE d12036 1 a12038 1 BROKEN d12040 1 a12042 1 BROKEN_ON_PLATFORM d12044 1 a12046 1 BSDXSRCDIR d12048 1 a12050 1 BUILDLINK_AUTO_DIRS d12052 1 a12054 1 BUILDLINK_CFLAGS a12055 2 a12056 1 BUILDLINK_DEPMETHOD d12152 1 a12152 1 CHECKOUT_DATE a12154 1 CHECK_COMPILER d12156 1 a12158 1 CHECK_FILES d12160 1 a12162 1 CHECK_FILES_STRICT d12164 1 a12166 1 CHECK_HEADERS_SKIP d12168 1 a12170 1 CHECK_INTERPRETER_SKIP d12172 1 a12174 1 CHECK_PERMS_AUTOFIX d12176 1 a12178 1 CHECK_PIE d12180 1 a12182 1 CHECK_PIE_SUPPORTED d12184 1 a12186 1 CHECK_PORTABILITY_EXPERIMENTAL d12188 1 a12190 1 CHECK_RELRO d12192 1 a12194 1 CHECK_RELRO_SUPPORTED d12196 1 a12198 1 CHECK_SHLIBS_SKIP d12200 1 a12202 1 CHECK_SHLIBS_TOXIC d12204 1 a12206 1 CHECK_SSP_SKIP d12208 1 a12210 1 CHECK_STRIPPED d12212 1 a12214 1 CHECK_WRKREF d12216 1 a12218 1 CHECK_WRKREF_SKIP d12220 1 a12222 1 CLAMAV_GROUP d12224 1 a12226 1 CLANGBASE d12228 1 a12230 1 CMAKE_DEPENDENCIES_REWRITE d12232 1 a12234 1 CMAKE_INSTALL_PREFIX d12236 1 a12238 1 CMAKE_PKGSRC_BUILD_FLAGS a12239 2 a12240 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM d12328 1 a12328 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG a12330 1 CXX d12332 1 a12334 1 CYRUS_IDLE d12336 1 a12338 1 DAEMONTOOLS_GROUP d12340 1 a12342 1 DARWIN_NO_SYSTEM_LIBS d12344 1 a12346 1 DBUS_GROUP d12348 1 a12350 1 DEFANG_GROUP d12352 1 a12354 1 DEFAULT_ACCEPTABLE_LICENSES d12356 1 a12358 1 DEFAULT_IRC_SERVER d12360 1 a12362 1 DEF_UMASK d12364 1 a12366 1 DEINSTALL_SRC d12368 1 a12370 1 DELAYED_ERROR_MSG d12372 1 a12374 1 DEPENDS d12376 1 a12378 1 DEPENDS_TYPE d12380 1 a12382 1 DESTDIR_VARNAME d12384 1 a12386 1 DIGEST_REQD d12388 1 a12390 1 DISTFILES d12392 1 a12394 1 DISTNAME d12396 1 a12398 1 DIST_SUBDIR d12400 1 a12402 1 DJBDNS_CACHE_USER d12404 1 a12406 1 DJBDNS_LOG_USER d12408 1 a12410 1 DJBDNS_TINY_USER d12412 1 a12414 1 DL_AUTO_VARS d12416 1 a12418 1 DL_LDFLAGS d12420 1 a12422 1 DNS d12424 1 a12426 1 DOWNLOADED_DISTFILE d12428 1 a12430 1 DQCACHE_USER d12432 1 a12434 1 DYNAMIC_SITES_CMD d12436 1 a12438 1 ECHO d12440 1 a12442 1 ELK_GUI d12444 1 a12446 1 EMULDIR d12448 1 a12450 1 EMULSUBDIRSLASH d12452 1 a12454 1 EMUL_DISTRO d12456 1 a12458 1 EMUL_IS_NATIVE d12460 1 a12462 1 EMUL_OPSYS d12464 1 a12466 1 EMUL_PLATFORM d12468 1 a12470 1 EMUL_PREFER d12472 1 a12474 1 EMUL_TYPE d12476 1 a12478 1 EXIM_GROUP d12480 1 a12482 1 EXPORT_SYMBOLS_LDFLAGS d12484 1 a12486 1 EXTRACT_CMD d12488 1 a12490 1 EXTRACT_DIR d12492 1 a12494 1 EXTRACT_ENV d12496 1 a12498 1 EXTRACT_OPTS d12500 1 a12502 1 EXTRACT_USING d12504 1 a12506 1 FAILOVER_FETCH d12508 1 a12510 1 FAKE_NCURSES d12512 1 a12514 1 FAM_ACCEPTED d12516 1 a12518 1 FAM_SERVER d12520 1 a12522 1 FEATURE_CPPFLAGS d12524 1 a12526 1 FEATURE_LIBS d12528 1 a12530 1 FETCH_BEFORE_ARGS d12532 1 a12534 1 FETCH_OUTPUT_ARGS d12536 1 a12538 1 FETCH_RESUME_ARGS d12540 1 a12542 1 FETCH_USE_IPV4_ONLY d12544 1 a12546 1 FILES_SUBST a12547 2 a12548 1 FONTDIR a12559 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12646 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12648 1 a12650 1 GNU_CONFIGURE d12652 1 a12654 1 GNU_CONFIGURE_MANDIR d12656 1 a12658 1 GNU_CONFIGURE_STRICT d12660 1 a12662 1 GO_BUILD_PATTERN d12664 1 a12666 1 GO_DIST_BASE d12668 1 a12670 1 GO_MODULE_FILES d12672 1 a12674 1 GROUP_SPECIFIC_PKGS d12676 1 a12678 1 GRUB_PRESET_COMMAND a12679 2 a12680 1 HASKELL_COMPILER d12700 1 a12700 1 HG_REPO d12703 2 a12704 6 HG_REPOSITORIES HG_TAG HOMEPAGE HOST_PKGTOOLS_ARGS a12706 1 HOST_SPECIFIC_PKGS d12708 1 a12710 1 HOWL_USER d12712 1 a12714 1 ICECAST_CHROOTDIR d12716 1 a12718 1 IDOBASE d12720 1 a12722 1 IGNORE_INFO_DIRS d12724 1 a12726 1 IMAKE d12728 1 a12730 1 IMAKE_MAKE d12732 1 a12734 1 IMAP_UW_CCLIENT_MBOX_FMT d12736 1 a12738 1 INCOMPAT_CURSES d12740 1 a12742 1 INFO_FILES d12744 1 a12746 1 INIT_SYSTEM d12748 1 a12750 1 INN_GROUP d12752 1 a12754 1 INSTALLATION_DIRS d12756 1 a12758 1 INSTALL_ENV d12760 1 a12762 1 INSTALL_SRC d12764 1 a12766 1 INSTALL_UNSTRIPPED d12768 1 a12770 1 IRCD_HYBRID_IRC_USER d12772 1 a12774 1 IRCD_HYBRID_NICLEN d12776 1 a12778 1 IRCD_HYBRID_SYSLOG_FACILITY d12780 1 a12782 1 IRIX d12784 1 a12786 1 JABBERD_GROUP d12788 1 a12790 1 JABBERD_PIDDIR a12791 2 a12792 1 JAVA_APP_PATH a12794 1 JAVA_APP_TARGETS d12796 1 a12798 1 JAVA_CLASSPATH d12800 1 a12802 1 JAVA_LD_LIBRARY_PATH d12804 1 a12806 1 JAVA_UNLIMIT d12808 1 a12810 1 JPEG_ACCEPTED d12812 1 a12814 1 KERBEROS d12816 1 a12818 1 KJS_USE_PCRE d12820 1 a12822 1 KNEWS_DOMAIN_NAME d12824 1 a12826 1 KRB5_DEFAULT d12828 1 a12830 1 LAPACKE_LIBS d12832 1 a12834 1 LAPACK_LIBS d12836 1 a12838 1 LATEX2HTML_ICONPATH d12840 1 a12842 1 LDCONFIG_REMOVE_CMD d12844 1 a12846 1 LEAFNODE_DATA_DIR d12848 1 a12850 1 LEAFNODE_USER d12852 1 a12854 1 LIBDVDCSS_MASTER_SITES d12856 1 a12858 1 LIBRSVG_TYPE d12860 1 a12862 1 LIBTOOLIZE_PLIST d12864 1 a12866 1 LIBUSB_TYPE d12868 1 a12870 1 LINKER_RPATH_FLAG a12871 7 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12936 1 a12936 1 MAJOR_OS_VERSION a12938 1 MAKEINFO_ARGS d12940 1 a12942 1 MAKE_DIRS_PERMS d12944 1 a12946 1 MAKE_FILE d12948 1 a12950 1 MAKE_JOBS d12952 1 a12954 1 MAKE_PROGRAM d12956 1 a12958 1 MANINSTALL d12960 1 a12962 1 MARIADB_VERSIONS_ALL d12964 1 a12966 1 MASTER_SITE_BACKUP d12968 1 a12970 1 MASTER_SITE_MOZILLA d12972 1 a12974 1 MASTER_SITE_PERL_CPAN d12976 1 a12978 1 MASTER_SORT_RANDOM d12980 1 a12982 1 MECAB_CHARSET d12984 1 a12986 1 MEDIATOMB_USER d12988 1 a12990 1 MIREDO_GROUP d12992 1 a12994 1 MISSING_FEATURES d12996 1 a12998 1 MKPIE_SUPPORTED d13000 1 a13002 1 MLDONKEY_HOME d13004 1 a13006 1 MONOTONE_GROUP d13008 1 a13010 1 MOTIFBASE d13012 1 a13014 1 MOTIF_TYPE_DEFAULT d13016 1 a13018 1 MSGFMT_STRIP_MSGCTXT a13019 2 a13020 1 MUST a13135 4 OS_HAVE_ALSA OS_HAVE_RCD d13148 1 a13148 1 OVERRIDE_ROCKSPEC a13150 1 OWN_DIRS d13152 1 a13154 1 P4GROUP d13156 1 a13158 1 P4ROOT d13160 1 a13162 1 PACKAGES d13164 1 a13166 1 PAMBASE d13168 1 a13170 1 PAPERSIZE d13172 1 a13174 1 PATCHDIR d13176 1 a13178 1 PATCH_ARGS d13180 1 a13182 1 PATCH_DIST_ARGS d13184 1 a13186 1 PATCH_DIST_STRIP d13188 1 a13190 1 PATCH_STRIP a13191 2 a13192 5 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS a13194 1 PEAR_CHANNEL_VERSION d13196 1 a13198 1 PEAR_LIB d13200 1 a13202 1 PERL5 d13204 1 a13206 1 PERL5_CONFIGURE_DIRS d13208 1 a13210 1 PERL5_LICENSE d13212 1 a13214 1 PERL5_PACKLIST d13216 1 a13218 1 PERL5_PERLBASE d13220 1 a13222 1 PERL5_USE_PACKLIST d13224 1 a13226 1 PFCTL d13228 1 a13230 1 PF_VERSION d13232 1 a13234 1 PGHOME d13236 1 a13238 1 PGSQL_TYPE d13240 1 a13242 1 PGSQL_VERSIONS_ACCEPTED d13244 1 a13246 1 PGUSER d13248 1 a13250 1 PHP d13252 1 a13254 1 PHPPKGSRCDIR d13256 1 a13258 1 PHP_CHECK_INSTALLED d13260 1 a13262 1 PHP_INITIAL_TEENY d13264 1 a13266 1 PHP_VERSION d13268 1 a13270 1 PHP_VERSIONS_INCOMPATIBLE d13272 1 a13274 1 PHP_VERSION_REQD d13276 1 a13278 1 PKGCONFIG_BASE d13280 1 a13282 1 PKGCONFIG_OVERRIDE d13284 1 a13286 1 PKGDIR d13288 1 a13290 1 PKGINFODIR d13292 1 a13294 1 PKGMANDIR d13296 1 a13298 1 PKGNAME_REQD d13300 1 a13302 1 PKGREVISION d13304 1 a13306 1 PKGSRC_CHANGES d13308 1 a13310 1 PKGSRC_KEEP_BIN_PKGS d13312 1 a13314 1 PKGSRC_MAKE_ENV d13316 1 a13318 1 PKGSRC_MKPIE d13320 1 a13322 1 PKGSRC_OVERRIDE_MKPIE d13324 1 a13326 1 PKGSRC_SETENV d13328 1 a13330 1 PKGSRC_TODO d13332 1 a13334 1 PKGSRC_USE_FORTIFY d13336 1 a13338 1 PKGSRC_USE_RELRO d13340 1 a13342 1 PKGSRC_USE_STACK_CHECK d13344 1 a13346 1 PKGTOOLS_ARGS d13348 1 a13350 1 PKG_ALTERNATIVES d13352 1 a13354 1 PKG_APACHE_ACCEPTED d13356 1 a13358 1 PKG_BEST_EXISTS d13360 1 a13362 1 PKG_COMPRESSION d13364 1 a13366 1 PKG_CONFIG_PERMS d13368 1 a13370 1 PKG_DB_TMPDIR d13372 1 a13374 1 PKG_DEFAULT_OPTIONS d13376 1 a13378 1 PKG_DEVELOPER d13380 1 a13382 1 PKG_FATAL_ERRORS d13384 1 a13386 1 PKG_FILELIST_CMD d13388 1 a13390 1 PKG_GID d13392 1 a13394 1 PKG_GROUPS_VARS d13396 1 a13398 1 PKG_INIT_SCRIPTS d13400 1 a13402 1 PKG_JVM d13404 1 a13406 1 PKG_JVM_DEFAULT d13408 1 a13410 1 PKG_LIBTOOL d13412 1 a13414 1 PKG_OPTIONS d13416 1 a13418 1 PKG_OPTIONS_LEGACY_OPTS d13420 1 a13422 1 PKG_OPTIONS_NONEMPTY_SETS d13424 1 a13426 1 PKG_OPTIONS_REQUIRED_GROUPS d13428 1 a13430 1 PKG_PHP d13432 1 a13434 1 PKG_PHP_VERSION d13436 1 a13438 1 PKG_REFCOUNT_DBDIR d13440 1 a13442 1 PKG_RESUME_TRANSFERS d13444 1 a13446 1 PKG_SUGGESTED_OPTIONS d13448 1 a13450 1 PKG_SYSCONFBASE d13452 1 a13454 1 PKG_SYSCONFDIR d13456 1 a13458 1 PKG_SYSCONFSUBDIR d13460 1 a13462 1 PKG_TOOLS_BIN d13464 1 a13466 1 PKG_UPDATE_FONTS_DB d13468 1 a13470 1 PKG_USERS_VARS d13472 1 a13474 1 PLEASE d13476 1 a13478 1 PLIST_AWK d13480 1 a13482 1 PLIST_SRC d13484 1 a13486 1 PLIST_TYPE d13488 1 a13490 1 POPTOP_USE_MPPE d13492 1 a13494 1 POST_FETCH_HOOK d13496 1 a13498 1 PREFER_NATIVE d13500 1 a13502 1 PREFER_PKGSRC d13504 1 a13506 1 PREPEND_PATH d13508 1 a13510 1 PRIVILEGED_STAGES d13512 1 a13514 1 PTHREAD_AUTO_VARS d13516 1 a13518 1 PTHREAD_LDFLAGS d13520 1 a13522 1 PTHREAD_OPTS d13524 1 a13526 1 PVM_SSH d13528 1 a13530 1 PYTHON_FOR_BUILD_ONLY d13532 1 a13534 1 PYTHON_VERSION d13536 1 a13538 1 PYTHON_VERSIONS_ACCEPTED d13540 1 a13542 1 PYTHON_VERSION_DEFAULT d13544 1 a13546 1 PYVERSSUFFIX d13548 1 a13550 1 QMAIL_ALIAS_USER d13552 1 a13554 1 QMAIL_LOG_USER d13556 1 a13558 1 QMAIL_PASSWD_USER d13560 1 a13562 1 QMAIL_QUEUE_DIR d13564 1 a13566 1 QMAIL_QUEUE_USER d13568 1 a13570 1 QMAIL_ROOT_USER d13572 1 a13574 1 QORE_LATEST_MODULE_API d13576 1 a13578 1 QORE_MODULE_DIR d13580 1 a13582 1 QORE_VERSION d13584 1 a13586 1 QPOPPER_SPOOL_DIR d13588 1 a13590 1 RAKE_NAME d13592 1 a13594 5 RCD_DIR RCD_ORDER RCD_SCRIPTS d13596 1 a13598 1 RCD_SCRIPTS_EXAMPLEDIR d13600 1 a13602 1 RCD_SCRIPTS_SHELL a13603 3 RCD_SUBR a13675 4 ROCKSPEC_NAME ROCKSPEC_SPECFILE a13878 1 SHORTNAME d13880 1 a13882 1 SILC_CLIENT_WITH_PERL d13884 1 a13886 1 SKIP_DEPENDS d13888 1 a13890 1 SMF_MANIFEST d13892 1 a13894 1 SMF_METHOD_SHELL d13896 1 a13898 1 SMF_NAME d13900 1 a13902 1 SMF_SRCDIR d13904 1 a13906 1 SNIPROXY_USER d13908 1 a13910 1 SPECIAL_PERMS d13912 1 a13914 1 SSH_SUID d13916 1 a13918 1 SSYNC_PAWD d13920 1 a13922 1 STRIP d13924 1 a13926 1 STRIP_DEBUG d13928 1 a13930 1 STRIP_FILES_SKIP d13932 1 a13934 1 SUBDIR d13936 1 a13938 1 SUBST_CLASSES d13940 1 a13942 1 SUBST_FILTER_CMD d13944 1 a13946 1 SUBST_NOOP_OK d13948 1 a13950 1 SUBST_SHOW_DIFF d13952 1 a13954 1 SUBST_STAGE d13956 1 a13958 1 SUNWSPROBASE a13959 2 a13960 1 SVN_EXTRACTDIR a13962 5 SVN_REPO SVN_REPOSITORIES SVN_REVISION d13964 1 a13966 1 TARGET_ARCH d13968 1 a13970 1 TERMCAP_TYPE d13972 1 a13974 1 TERMINFO_TYPE d13976 1 a13978 1 TEST_DEPENDS d13980 1 a13982 1 TEST_ENV d13984 1 a13986 1 TEST_MAKE_CMD d13988 1 a13990 1 TEST_TARGET d13992 1 a13994 1 TEXLIVE_REV d13996 1 a13998 1 TEXMFSITE d14000 1 a14002 1 TEX_HYPHEN_DAT d14004 1 a14006 1 TEX_TEXMF_DIRS d14008 1 a14010 1 TINYDYN_USER d14012 1 a14014 1 TO d14016 1 a14018 1 TOOLS_ALWAYS_WRAP d14020 1 a14022 1 TOOLS_BROKEN d14024 1 a14026 1 TOOLS_CMDLINE_SED d14028 1 a14030 1 TOOLS_CROSS_DESTDIR d14032 1 a14034 1 TOOLS_FAIL d14036 1 a14038 1 TOOLS_LDCONFIG d14040 1 a14042 1 TOOLS_PATH d14044 1 a14046 1 TOOLS_USE_CROSS_COMPILE a14047 3 TTF_FONTDIR d14204 1 a14204 1 XXXX a14206 1 YES d14208 1 a14210 1 __stdc__ d14212 1 a14214 1 accept d14216 1 a14218 1 acquire-lock d14220 1 a14222 1 added d14224 1 a14226 1 alloca d14228 1 a14230 1 aslr d14232 1 a14234 1 atlas d14236 1 a14238 1 automake d14240 1 a14242 1 awk d14244 1 a14246 1 big-endian d14248 1 a14250 1 bind d14252 1 a14254 1 blas d14256 1 a14258 1 broken d14260 1 a14262 1 bsd d14264 1 a14266 1 build d14268 1 a14270 1 buildlink-directories d14272 1 a14274 1 built-in d14276 1 a14278 1 c d14280 1 a14282 1 ccache d14284 1 a14286 1 cdefs d14288 1 a14290 1 changes d14292 1 a14294 1 changes-entry-noupdate d14296 1 a14298 1 check-clean d14300 1 a14302 1 check-files-clean d14304 1 a14306 1 checksum d14308 1 a14310 1 clean d14312 1 a14314 1 cleandir d14316 1 a14318 1 commit-changes-entry d14320 1 a14322 1 compiler d14324 1 a14326 1 config.guess d14328 1 a14330 1 configuration d14332 1 a14334 1 configure-env d14336 1 a14338 1 configure_args d14340 1 a14342 1 cos d14344 1 a14346 1 cputime d14348 1 a14350 1 csh a14351 3 cvs a14414 1 endif d14416 1 a14418 1 ensurepip d14420 1 a14422 1 errx d14424 1 a14426 1 exp d14428 1 a14430 1 fabs d14432 1 a14434 1 features d14436 1 a14438 1 fetch-list d14440 1 a14442 1 forbids d14444 1 a14446 1 format a14447 2 a14448 1 fossil a14482 1 git d14484 1 a14486 1 gitlab d14488 1 a14490 1 gnu d14492 1 a14494 1 go d14496 1 a14498 1 golang d14500 1 a14502 1 hashbang a14503 2 a14504 1 hg a14578 1 mercurial d14580 1 a14582 1 meta-package d14584 1 a14586 1 mit-krb5 d14588 1 a14590 1 mkl d14592 1 a14594 1 move d14596 1 a14598 1 mprotect d14600 1 a14602 1 native d14604 1 a14606 1 nbcompat d14608 1 a14610 1 node d14612 1 a14614 1 nodejs d14616 1 a14618 1 obstack_ptr_grow d14620 1 a14622 1 only d14624 1 a14626 1 options d14628 1 a14630 1 order d14632 1 a14634 1 override-intltool d14636 1 a14638 1 package d14640 1 a14642 1 path d14644 1 a14646 1 paxctl d14648 1 a14650 1 pc d14652 1 a14654 1 perl5 d14656 1 a14658 1 php d14660 1 a14662 1 pkg-config d14664 1 a14666 1 pkgsrc d14668 1 a14670 1 plist d14672 1 a14674 1 post-fetch d14676 1 a14678 1 pre-build-checks-hook d14680 1 a14682 1 pre-extract d14684 1 a14686 1 print-go-deps d14688 1 a14690 1 print-summary-data d14692 1 a14694 1 pypi d14696 1 a14698 1 r d14700 1 a14702 1 recursive d14704 1 a14706 1 recvfrom d14708 1 a14710 1 release-localbase-lock d14712 1 a14714 1 relro d14716 1 a14718 1 removed d14720 1 a14722 1 renamed d14724 1 a14726 1 replace d14728 1 a14730 1 reproducible d14732 1 a14734 1 root d14736 1 a14738 1 send d14740 1 a14742 1 sendto d14744 1 a14746 1 setgid d14748 1 a14750 1 setuid d14752 1 a14754 1 shebang d14756 1 a14758 1 show-all d14760 1 a14762 1 show-depends d14764 1 a14766 1 show-depends-pkgpaths d14768 1 a14770 1 show-deps d14772 1 a14774 1 show-downlevel d14776 1 a14778 1 show-tools d14780 1 a14782 1 show-vars d14784 1 a14786 1 socket d14788 1 a14790 1 st_mode d14792 1 a14794 1 strcasestr d14796 1 a14798 1 strip d14800 1 a14802 1 strnlen d14804 1 a14806 1 subst a14807 3 subversion a14814 1 svn d14816 1 a14818 1 test d14820 1 a14822 1 tex d14824 1 a14826 1 tmp d14828 1 a14830 1 tool d14832 1 a14834 1 tools-libtool-m4-override d14836 1 a14838 1 type d14840 1 a14842 1 undefined d14844 1 a14846 1 unlimit d14848 1 a14850 1 unprivileged-install-hook d14852 1 a14854 1 update d14856 1 a14858 1 upload d14860 1 a14862 1 use_tools d14864 1 a14866 1 utimes d14868 1 a14870 1 verbose d14872 1 a14874 1 warn d14876 1 a14878 1 warnings d14880 1 a14882 1 wattr_off d14884 1 a14886 1 work a14887 2 a14888 1   @ 1.366 log @doc/pkgsrc.*: regen @ text @d3596 32 a3627 16
  • MAINTAINER is the email address of the person who feels responsible for this package, and who is most likely to look at problems or questions regarding this package which have been reported with send-pr(1). Other developers may contact the MAINTAINER before making changes to the package, but are not required to do so. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to .

  • OWNER should be used instead of MAINTAINER when you do not want other developers to update or change the package without contacting you first. A package Makefile should contain one of MAINTAINER or OWNER, but not both.

  • d11943 3 d11947 1 a11949 1 AMANDA_TMP d11951 1 a11953 1 AMANDA_VAR d11955 1 a11957 1 APACHE_MODULE_NAME d11959 1 a11961 1 APACHE_MODULE_SRCDIR d11963 1 a11965 1 APACHE_SUEXEC_CONFIGURE_ARGS d11967 1 a11969 1 APACHE_USER d11971 1 a11973 1 APPEND_ELF d11975 1 a11977 1 AUDIT_PACKAGES_FLAGS d11979 1 a11981 1 AUTOMAKE_OVERRIDE d11983 1 a11985 1 AUTO_MKDIRS d11987 1 a11989 1 BDBBASE d11991 1 a11993 1 BDB_DEFAULT d11995 1 a11997 1 BDB_TYPE d11999 1 a12001 1 BINCIMAP_USER d12003 1 a12005 1 BIND_GROUP d12007 1 a12009 1 BINOWN d12011 1 a12013 1 BIN_INSTALL_FLAGS d12015 1 a12017 1 BLAS d12019 1 a12021 1 BLAS_C_INTERFACE d12023 1 a12025 1 BLAS_INDEX64 d12027 1 a12029 1 BLAS_PC d12031 1 a12033 1 BOOTSTRAP_DEPENDS d12035 1 a12037 1 BROKEN_EXCEPT_ON_PLATFORM d12039 1 a12041 1 BSDSRCDIR d12043 1 a12045 1 BSD_MAKE_ENV d12047 1 a12049 1 BUILDLINK_AUTO_VARS d12051 1 a12053 1 BUILDLINK_CONTENTS_FILTER d12055 1 d12151 3 d12155 1 a12157 1 CHECK_FAKEHOME d12159 1 a12161 1 CHECK_FILES_SKIP d12163 1 a12165 1 CHECK_HEADERS d12167 1 a12169 1 CHECK_INTERPRETER d12171 1 a12173 1 CHECK_PERMS d12175 1 a12177 1 CHECK_PERMS_SKIP d12179 1 a12181 1 CHECK_PIE_SKIP d12183 1 a12185 1 CHECK_PORTABILITY d12187 1 a12189 1 CHECK_PORTABILITY_SKIP d12191 1 a12193 1 CHECK_RELRO_SKIP d12195 1 a12197 1 CHECK_SHLIBS d12199 1 a12201 1 CHECK_SHLIBS_SUPPORTED d12203 1 a12205 1 CHECK_SSP d12207 1 a12209 1 CHECK_SSP_SUPPORTED d12211 1 a12213 1 CHECK_STRIPPED_SKIP d12215 1 a12217 1 CHECK_WRKREF_EXTRA_DIRS d12219 1 a12221 1 CLAMAV_DBDIR d12223 1 a12225 1 CLAMAV_USER d12227 1 a12229 1 CLEANDEPENDS d12231 1 a12233 1 CMAKE_INSTALL_NAME_DIR d12235 1 a12237 1 CMAKE_MODULE_PATH_OVERRIDE d12239 1 a12241 1 CMAKE_PREFIX_PATH d12243 9 d12339 19 d12359 1 a12361 1 CYRUS_GROUP d12363 1 a12365 1 CYRUS_USER d12367 1 a12369 1 DAEMONTOOLS_LOG_USER d12371 1 a12373 1 DARWIN_REQUIRES_FILTER d12375 1 a12377 1 DBUS_USER d12379 1 a12381 1 DEFANG_USER d12383 1 a12385 1 DEFAULT_DISTFILES d12387 1 a12389 1 DEFAULT_SERIAL_DEVICE d12391 1 a12393 1 DEINSTALLDEPENDS d12395 1 a12397 1 DEINSTALL_TEMPLATES d12399 1 a12401 1 DELAYED_WARNING_MSG d12403 1 a12405 1 DEPENDS_TARGET d12407 1 a12409 1 DESTDIR d12411 1 a12413 1 DIALER_GROUP d12415 1 a12417 1 DISTDIR d12419 1 a12421 1 DISTINFO_FILE d12423 1 a12425 1 DIST_PATH d12427 1 a12429 1 DJBDNS_AXFR_USER d12431 1 a12433 1 DJBDNS_DJBDNS_GROUP d12435 1 a12437 1 DJBDNS_RBL_USER d12439 1 a12441 1 DLOPEN_REQUIRE_PTHREADS d12443 1 a12445 1 DL_CFLAGS d12447 1 a12449 1 DL_LIBS d12451 1 a12453 1 DOCOWN d12455 1 a12457 1 DQCACHE_GROUP d12459 1 a12461 1 DT_LAYOUT d12463 1 a12465 1 DYNAMIC_SITES_SCRIPT d12467 1 a12469 1 ECHO_N d12471 1 a12473 1 EMACS_TYPE d12475 1 a12477 1 EMULSUBDIR d12479 1 a12481 1 EMUL_ARCH d12483 1 a12485 1 EMUL_EXEC_FMT d12487 1 a12489 1 EMUL_MODULES d12491 1 a12493 1 EMUL_PKG_FMT d12495 1 a12497 1 EMUL_PLATFORMS d12499 1 a12501 1 EMUL_REQD d12503 1 a12505 1 ERROR_MSG d12507 1 a12509 1 EXIM_USER d12511 1 a12513 1 EXTRACTOR d12515 1 a12517 1 EXTRACT_CMD_DEFAULT d12519 1 a12521 1 EXTRACT_ELEMENTS d12523 1 a12525 1 EXTRACT_ONLY d12527 1 a12529 1 EXTRACT_SUFX d12531 1 a12533 1 FAIL d12535 1 a12537 1 FAIL_MSG d12539 1 a12541 1 FAM d12543 1 a12545 1 FAM_DEFAULT d12547 1 a12549 1 FCPATH d12551 1 a12553 1 FEATURE_LDFLAGS d12555 1 a12557 1 FETCH_AFTER_ARGS d12559 1 a12561 1 FETCH_CMD d12563 1 a12565 1 FETCH_PROXY d12567 1 a12569 1 FETCH_TIMEOUT d12571 1 a12573 1 FETCH_USING d12575 1 a12577 1 FILES_SUBST_SED d12579 1 d12591 8 d12686 13 a12699 1 GNU_CONFIGURE d12702 1 a12703 1 GNU_CONFIGURE_MANDIR d12706 1 a12707 1 GNU_CONFIGURE_STRICT d12710 1 a12711 1 GO_BUILD_PATTERN d12714 1 a12715 1 GO_DIST_BASE d12718 1 a12719 1 GO_MODULE_FILES d12722 1 a12723 1 GROUP_SPECIFIC_PKGS d12726 1 a12727 1 GRUB_PRESET_COMMAND d12730 1 d12732 4 a12735 1 GZIP d12755 7 d12763 1 a12765 1 HOST_PKGTOOLS_ARGS d12767 1 a12769 1 HOWL_GROUP d12771 1 a12773 1 ICCBASE d12775 1 a12777 1 ICON_THEMES d12779 1 a12781 1 IGNORE_CCACHE d12783 1 a12785 1 IGNORE_INTERACTIVE_FETCH d12787 1 a12789 1 IMAKEOPTS d12791 1 a12793 1 IMAKE_MANINSTALL d12795 1 a12797 1 IMDICTDIR d12799 1 a12801 1 INFO_DIR d12803 1 a12805 1 INFO_MSG d12807 1 a12809 1 INN_DATA_DIR d12811 1 a12813 1 INN_USER d12815 1 a12817 1 INSTALLATION_DIRS_FROM_PLIST d12819 1 a12821 1 INSTALL_SH_OVERRIDE d12823 1 a12825 1 INSTALL_TEMPLATES d12827 1 a12829 1 IRCD_HYBRID_IRC_GROUP d12831 1 a12833 1 IRCD_HYBRID_MAXCONN d12835 1 a12837 1 IRCD_HYBRID_SYSLOG_EVENTS d12839 1 a12841 1 IRCD_HYBRID_TOPICLEN d12843 1 a12845 1 IRRD_USE_PGP d12847 1 a12849 1 JABBERD_LOGDIR d12851 1 a12853 1 JABBERD_SPOOLDIR d12855 1 d12858 1 d12860 2 d12863 1 a12865 1 JAVA_HOME d12867 1 a12869 1 JAVA_NAME d12871 1 a12873 1 JAVA_WRAPPERS d12875 1 a12877 1 JPEG_DEFAULT d12879 1 a12881 1 KERMIT_SUID_UUCP d12883 1 a12885 1 KNEWS_DOMAIN_FILE d12887 1 a12889 1 KRB5_ACCEPTED d12891 1 a12893 1 LANGUAGES d12895 1 a12897 1 LAPACKE_PC d12899 1 a12901 1 LAPACK_PC d12903 1 a12905 1 LDCONFIG_ADD_CMD d12907 1 a12909 1 LDD d12911 1 a12913 1 LEAFNODE_GROUP d12915 1 a12917 1 LIBDVDCSS_HOMEPAGE d12919 1 a12921 1 LIBIMAGEQUANT_TYPE d12923 1 a12925 1 LIBTOOL d12927 1 a12929 1 LIBTOOL_M4_OVERRIDE d12931 1 a12933 1 LICENSE d12935 1 d12938 5 a12942 1 LINK_RPATH_FLAG d13007 3 d13011 1 a13013 1 MAKE_DIRS d13015 1 a13017 1 MAKE_ENV d13019 1 a13021 1 MAKE_FLAGS d13023 1 a13025 1 MAKE_JOBS_SAFE d13027 1 a13029 1 MANCOMPRESSED_IF_MANZ d13031 1 a13033 1 MANZ d13035 1 a13037 1 MASTER_SITES d13039 1 a13041 1 MASTER_SITE_LOCAL d13043 1 a13045 1 MASTER_SITE_OVERRIDE d13047 1 a13049 1 MASTER_SORT d13051 1 a13053 1 MASTER_SORT_REGEX d13055 1 a13057 1 MEDIATOMB_GROUP d13059 1 a13061 1 MIPSPROBASE d13063 1 a13065 1 MIREDO_USER d13067 1 a13069 1 MKDIR d13071 1 a13073 1 MLDONKEY_GROUP d13075 1 a13077 1 MLDONKEY_USER d13079 1 a13081 1 MONOTONE_USER d13083 1 a13085 1 MOTIF_TYPE d13087 1 a13089 1 MPI_TYPE d13091 1 a13093 1 MSGFMT_STRIP_MSGID_PLURAL d13095 1 d13211 4 d13227 3 d13231 1 a13233 1 OWN_DIRS_PERMS d13235 1 a13237 1 P4PORT d13239 1 a13241 1 P4USER d13243 1 a13245 1 PALMOS_DEFAULT_SDK d13247 1 a13249 1 PAM_DEFAULT d13251 1 a13253 1 PASSIVE_FETCH d13255 1 a13257 1 PATCHFILES d13259 1 a13261 1 PATCH_DEBUG d13263 1 a13265 1 PATCH_DIST_CAT d13267 1 a13269 1 PATCH_FUZZ_FACTOR d13271 1 a13273 1 PATH d13275 5 d13282 1 a13283 1 PEAR_LIB d13286 1 a13287 1 PERL5 d13290 1 a13291 1 PERL5_CONFIGURE_DIRS d13294 1 a13295 1 PERL5_LICENSE d13298 1 a13299 1 PERL5_PACKLIST d13302 1 a13303 1 PERL5_PERLBASE d13306 1 a13307 1 PERL5_USE_PACKLIST d13310 1 a13311 1 PFCTL d13314 1 a13315 1 PF_VERSION d13318 1 a13319 1 PGHOME d13322 1 a13323 1 PGSQL_TYPE d13326 1 a13327 1 PGSQL_VERSIONS_ACCEPTED d13330 1 a13331 1 PGUSER d13334 1 a13335 1 PHP d13338 1 a13339 1 PHPPKGSRCDIR d13342 1 a13343 1 PHP_CHECK_INSTALLED d13346 1 a13347 1 PHP_INITIAL_TEENY d13350 1 a13351 1 PHP_VERSION d13354 1 a13355 1 PHP_VERSIONS_INCOMPATIBLE d13358 1 a13359 1 PHP_VERSION_REQD d13362 1 a13363 1 PKGCONFIG_BASE d13366 1 a13367 1 PKGCONFIG_OVERRIDE d13370 1 a13371 1 PKGDIR d13374 1 a13375 1 PKGINFODIR d13378 1 a13379 1 PKGMANDIR d13382 1 a13383 1 PKGNAME_REQD d13386 1 a13387 1 PKGREVISION d13390 1 a13391 1 PKGSRC_CHANGES d13394 1 a13395 1 PKGSRC_KEEP_BIN_PKGS d13398 1 a13399 1 PKGSRC_MAKE_ENV d13402 1 a13403 1 PKGSRC_MKPIE d13406 1 a13407 1 PKGSRC_OVERRIDE_MKPIE d13410 1 a13411 1 PKGSRC_SETENV d13414 1 a13415 1 PKGSRC_TODO d13418 1 a13419 1 PKGSRC_USE_FORTIFY d13422 1 a13423 1 PKGSRC_USE_RELRO d13426 1 a13427 1 PKGSRC_USE_STACK_CHECK d13430 1 a13431 1 PKGTOOLS_ARGS d13434 1 a13435 1 PKG_ALTERNATIVES d13438 1 a13439 1 PKG_APACHE_ACCEPTED d13442 1 a13443 1 PKG_BEST_EXISTS d13446 1 a13447 1 PKG_COMPRESSION d13450 1 a13451 1 PKG_CONFIG_PERMS d13454 1 a13455 1 PKG_DB_TMPDIR d13458 1 a13459 1 PKG_DEFAULT_OPTIONS d13462 1 d13464 2 d13467 1 a13469 1 PKG_DISABLED_OPTIONS d13471 1 a13473 1 PKG_FC d13475 1 a13477 1 PKG_GECOS d13479 1 a13481 1 PKG_GROUPS d13483 1 a13485 1 PKG_HOME d13487 1 a13489 1 PKG_JAVA_HOME d13491 1 a13493 1 PKG_JVMS_ACCEPTED d13495 1 a13497 1 PKG_LEGACY_OPTIONS d13499 1 a13501 1 PKG_MKSYMLINKS d13503 1 a13505 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13507 1 a13509 1 PKG_OPTIONS_LEGACY_VARS d13511 1 a13513 1 PKG_OPTIONS_OPTIONAL_GROUPS d13515 1 a13517 1 PKG_OPTIONS_VAR d13519 1 a13521 1 PKG_PHP_MAJOR_VERS d13523 1 a13525 1 PKG_RCD_SCRIPTS d13527 1 a13529 1 PKG_REGISTER_SHELLS d13531 1 a13533 1 PKG_SHELL d13535 1 a13537 1 PKG_SUPPORTED_OPTIONS d13539 1 a13541 1 PKG_SYSCONFBASEDIR d13543 1 a13545 1 PKG_SYSCONFDIR_PERMS d13547 1 a13549 1 PKG_SYSCONFVAR d13551 1 a13553 1 PKG_UID d13555 1 a13557 1 PKG_USERS d13559 1 a13561 1 PKG_VERBOSE d13563 1 a13565 1 PLIST d13567 1 a13569 1 PLIST_AWK_ENV d13571 1 a13573 1 PLIST_SUBST d13575 1 a13577 1 PLIST_VARS d13579 1 a13581 1 POSSIBLE_GFORTRAN_VERSION d13583 1 a13585 1 PREFER d13587 1 a13589 1 PREFER_NATIVE_PTHREADS d13591 1 a13593 1 PREFIX d13595 1 a13597 1 PRE_ROOT_CMD d13599 1 a13601 1 PS d13603 1 a13605 1 PTHREAD_CFLAGS d13607 1 a13609 1 PTHREAD_LIBS d13611 1 a13613 1 PTHREAD_TYPE d13615 1 a13617 1 PYPKGPREFIX d13619 1 a13621 1 PYTHON_SELF_CONFLICT d13623 1 a13625 1 PYTHON_VERSIONED_DEPENDENCIES d13627 1 a13629 1 PYTHON_VERSIONS_INCOMPATIBLE d13631 1 a13633 1 PYTHON_VERSION_REQD d13635 1 a13637 1 QMAILDIR d13639 1 a13641 1 QMAIL_DAEMON_USER d13643 1 a13645 1 QMAIL_NOFILES_GROUP d13647 1 a13649 1 QMAIL_QMAIL_GROUP d13651 1 a13653 1 QMAIL_QUEUE_EXTRA d13655 1 a13657 1 QMAIL_REMOTE_USER d13659 1 a13661 1 QMAIL_SEND_USER d13663 1 a13665 1 QORE_MODULE_API d13667 1 a13669 1 QORE_USER_MODULE_DIR d13671 1 a13673 1 QPOPPER_FAC d13675 1 a13677 1 QPOPPER_USER d13679 5 a13685 1 RASMOL_DEPTH d13687 1 a13689 1 RCD_SCRIPTS_DIR d13691 1 a13693 1 RCD_SCRIPTS_MODE d13695 1 d13698 1 a13698 1 RCD_SCRIPT_SRC d13771 4 d13978 1 d13980 2 d13983 1 a13985 1 SITE_SPECIFIC_PKGS d13987 1 a13989 1 SMF_INSTANCES d13991 1 a13993 1 SMF_METHODS d13995 1 a13997 1 SMF_METHOD_SRC d13999 1 a14001 1 SMF_PREFIX d14003 1 a14005 1 SNIPROXY_GROUP d14007 1 a14009 1 SOURCE_BUFFSIZE d14011 1 a14013 1 SPECIFIC_PKGS d14015 1 a14017 1 SSP_SUPPORTED d14019 1 a14021 1 STEP_MSG d14023 1 a14025 1 STRIP_DBG d14027 1 a14029 1 STRIP_DEBUG_SUPPORTED d14031 1 a14033 1 SU d14035 1 a14037 1 SUBST d14039 1 a14041 1 SUBST_FILES d14043 1 a14045 1 SUBST_MESSAGE d14047 1 a14049 1 SUBST_SED d14051 1 a14053 1 SUBST_SKIP_TEXT_CHECK d14055 1 a14057 1 SUBST_VARS d14059 1 a14061 1 SUSE_PREFER d14063 1 d14066 5 d14072 2 d14075 1 a14077 1 TBL d14079 1 a14081 1 TERMINFO_DEFAULT d14083 1 a14085 1 TEST d14087 1 a14089 1 TEST_DIRS d14091 1 a14093 1 TEST_ENV_SHELL d14095 1 a14097 1 TEST_MAKE_FLAGS d14099 1 a14101 1 TEXLIVE_IGNORE_PATTERNS d14103 1 a14105 1 TEXLIVE_UNVERSIONED d14107 1 a14109 1 TEX_FORMATS d14111 1 a14113 1 TEX_HYPHEN_DEF d14115 1 a14117 1 THTTPD_LOG_FACILITY d14119 1 a14121 1 TLSWRAPPER_CHROOT d14123 1 a14125 1 TOOLS_ALIASES d14127 1 a14129 1 TOOLS_ARGS d14131 1 a14133 1 TOOLS_CMD d14135 1 a14137 1 TOOLS_CREATE d14139 1 a14141 1 TOOLS_DIR d14143 1 a14145 1 TOOLS_GNU_MISSING d14147 1 a14149 1 TOOLS_NOOP d14151 1 a14153 1 TOOLS_SCRIPT d14155 1 d14158 1 a14158 1 TOOL_DEPENDS d14315 3 d14319 1 a14321 1 ZSH_STATIC d14323 1 a14325 1 _vargroups d14327 1 a14329 1 acquire-localbase-lock d14331 1 a14333 1 add d14335 1 a14337 1 administrator d14339 1 a14341 1 alternatives d14343 1 a14345 1 asprintf d14347 1 a14349 1 autoconf d14351 1 a14353 1 autoreconf d14355 1 a14357 1 bash d14359 1 a14361 1 bin-install d14363 1 a14365 1 binpkg-list d14367 1 a14369 1 bootstrap-depends d14371 1 a14373 1 broken_on_platform d14375 1 a14377 1 bsd.prog.mk d14379 1 a14381 1 build-env d14383 1 a14385 1 buildlink-oss-soundcard-h d14387 1 a14389 1 builtin d14391 1 a14393 1 c++ d14395 1 a14397 1 cce d14399 1 a14401 1 ceil d14403 1 a14405 1 changes-entry d14407 1 a14409 1 check d14411 1 a14413 1 check-files d14415 1 a14417 1 check-vulnerable d14419 1 a14421 1 checksum-phase d14423 1 a14425 1 clean-depends d14427 1 a14429 1 commit d14431 1 a14433 1 compact d14435 1 a14437 1 conf d14439 1 a14441 1 config.sub d14443 1 a14445 1 configure d14447 1 a14449 1 configure-help d14451 1 a14453 1 connect d14455 1 a14457 1 cpe d14459 1 a14461 1 create-usergroup d14463 1 d14466 1 a14466 1 ctf d14530 1 d14532 2 d14535 1 a14537 1 err d14539 1 a14541 1 etc d14543 1 a14545 1 extract-rpm d14547 1 a14549 1 feature d14551 1 a14553 1 fetch d14555 1 a14557 1 follows d14559 1 a14561 1 form d14563 1 a14565 1 fortify d14567 1 d14602 1 d14604 2 d14607 1 a14609 1 glob d14611 1 a14613 1 gnu_configure_strict d14615 1 a14617 1 go-deps d14619 1 a14621 1 guess-license d14623 1 a14625 1 heimdal d14627 1 d14702 1 d14704 2 d14707 1 a14709 1 meta_package d14711 1 a14713 1 mk.conf d14715 1 a14717 1 mount d14719 1 a14721 1 moved d14723 1 a14725 1 mremap d14727 1 a14729 1 nb d14731 1 a14733 1 netlib d14735 1 a14737 1 node.js d14739 1 a14741 1 obstack d14743 1 a14745 1 occurs d14747 1 a14749 1 openblas d14751 1 a14753 1 options.mk d14755 1 a14757 1 override d14759 1 a14761 1 override-message-intltool d14763 1 a14765 1 parallel d14767 1 a14769 1 pax d14771 1 a14773 1 pbulk-index d14775 1 a14777 1 perl d14779 1 a14781 1 perms d14783 1 a14785 1 pkg-build-options d14787 1 a14789 1 pkg_build_options d14791 1 a14793 1 platform d14795 1 a14797 1 post-extract d14799 1 a14801 1 post-wrapper d14803 1 a14805 1 pre-configure-checks-hook d14807 1 a14809 1 pre-fetch d14811 1 a14813 1 print-plist d14815 1 a14817 1 privileged-install-hook d14819 1 a14821 1 python d14823 1 a14825 1 readme-all d14827 1 a14829 1 recv d14831 1 a14833 1 regcomp d14835 1 a14837 1 release-lock d14839 1 a14841 1 remove d14843 1 a14845 1 rename d14847 1 a14849 1 reorder d14851 1 a14853 1 replace_interpreter d14855 1 a14857 1 resolv d14859 1 a14861 1 ruby d14863 1 a14865 1 sendfile d14867 1 a14869 1 setenv d14871 1 a14873 1 setprogname d14875 1 a14877 1 sh d14879 1 a14881 1 show d14883 1 a14885 1 show-build-defs d14887 1 a14889 1 show-depends-dirs d14891 1 a14893 1 show-depends-recursive d14895 1 a14897 1 show-distfiles d14899 1 a14901 1 show-subdir-var d14903 1 a14905 1 show-var d14907 1 a14909 1 snprintf d14911 1 a14913 1 ssp d14915 1 a14917 1 stage-install d14919 1 a14921 1 strict d14923 1 a14925 1 strndup d14927 1 a14929 1 strsep d14931 1 d14934 1 a14934 1 substitutions d14942 1 d14944 2 d14947 1 a14949 1 test-env d14951 1 a14953 1 texlive d14955 1 a14957 1 todo d14959 1 a14961 1 tools d14963 1 a14965 1 transitive d14967 1 a14969 1 ulimit d14971 1 a14973 1 undo-replace d14975 1 a14977 1 unprivileged d14979 1 a14981 1 unstripped d14983 1 a14985 1 updated d14987 1 a14989 1 upload-distfiles d14991 1 a14993 1 user d14995 1 a14997 1 vasprintf d14999 1 a15001 1 vsnprintf d15003 1 a15005 1 warning d15007 1 a15009 1 warnx d15011 1 a15013 1 wattr_on d15015 1 a15017 1 wrapper d15019 1 @ 1.365 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.42 2023/01/02 05:45:23 jnemeth Exp $

    @ 1.364 log @doc/pkgsrc.*: regen @ text @d8627 2 d8652 1 d13759 1 a13759 1 RUBY_RAILS_ACCEPTED d13762 1 a13763 1 RUBY_RAILS_REQD d13766 1 a13767 1 RUBY_RIDIR d13770 1 a13771 1 RUBY_SHLIB d13774 1 a13775 1 RUBY_SHLIBVER d13778 1 a13779 1 RUBY_SITEARCHLIB d13782 1 a13783 1 RUBY_SITELIB_BASE d13786 1 a13787 1 RUBY_SLEXT d13790 1 a13791 1 RUBY_STATICLIB d13794 1 a13795 1 RUBY_SYSRIDIR d13798 1 a13799 1 RUBY_VENDORARCHLIB d13802 1 a13803 1 RUBY_VENDORLIB_BASE d13806 1 a13807 1 RUBY_VERSION d13810 1 a13811 1 RUBY_VERSIONS_INCOMPATIBLE d13814 1 a13815 1 RUBY_VERSION_REQD d13818 1 a13819 1 RUN d13822 1 a13823 1 RUST_TYPE d13826 1 a13827 1 SCREWS_GROUP d13830 1 a13831 1 SCRIPTS_ENV d13834 1 a13835 1 SCROLLKEEPER_REBUILDDB d13838 1 a13839 1 SDIST_PAWD d13842 1 a13843 1 SERIAL_DEVICES d13846 1 a13847 1 SETGID_GAMES_PERMS d13850 1 a13851 1 SH d13854 1 a13855 1 SIGN_PACKAGES d13858 1 a13859 1 SITE_SPECIFIC_PKGS d13862 1 a13863 1 SMF_INSTANCES d13866 1 a13867 1 SMF_METHODS d13870 1 a13871 1 SMF_METHOD_SRC d13874 1 a13875 1 SMF_PREFIX d13878 1 a13879 1 SNIPROXY_GROUP d13882 1 a13883 1 SOURCE_BUFFSIZE d13886 1 a13887 1 SPECIFIC_PKGS d13890 1 a13891 1 SSP_SUPPORTED d13894 1 a13895 1 STEP_MSG d13898 1 a13899 1 STRIP_DBG d13902 1 a13903 1 STRIP_DEBUG_SUPPORTED d13906 1 a13907 1 SU d13910 1 a13911 1 SUBST d13914 1 a13915 1 SUBST_FILES d13918 1 a13919 1 SUBST_MESSAGE d13922 1 a13923 1 SUBST_SED d13926 1 a13927 1 SUBST_SKIP_TEXT_CHECK d13930 1 a13931 1 SUBST_VARS d13934 1 a13935 1 SUSE_PREFER d13938 1 a13939 1 SYSCONFBASE d13942 1 a13943 1 TBL d13946 1 a13947 1 TERMINFO_DEFAULT d13950 1 a13951 1 TEST d13954 1 a13955 1 TEST_DIRS d13958 1 a13959 1 TEST_ENV_SHELL d13962 1 a13963 1 TEST_MAKE_FLAGS d13966 1 a13967 1 TEXLIVE_IGNORE_PATTERNS d13970 1 a13971 1 TEXLIVE_UNVERSIONED d13974 1 a13975 1 TEX_FORMATS d13978 1 a13979 1 TEX_HYPHEN_DEF d13982 1 a13983 1 THTTPD_LOG_FACILITY d13986 1 a13987 1 TLSWRAPPER_CHROOT d13990 1 a13991 1 TOOLS_ALIASES d13994 1 a13995 1 TOOLS_ARGS d13998 1 a13999 1 TOOLS_CMD d14002 1 a14003 1 TOOLS_CREATE d14006 1 a14007 1 TOOLS_DIR d14010 1 a14011 1 TOOLS_GNU_MISSING d14014 1 a14015 1 TOOLS_NOOP d14018 1 a14019 1 TOOLS_SCRIPT d14022 1 a14023 1 TOOL_DEPENDS d14026 1 a14027 1 TYPE d14030 1 a14031 1 UCSPI_SSL_GROUP d14034 1 a14035 1 UNLIMIT_RESOURCES d14038 1 a14039 1 UNPRIVILEGED_GROUP d14042 1 a14043 1 UNPRIVILEGED_USER d14046 1 a14047 1 UNWRAP_PATTERNS d14050 1 a14051 1 UPDATE_TARGET d14054 1 a14055 1 USERGROUP_PHASE d14058 1 a14059 1 USER_SPECIFIC_PKGS d14062 1 a14063 1 USE_APR d14066 1 a14067 1 USE_BUILTIN d14070 1 a14071 1 USE_CROSS_COMPILE d14074 1 a14075 1 USE_CWRAPPERS d14078 1 a14079 1 USE_DB185 d14082 1 a14083 1 USE_GAMESGROUP d14086 1 a14087 1 USE_IMAKE d14090 1 a14091 1 USE_JAVA2 d14094 1 a14095 1 USE_LIBTOOL d14098 1 a14099 1 USE_NETBSD_REPO d14102 1 a14103 1 USE_PKGSRC_GCC_RUNTIME d14106 1 a14107 1 USE_PKG_ADMIN_DIGEST d14110 1 a14111 1 USE_RUBY_INSTALL d14114 1 a14115 1 USE_RUBY_SETUP_PKG d14118 1 a14119 1 UUCP_GROUP d14122 1 a14123 1 VARBASE d14126 1 a14127 1 VIM_EXTRA_OPTS d14130 1 a14131 1 WCALC_CGIDIR d14134 1 a14135 1 WCALC_HTMLDIR d14138 1 a14139 1 WDM_MANAGERS d14142 1 a14143 1 WRAPPER_REORDER_CMDS d14146 1 a14147 1 WRKDIR_BASENAME d14150 1 a14151 1 WRKLOG d14154 1 a14155 1 WRKSRC d14158 1 a14159 1 X11 d14162 1 a14163 1 X11_PKGSRCDIR d14166 1 a14167 1 X509_CERTIFICATE d14170 1 a14171 1 XAW_TYPE d14174 1 a14175 1 XMKMF d14178 1 a14179 1 XXX d14182 1 a14183 1 ZSH_STATIC d14186 1 a14187 1 _vargroups d14190 1 a14191 1 acquire-localbase-lock d14194 1 a14195 1 add d14198 1 a14199 1 administrator d14202 1 a14203 1 alternatives d14206 1 a14207 1 asprintf d14210 1 a14211 1 autoconf d14214 1 a14215 1 autoreconf d14218 1 a14219 1 bash d14222 1 a14223 1 bin-install d14226 1 a14227 1 binpkg-list d14230 1 a14231 1 bootstrap-depends d14234 1 a14235 1 broken_on_platform d14238 1 a14239 1 bsd.prog.mk d14242 1 a14243 1 build-env d14246 1 a14247 1 buildlink-oss-soundcard-h d14250 1 a14251 1 builtin d14254 1 a14255 1 c++ d14258 1 a14259 1 cce d14262 1 a14263 1 ceil d14266 1 a14267 1 changes-entry d14270 1 a14271 1 check d14274 1 a14275 1 check-files d14278 1 a14279 1 check-vulnerable d14282 1 a14283 1 checksum-phase d14286 1 a14287 1 clean-depends d14290 1 a14291 1 commit d14294 1 a14295 1 compact d14298 1 a14299 1 conf d14302 1 a14303 1 config.sub d14306 1 a14307 1 configure d14310 1 a14311 1 configure-help d14314 1 a14315 1 connect d14318 1 a14319 1 cpe d14322 1 a14323 1 create-usergroup d14326 1 a14327 1 ctf d14330 1 a14331 1 declaration d14334 1 a14335 1 defined d14338 1 a14339 1 dependencies d14342 1 a14343 1 depends-checksum d14346 1 a14347 1 deps d14350 1 a14351 1 destdir d14354 1 a14355 1 distclean d14358 1 a14359 1 dl d14362 1 a14363 1 do-buildlink d14366 1 a14367 1 do-configure d14370 1 a14371 1 do-extract d14374 1 a14375 1 do-install d14378 1 a14379 1 emul-distinfo d14382 1 a14383 1 emulation d14386 1 a14387 1 enable d14390 1 a14391 1 enomem d14394 1 a14395 1 err d14398 1 a14399 1 etc d14402 1 a14403 1 extract-rpm d14406 1 a14407 1 feature d14410 1 a14411 1 fetch d14414 1 a14415 1 follows d14418 1 a14419 1 form d14422 1 a14423 1 fortify d14426 1 a14427 1 friend d14430 1 a14431 1 fts_close d14434 1 a14435 1 fts_read d14438 1 a14439 1 gcc d14442 1 a14443 1 gethostbyname d14446 1 a14447 1 getopt_long d14450 1 a14451 1 getservbyname d14454 1 a14455 1 getservent d14458 1 a14459 1 github d14462 1 a14463 1 glob d14466 1 a14467 1 gnu_configure_strict d14470 1 a14471 1 go-deps d14474 1 a14475 1 guess-license d14478 1 a14479 1 heimdal d14482 1 a14483 1 imake d14486 1 a14487 1 increment d14490 1 a14491 1 inet_aton d14494 1 a14495 1 interpreter d14498 1 a14499 1 ip4 d14502 1 a14503 1 ipv4 d14506 1 a14507 1 iso d14510 1 a14511 1 krb d14514 1 a14515 1 ksh d14518 1 a14519 1 latex d14522 1 a14523 1 libintl_gettext d14526 1 a14527 1 libnbcompat d14530 1 a14531 1 libtool d14534 1 a14535 1 license d14538 1 a14539 1 little-endian d14542 1 a14543 1 locking d14546 1 a14547 1 lvalue d14550 1 a14551 1 makesum d14554 1 a14555 1 meta d14558 1 a14559 1 meta_package d14562 1 a14563 1 mk.conf d14566 1 a14567 1 mount d14570 1 a14571 1 moved d14574 1 a14575 1 mremap d14578 1 a14579 1 nb d14582 1 a14583 1 netlib d14586 1 a14587 1 node.js d14590 1 a14591 1 obstack d14594 1 a14595 1 occurs d14598 1 a14599 1 openblas d14602 1 a14603 1 options.mk d14606 1 a14607 1 override d14610 1 a14611 1 override-message-intltool d14614 1 a14615 1 parallel d14618 1 a14619 1 pax d14622 1 a14623 1 pbulk-index d14626 1 a14627 1 perl d14630 1 a14631 1 perms d14634 1 a14635 1 pkg-build-options d14638 1 a14639 1 pkg_build_options d14642 1 a14643 1 platform d14646 1 a14647 1 post-extract d14650 1 a14651 1 post-wrapper d14654 1 a14655 1 pre-configure-checks-hook d14658 1 a14659 1 pre-fetch d14662 1 a14663 1 print-plist d14666 1 a14667 1 privileged-install-hook d14670 1 a14671 1 python d14674 1 a14675 1 readme-all d14678 1 a14679 1 recv d14682 1 a14683 1 regcomp d14686 1 a14687 1 release-lock d14690 1 a14691 1 remove d14694 1 a14695 1 rename d14698 1 a14699 1 reorder d14702 1 a14703 1 replace_interpreter d14706 1 a14707 1 resolv d14710 1 a14711 1 ruby d14714 1 a14715 1 sendfile d14718 1 a14719 1 setenv d14722 1 a14723 1 setprogname d14726 1 a14727 1 sh d14730 1 a14731 1 show d14734 1 a14735 1 show-build-defs d14738 1 a14739 1 show-depends-dirs d14742 1 a14743 1 show-depends-recursive d14746 1 a14747 1 show-distfiles d14750 1 a14751 1 show-subdir-var d14754 1 a14755 1 show-var d14758 1 a14759 1 snprintf d14762 1 a14763 1 ssp d14766 1 a14767 1 stage-install d14770 1 a14771 1 strict d14774 1 a14775 1 strndup d14778 1 a14779 1 strsep d14782 1 a14783 1 substitutions d14786 1 a14787 1 sunpro d14790 1 a14791 1 symlink d14794 1 a14795 1 test-env d14798 1 a14799 1 texlive d14802 1 a14803 1 todo d14806 1 a14807 1 tools d14810 1 a14811 1 transitive d14814 1 a14815 1 ulimit d14818 1 a14819 1 undo-replace d14822 1 a14823 1 unprivileged d14826 1 a14827 1 unstripped d14830 1 a14831 1 updated d14834 1 a14835 1 upload-distfiles d14838 1 a14839 1 user d14842 1 a14843 1 vasprintf d14846 1 a14847 1 vsnprintf d14850 1 a14851 1 warning d14854 1 a14855 1 warnx d14858 1 a14859 1 wattr_on d14862 1 a14863 1 wrapper d14866 1 a14867 1   @ 1.363 log @doc/pkgsrc.*: regen @ text @d8609 1 a8609 1

    To declare which features a package requies from the @ 1.362 log @doc/pkgsrc.*: regen @ text @d5319 1 a5319 1 If the packaged software is a Python module, include one of d11924 1 a11924 1 ALSA_PC a11926 1 ALTERNATIVES_SRC d11928 1 a11930 1 AMANDA_USER d11932 1 a11934 1 APACHE_GROUP d11936 1 a11938 1 APACHE_MODULE_SRC d11940 1 a11942 1 APACHE_PKG_PREFIX d11944 1 a11946 1 APACHE_SUEXEC_DOCROOT d11948 1 a11950 1 APPEND_ABI d11952 1 a11954 1 ARLA_CACHE d11956 1 a11958 1 AUTOCONF_REQD d11960 1 a11962 1 AUTOMAKE_REQD d11964 1 a11966 1 BDB185_DEFAULT d11968 1 a11970 1 BDB_ACCEPTED d11972 1 a11974 1 BDB_LIBS d11976 1 a11978 1 BINCIMAP_GROUP d11980 1 a11982 1 BIND_DIR d11984 1 a11986 1 BIND_USER d11988 1 a11990 1 BINPKG_SITES d11992 1 a11994 1 BISON_PKGDATADIR d11996 1 a11998 1 BLAS_ACCEPTED d12000 1 a12002 1 BLAS_INCLUDES d12004 1 a12006 1 BLAS_LIBS d12008 1 a12010 1 BLAS_TYPE d12012 1 a12014 1 BROKEN d12016 1 a12018 1 BROKEN_ON_PLATFORM d12020 1 a12022 1 BSDXSRCDIR d12024 1 a12026 1 BUILDLINK_AUTO_DIRS d12028 1 a12030 1 BUILDLINK_CFLAGS a12031 2 a12032 1 BUILDLINK_DEPMETHOD d12128 1 a12128 1 CHECKOUT_DATE a12130 1 CHECK_COMPILER d12132 1 a12134 1 CHECK_FILES d12136 1 a12138 1 CHECK_FILES_STRICT d12140 1 a12142 1 CHECK_HEADERS_SKIP d12144 1 a12146 1 CHECK_INTERPRETER_SKIP d12148 1 a12150 1 CHECK_PERMS_AUTOFIX d12152 1 a12154 1 CHECK_PIE d12156 1 a12158 1 CHECK_PIE_SUPPORTED d12160 1 a12162 1 CHECK_PORTABILITY_EXPERIMENTAL d12164 1 a12166 1 CHECK_RELRO d12168 1 a12170 1 CHECK_RELRO_SUPPORTED d12172 1 a12174 1 CHECK_SHLIBS_SKIP d12176 1 a12178 1 CHECK_SHLIBS_TOXIC d12180 1 a12182 1 CHECK_SSP_SKIP d12184 1 a12186 1 CHECK_STRIPPED d12188 1 a12190 1 CHECK_WRKREF d12192 1 a12194 1 CHECK_WRKREF_SKIP d12196 1 a12198 1 CLAMAV_GROUP d12200 1 a12202 1 CLANGBASE d12204 1 a12206 1 CMAKE_DEPENDENCIES_REWRITE d12208 1 a12210 1 CMAKE_INSTALL_PREFIX d12212 1 a12214 1 CMAKE_PKGSRC_BUILD_FLAGS a12215 2 a12216 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM d12304 1 a12304 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG a12306 1 CXX d12308 1 a12310 1 CYRUS_IDLE d12312 1 a12314 1 DAEMONTOOLS_GROUP d12316 1 a12318 1 DARWIN_NO_SYSTEM_LIBS d12320 1 a12322 1 DBUS_GROUP d12324 1 a12326 1 DEFANG_GROUP d12328 1 a12330 1 DEFAULT_ACCEPTABLE_LICENSES d12332 1 a12334 1 DEFAULT_IRC_SERVER d12336 1 a12338 1 DEF_UMASK d12340 1 a12342 1 DEINSTALL_SRC d12344 1 a12346 1 DELAYED_ERROR_MSG d12348 1 a12350 1 DEPENDS d12352 1 a12354 1 DEPENDS_TYPE d12356 1 a12358 1 DESTDIR_VARNAME d12360 1 a12362 1 DIGEST_REQD d12364 1 a12366 1 DISTFILES d12368 1 a12370 1 DISTNAME d12372 1 a12374 1 DIST_SUBDIR d12376 1 a12378 1 DJBDNS_CACHE_USER d12380 1 a12382 1 DJBDNS_LOG_USER d12384 1 a12386 1 DJBDNS_TINY_USER d12388 1 a12390 1 DL_AUTO_VARS d12392 1 a12394 1 DL_LDFLAGS d12396 1 a12398 1 DNS d12400 1 a12402 1 DOWNLOADED_DISTFILE d12404 1 a12406 1 DQCACHE_USER d12408 1 a12410 1 DYNAMIC_SITES_CMD d12412 1 a12414 1 ECHO d12416 1 a12418 1 ELK_GUI d12420 1 a12422 1 EMULDIR d12424 1 a12426 1 EMULSUBDIRSLASH d12428 1 a12430 1 EMUL_DISTRO d12432 1 a12434 1 EMUL_IS_NATIVE d12436 1 a12438 1 EMUL_OPSYS d12440 1 a12442 1 EMUL_PLATFORM d12444 1 a12446 1 EMUL_PREFER d12448 1 a12450 1 EMUL_TYPE d12452 1 a12454 1 EXIM_GROUP d12456 1 a12458 1 EXPORT_SYMBOLS_LDFLAGS d12460 1 a12462 1 EXTRACT_CMD d12464 1 a12466 1 EXTRACT_DIR d12468 1 a12470 1 EXTRACT_ENV d12472 1 a12474 1 EXTRACT_OPTS d12476 1 a12478 1 EXTRACT_USING d12480 1 a12482 1 FAILOVER_FETCH d12484 1 a12486 1 FAKE_NCURSES d12488 1 a12490 1 FAM_ACCEPTED d12492 1 a12494 1 FAM_SERVER d12496 1 a12498 1 FEATURE_CPPFLAGS d12500 1 a12502 1 FEATURE_LIBS d12504 1 a12506 1 FETCH_BEFORE_ARGS d12508 1 a12510 1 FETCH_OUTPUT_ARGS d12512 1 a12514 1 FETCH_RESUME_ARGS d12516 1 a12518 1 FETCH_USE_IPV4_ONLY d12520 1 a12522 1 FILES_SUBST a12523 2 a12524 1 FONTDIR a12535 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12622 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12624 1 a12626 1 GNU_CONFIGURE d12628 1 a12630 1 GNU_CONFIGURE_MANDIR d12632 1 a12634 1 GNU_CONFIGURE_STRICT d12636 1 a12638 1 GO_BUILD_PATTERN d12640 1 a12642 1 GO_DIST_BASE d12644 1 a12646 1 GO_MODULE_FILES d12648 1 a12650 1 GROUP_SPECIFIC_PKGS d12652 1 a12654 1 GRUB_PRESET_COMMAND a12655 2 a12656 1 HASKELL_COMPILER d12676 1 a12676 1 HG_REPO d12679 2 a12680 6 HG_REPOSITORIES HG_TAG HOMEPAGE HOST_PKGTOOLS_ARGS a12682 1 HOST_SPECIFIC_PKGS d12684 1 a12686 1 HOWL_USER d12688 1 a12690 1 ICECAST_CHROOTDIR d12692 1 a12694 1 IDOBASE d12696 1 a12698 1 IGNORE_INFO_DIRS d12700 1 a12702 1 IMAKE d12704 1 a12706 1 IMAKE_MAKE d12708 1 a12710 1 IMAP_UW_CCLIENT_MBOX_FMT d12712 1 a12714 1 INCOMPAT_CURSES d12716 1 a12718 1 INFO_FILES d12720 1 a12722 1 INIT_SYSTEM d12724 1 a12726 1 INN_GROUP d12728 1 a12730 1 INSTALLATION_DIRS d12732 1 a12734 1 INSTALL_ENV d12736 1 a12738 1 INSTALL_SRC d12740 1 a12742 1 INSTALL_UNSTRIPPED d12744 1 a12746 1 IRCD_HYBRID_IRC_USER d12748 1 a12750 1 IRCD_HYBRID_NICLEN d12752 1 a12754 1 IRCD_HYBRID_SYSLOG_FACILITY d12756 1 a12758 1 IRIX d12760 1 a12762 1 JABBERD_GROUP d12764 1 a12766 1 JABBERD_PIDDIR a12767 2 a12768 1 JAVA_APP_PATH a12770 1 JAVA_APP_TARGETS d12772 1 a12774 1 JAVA_CLASSPATH d12776 1 a12778 1 JAVA_LD_LIBRARY_PATH d12780 1 a12782 1 JAVA_UNLIMIT d12784 1 a12786 1 JPEG_ACCEPTED d12788 1 a12790 1 KERBEROS d12792 1 a12794 1 KJS_USE_PCRE d12796 1 a12798 1 KNEWS_DOMAIN_NAME d12800 1 a12802 1 KRB5_DEFAULT d12804 1 a12806 1 LAPACKE_LIBS d12808 1 a12810 1 LAPACK_LIBS d12812 1 a12814 1 LATEX2HTML_ICONPATH d12816 1 a12818 1 LDCONFIG_REMOVE_CMD d12820 1 a12822 1 LEAFNODE_DATA_DIR d12824 1 a12826 1 LEAFNODE_USER d12828 1 a12830 1 LIBDVDCSS_MASTER_SITES d12832 1 a12834 1 LIBRSVG_TYPE d12836 1 a12838 1 LIBTOOLIZE_PLIST d12840 1 a12842 1 LIBUSB_TYPE d12844 1 a12846 1 LINKER_RPATH_FLAG a12847 7 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12912 1 a12912 1 MAJOR_OS_VERSION a12914 1 MAKEINFO_ARGS d12916 1 a12918 1 MAKE_DIRS_PERMS d12920 1 a12922 1 MAKE_FILE d12924 1 a12926 1 MAKE_JOBS d12928 1 a12930 1 MAKE_PROGRAM d12932 1 a12934 1 MANINSTALL d12936 1 a12938 1 MARIADB_VERSIONS_ALL d12940 1 a12942 1 MASTER_SITE_BACKUP d12944 1 a12946 1 MASTER_SITE_MOZILLA d12948 1 a12950 1 MASTER_SITE_PERL_CPAN d12952 1 a12954 1 MASTER_SORT_RANDOM d12956 1 a12958 1 MECAB_CHARSET d12960 1 a12962 1 MEDIATOMB_USER d12964 1 a12966 1 MIREDO_GROUP d12968 1 a12970 1 MISSING_FEATURES d12972 1 a12974 1 MKPIE_SUPPORTED d12976 1 a12978 1 MLDONKEY_HOME d12980 1 a12982 1 MONOTONE_GROUP d12984 1 a12986 1 MOTIFBASE d12988 1 a12990 1 MOTIF_TYPE_DEFAULT d12992 1 a12994 1 MSGFMT_STRIP_MSGCTXT a12995 2 a12996 1 MUST a13111 4 OS_HAVE_ALSA OS_HAVE_RCD d13124 1 a13124 1 OVERRIDE_ROCKSPEC a13126 1 OWN_DIRS d13128 1 a13130 1 P4GROUP d13132 1 a13134 1 P4ROOT d13136 1 a13138 1 PACKAGES d13140 1 a13142 1 PAMBASE d13144 1 a13146 1 PAPERSIZE d13148 1 a13150 1 PATCHDIR d13152 1 a13154 1 PATCH_ARGS d13156 1 a13158 1 PATCH_DIST_ARGS d13160 1 a13162 1 PATCH_DIST_STRIP d13164 1 a13166 1 PATCH_STRIP a13167 2 a13168 5 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS a13170 1 PEAR_CHANNEL_VERSION d13172 1 a13174 1 PEAR_LIB d13176 1 a13178 1 PERL5 d13180 1 a13182 1 PERL5_CONFIGURE_DIRS d13184 1 a13186 1 PERL5_LICENSE d13188 1 a13190 1 PERL5_PACKLIST d13192 1 a13194 1 PERL5_PERLBASE d13196 1 a13198 1 PERL5_USE_PACKLIST d13200 1 a13202 1 PFCTL d13204 1 a13206 1 PF_VERSION d13208 1 a13210 1 PGHOME d13212 1 a13214 1 PGSQL_TYPE d13216 1 a13218 1 PGSQL_VERSIONS_ACCEPTED d13220 1 a13222 1 PGUSER d13224 1 a13226 1 PHP d13228 1 a13230 1 PHPPKGSRCDIR d13232 1 a13234 1 PHP_CHECK_INSTALLED d13236 1 a13238 1 PHP_INITIAL_TEENY d13240 1 a13242 1 PHP_VERSION d13244 1 a13246 1 PHP_VERSIONS_INCOMPATIBLE d13248 1 a13250 1 PHP_VERSION_REQD d13252 1 a13254 1 PKGCONFIG_BASE d13256 1 a13258 1 PKGCONFIG_OVERRIDE d13260 1 a13262 1 PKGDIR d13264 1 a13266 1 PKGINFODIR d13268 1 a13270 1 PKGMANDIR d13272 1 a13274 1 PKGNAME_REQD d13276 1 a13278 1 PKGREVISION d13280 1 a13282 1 PKGSRC_CHANGES d13284 1 a13286 1 PKGSRC_KEEP_BIN_PKGS d13288 1 a13290 1 PKGSRC_MAKE_ENV d13292 1 a13294 1 PKGSRC_MKPIE d13296 1 a13298 1 PKGSRC_OVERRIDE_MKPIE d13300 1 a13302 1 PKGSRC_SETENV d13304 1 a13306 1 PKGSRC_TODO d13308 1 a13310 1 PKGSRC_USE_FORTIFY d13312 1 a13314 1 PKGSRC_USE_RELRO d13316 1 a13318 1 PKGSRC_USE_STACK_CHECK d13320 1 a13322 1 PKGTOOLS_ARGS d13324 1 a13326 1 PKG_ALTERNATIVES d13328 1 a13330 1 PKG_APACHE_ACCEPTED d13332 1 a13334 1 PKG_BEST_EXISTS d13336 1 a13338 1 PKG_COMPRESSION d13340 1 a13342 1 PKG_CONFIG_PERMS d13344 1 a13346 1 PKG_DB_TMPDIR d13348 1 a13350 1 PKG_DEFAULT_OPTIONS d13352 1 a13354 1 PKG_DEVELOPER d13356 1 a13358 1 PKG_FATAL_ERRORS d13360 1 a13362 1 PKG_FILELIST_CMD d13364 1 a13366 1 PKG_GID d13368 1 a13370 1 PKG_GROUPS_VARS d13372 1 a13374 1 PKG_INIT_SCRIPTS d13376 1 a13378 1 PKG_JVM d13380 1 a13382 1 PKG_JVM_DEFAULT d13384 1 a13386 1 PKG_LIBTOOL d13388 1 a13390 1 PKG_OPTIONS d13392 1 a13394 1 PKG_OPTIONS_LEGACY_OPTS d13396 1 a13398 1 PKG_OPTIONS_NONEMPTY_SETS d13400 1 a13402 1 PKG_OPTIONS_REQUIRED_GROUPS d13404 1 a13406 1 PKG_PHP d13408 1 a13410 1 PKG_PHP_VERSION d13412 1 a13414 1 PKG_REFCOUNT_DBDIR d13416 1 a13418 1 PKG_RESUME_TRANSFERS d13420 1 a13422 1 PKG_SUGGESTED_OPTIONS d13424 1 a13426 1 PKG_SYSCONFBASE d13428 1 a13430 1 PKG_SYSCONFDIR d13432 1 a13434 1 PKG_SYSCONFSUBDIR d13436 1 a13438 1 PKG_TOOLS_BIN d13440 1 a13442 1 PKG_UPDATE_FONTS_DB d13444 1 a13446 1 PKG_USERS_VARS d13448 1 a13450 1 PLEASE d13452 1 a13454 1 PLIST_AWK d13456 1 a13458 1 PLIST_SRC d13460 1 a13462 1 PLIST_TYPE d13464 1 a13466 1 POPTOP_USE_MPPE d13468 1 a13470 1 POST_FETCH_HOOK d13472 1 a13474 1 PREFER_NATIVE d13476 1 a13478 1 PREFER_PKGSRC d13480 1 a13482 1 PREPEND_PATH d13484 1 a13486 1 PRIVILEGED_STAGES d13488 1 a13490 1 PTHREAD_AUTO_VARS d13492 1 a13494 1 PTHREAD_LDFLAGS d13496 1 a13498 1 PTHREAD_OPTS d13500 1 a13502 1 PVM_SSH d13504 1 a13506 1 PYTHON_FOR_BUILD_ONLY d13508 1 a13510 1 PYTHON_VERSION d13512 1 a13514 1 PYTHON_VERSIONS_ACCEPTED d13516 1 a13518 1 PYTHON_VERSION_DEFAULT d13520 1 a13522 1 PYVERSSUFFIX d13524 1 a13526 1 QMAIL_ALIAS_USER d13528 1 a13530 1 QMAIL_LOG_USER d13532 1 a13534 1 QMAIL_PASSWD_USER d13536 1 a13538 1 QMAIL_QUEUE_DIR d13540 1 a13542 1 QMAIL_QUEUE_USER d13544 1 a13546 1 QMAIL_ROOT_USER d13548 1 a13550 1 QORE_LATEST_MODULE_API d13552 1 a13554 1 QORE_MODULE_DIR d13556 1 a13558 1 QORE_VERSION d13560 1 a13562 1 QPOPPER_SPOOL_DIR d13564 1 a13566 1 RAKE_NAME d13568 1 a13570 5 RCD_DIR RCD_ORDER RCD_SCRIPTS d13572 1 a13574 1 RCD_SCRIPTS_EXAMPLEDIR d13576 1 a13578 1 RCD_SCRIPTS_SHELL a13579 3 RCD_SUBR a13651 4 ROCKSPEC_NAME ROCKSPEC_SPECFILE d13852 1 a13852 1 SHORTNAME a13854 1 SIGN_PACKAGES d13856 1 a13858 1 SITE_SPECIFIC_PKGS d13860 1 a13862 1 SMF_INSTANCES d13864 1 a13866 1 SMF_METHODS d13868 1 a13870 1 SMF_METHOD_SRC d13872 1 a13874 1 SMF_PREFIX d13876 1 a13878 1 SNIPROXY_GROUP d13880 1 a13882 1 SOURCE_BUFFSIZE d13884 1 a13886 1 SPECIFIC_PKGS d13888 1 a13890 1 SSP_SUPPORTED d13892 1 a13894 1 STEP_MSG d13896 1 a13898 1 STRIP_DBG d13900 1 a13902 1 STRIP_DEBUG_SUPPORTED d13904 1 a13906 1 SU d13908 1 a13910 1 SUBST d13912 1 a13914 1 SUBST_FILES d13916 1 a13918 1 SUBST_MESSAGE d13920 1 a13922 1 SUBST_SED d13924 1 a13926 1 SUBST_SKIP_TEXT_CHECK d13928 1 a13930 1 SUBST_VARS d13932 1 a13934 1 SUSE_PREFER d13936 1 a13938 9 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION SYSCONFBASE d13940 1 a13942 1 TBL d13944 1 a13946 1 TERMINFO_DEFAULT d13948 1 a13950 1 TEST d13952 1 a13954 1 TEST_DIRS d13956 1 a13958 1 TEST_ENV_SHELL d13960 1 a13962 1 TEST_MAKE_FLAGS d13964 1 a13966 1 TEXLIVE_IGNORE_PATTERNS d13968 1 a13970 1 TEXLIVE_UNVERSIONED d13972 1 a13974 1 TEX_FORMATS d13976 1 a13978 1 TEX_HYPHEN_DEF d13980 1 a13982 1 THTTPD_LOG_FACILITY d13984 1 a13986 1 TLSWRAPPER_CHROOT d13988 1 a13990 1 TOOLS_ALIASES d13992 1 a13994 1 TOOLS_ARGS d13996 1 a13998 1 TOOLS_CMD d14000 1 a14002 1 TOOLS_CREATE d14004 1 a14006 1 TOOLS_DIR d14008 1 a14010 1 TOOLS_GNU_MISSING d14012 1 a14014 1 TOOLS_NOOP d14016 1 a14018 1 TOOLS_SCRIPT a14019 2 a14020 1 TTF_FONTDIR a14178 1 XXXX d14180 1 a14182 1 ZSH_STATIC d14184 1 a14186 1 _vargroups d14188 1 a14190 1 acquire-localbase-lock d14192 1 a14194 1 add d14196 1 a14198 1 administrator d14200 1 a14202 1 alternatives d14204 1 a14206 1 asprintf d14208 1 a14210 1 autoconf d14212 1 a14214 1 autoreconf d14216 1 a14218 1 bash d14220 1 a14222 1 bin-install d14224 1 a14226 1 binpkg-list d14228 1 a14230 1 bootstrap-depends d14232 1 a14234 1 broken_on_platform d14236 1 a14238 1 bsd.prog.mk d14240 1 a14242 1 build-env d14244 1 a14246 1 buildlink-oss-soundcard-h d14248 1 a14250 1 builtin d14252 1 a14254 1 c++ d14256 1 a14258 1 cce d14260 1 a14262 1 ceil d14264 1 a14266 1 changes-entry d14268 1 a14270 1 check d14272 1 a14274 1 check-files d14276 1 a14278 1 check-vulnerable d14280 1 a14282 1 checksum-phase d14284 1 a14286 1 clean-depends d14288 1 a14290 1 commit d14292 1 a14294 1 compact d14296 1 a14298 1 conf d14300 1 a14302 1 config.sub d14304 1 a14306 1 configure d14308 1 a14310 1 configure-help d14312 1 a14314 1 connect d14316 1 a14318 1 cpe d14320 1 a14322 1 create-usergroup a14323 2 a14324 1 cvs d14388 1 a14388 1 endif a14390 1 enomem d14392 1 a14394 1 err d14396 1 a14398 1 etc d14400 1 a14402 1 extract-rpm d14404 1 a14406 1 feature d14408 1 a14410 1 fetch d14412 1 a14414 1 follows d14416 1 a14418 1 form d14420 1 a14422 1 fortify a14423 3 fossil d14456 1 a14456 1 git a14458 1 github d14460 1 a14462 1 glob d14464 1 a14466 1 gnu_configure_strict d14468 1 a14470 1 go-deps d14472 1 a14474 1 guess-license d14476 1 a14478 1 heimdal a14479 3 hg d14552 1 a14552 1 mercurial a14554 1 meta d14556 1 a14558 1 meta_package d14560 1 a14562 1 mk.conf d14564 1 a14566 1 mount d14568 1 a14570 1 moved d14572 1 a14574 1 mremap d14576 1 a14578 1 nb d14580 1 a14582 1 netlib d14584 1 a14586 1 node.js d14588 1 a14590 1 obstack d14592 1 a14594 1 occurs d14596 1 a14598 1 openblas d14600 1 a14602 1 options.mk d14604 1 a14606 1 override d14608 1 a14610 1 override-message-intltool d14612 1 a14614 1 parallel d14616 1 a14618 1 pax d14620 1 a14622 1 pbulk-index d14624 1 a14626 1 perl d14628 1 a14630 1 perms d14632 1 a14634 1 pkg-build-options d14636 1 a14638 1 pkg_build_options d14640 1 a14642 1 platform d14644 1 a14646 1 post-extract d14648 1 a14650 1 post-wrapper d14652 1 a14654 1 pre-configure-checks-hook d14656 1 a14658 1 pre-fetch d14660 1 a14662 1 print-plist d14664 1 a14666 1 privileged-install-hook d14668 1 a14670 1 python d14672 1 a14674 1 readme-all d14676 1 a14678 1 recv d14680 1 a14682 1 regcomp d14684 1 a14686 1 release-lock d14688 1 a14690 1 remove d14692 1 a14694 1 rename d14696 1 a14698 1 reorder d14700 1 a14702 1 replace_interpreter d14704 1 a14706 1 resolv d14708 1 a14710 1 ruby d14712 1 a14714 1 sendfile d14716 1 a14718 1 setenv d14720 1 a14722 1 setprogname d14724 1 a14726 1 sh d14728 1 a14730 1 show d14732 1 a14734 1 show-build-defs d14736 1 a14738 1 show-depends-dirs d14740 1 a14742 1 show-depends-recursive d14744 1 a14746 1 show-distfiles d14748 1 a14750 1 show-subdir-var d14752 1 a14754 1 show-var d14756 1 a14758 1 snprintf d14760 1 a14762 1 ssp d14764 1 a14766 1 stage-install d14768 1 a14770 1 strict d14772 1 a14774 1 strndup d14776 1 a14778 1 strsep a14779 2 a14780 1 subversion d14788 1 a14788 1 svn a14790 1 symlink d14792 1 a14794 1 test-env d14796 1 a14798 1 texlive d14800 1 a14802 1 todo d14804 1 a14806 1 tools d14808 1 a14810 1 transitive d14812 1 a14814 1 ulimit d14816 1 a14818 1 undo-replace d14820 1 a14822 1 unprivileged d14824 1 a14826 1 unstripped d14828 1 a14830 1 updated d14832 1 a14834 1 upload-distfiles d14836 1 a14838 1 user d14840 1 a14842 1 vasprintf d14844 1 a14846 1 vsnprintf d14848 1 a14850 1 warning d14852 1 a14854 1 warnx d14856 1 a14858 1 wattr_on d14860 1 a14862 1 wrapper d14864 1 @ 1.361 log @doc/pkgsrc.*: regen @ text @d5320 1 a5320 5 ../../lang/python/egg.mk or ../../lang/python/extension.mk.

    Most Python packages use setuptools (eggs). If the packaged software is using setuptools, you only need to include ../../lang/python/egg.mk. d5322 1 a5322 1

    Either way, the package directory should be called @ 1.360 log @doc/pkgsrc.*: regen @ text @d7892 1 a7892 1 localsrc/security/advisories/pkg-vulnerabilities. @ 1.359 log @doc/pkgsrc.*: regen @ text @d1029 1 a1029 1 2021Q4.

    d1055 2 a1056 2

    The tar file for the stable branch 2021Q4 is in the directory pkgsrc-2021Q4 and is also called pkgsrc.tar.gz.

    d1059 1 a1059 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2021Q4/pkgsrc.tar.gz d1074 1 a1074 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2021Q4 -P pkgsrc
    d1159 1
    a1159 1
    	-rpkgsrc-2021Q4 option.

    d1412 1 a1412 1 to the root users crontab(5) entry. For example the entry d1441 1 a1441 1 see daily.conf(5) and security.conf(5) for more details. d1629 1 a1629 1

    If you invoke the make(1) command with d1637 1 a1637 1

    If you want to know the value of a certain make(1) d1640 1 a1640 1 target. e.g. to show the expansion of the make(1) d1653 1 a1653 1 install a binary package - if available - via pkg_add(1), d1657 1 a1657 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1697 1 a1697 1 make(1) from the base system, it is in the directory d1908 1 a1908 1 privileges using su(1) d2150 1 a2150 1 another system with pkg_add(1). This saves having to build d3007 1 a3007 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d3059 1 a3059 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3135 1 a3135 1 scripts and to make(1). Some package authors ignore the d3589 1 a3589 1 an argument to patch(1) that sets the pathname strip count to d3599 1 a3599 1 this package which have been reported with send-pr(1). d3959 1 a3959 1

    This shell script is invoked twice by pkg_add(1). d3964 2 a3965 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 20.1, “Files and directories outside the installation prefix”. d3985 2 a3986 2 See pkg_delete(1) and pkg_create(1) for more information. d4215 1 a4215 1 install files according to hier(7), with the exception that d4550 1 a4550 1 patch(1) can be handed in d4552 1 a4552 1

    By default patch(1) is given special arguments to make it d4736 1 a4736 1 install(1) command that have the owner, group and d4782 1 a4782 1

    If set to yes, do not run strip(1) d4870 1 a4870 1

    This target does a pkg_delete(1) in the d4876 1 a4876 1

    Add a "-v" to the pkg_delete(1) command.

    d4885 1 a4885 1 -R to the pkg_delete(1) d5037 1 a5037 1

    This target invokes pkg_info(1) for the current d5153 1 a5153 1

    If the package installs files via tar(1) or d5659 1 a5659 1 the make(1) system as a programming language for a big system d5665 1 a5665 1 like awk(1) programs. To make sure that every shell command runs d5679 1 a5679 1 make(1) for the second time, the file exists and will not be d5697 1 a5697 1

    You might remember that make(1) sometimes removes d5701 1 a5701 1 when one of the commands fails (like false(1) above).

    d5710 1 a5710 1 !=, which are described in the make(1) man d5728 1 a5728 1 interpreted as delimiters, just like in sh(1).

    d5785 1 a5785 1

    Example 3 can handle arbitrary strings, since printf(1) only d5789 1 a5789 1 skipped by the shell. For printf(1) this doesn't make a difference, d5833 1 a5833 1 ${EGFILES} is replaced with an empty string by make(1). d5994 1 a5994 1 make(1) variable that the user can set to override the default d6689 1 a6689 1 - see the pkg_create(1) man page for a full list. d6838 1 a6838 1 The files are later concatenated using cat(1), and the order of things is d7455 1 a7455 1 make(1) (for example .if or d7711 1 a7711 1 pkg_info(1).

    d7823 1 a7823 1

    pkg_add(1) is able to detect attempts to install packages d7834 1 a7834 1 exported in pkg_summary(5) files and consumed by binary package d7885 1 a7885 1 not be deleted using pkg_delete(1) unless the d8168 1 a8168 1 sed(1) commands, like this:

    d8443 1 a8443 1 files, i.e. files that are loaded via dlopen(3), NOT d8453 1 a8453 1 the cc(1) or ld(1) line with ${LIBTOOL} d8470 2 a8471 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8479 1 a8479 1 ldconfig(8).

    d9936 1 a9936 1 either with the send-pr(1) command, or if you don't have d10131 1 a10131 1 search the pkg_summary(5) database for PREV_PKGPATH d10217 1 a10217 1 to the pkgsrc-internal invocations of make(1).

    d10238 1 a10238 1 make(1) program that is used in the pkgsrc d10300 1 a10300 1 which is documented in the make(1) man page and which is d10329 1 a10329 1 send-pr(1) appear here. Please do not report your bugs here d10947 1 a10947 1 improvements. Why you would want this when Berkeley yacc(1) is part d11928 3 d11932 1 a11934 1 AMANDA_TMP d11936 1 a11938 1 AMANDA_VAR d11940 1 a11942 1 APACHE_MODULE_NAME d11944 1 a11946 1 APACHE_MODULE_SRCDIR d11948 1 a11950 1 APACHE_SUEXEC_CONFIGURE_ARGS d11952 1 a11954 1 APACHE_USER d11956 1 a11958 1 APPEND_ELF d11960 1 a11962 1 AUDIT_PACKAGES_FLAGS d11964 1 a11966 1 AUTOMAKE_OVERRIDE d11968 1 a11970 1 AUTO_MKDIRS d11972 1 a11974 1 BDBBASE d11976 1 a11978 1 BDB_DEFAULT d11980 1 a11982 1 BDB_TYPE d11984 1 a11986 1 BINCIMAP_USER d11988 1 a11990 1 BIND_GROUP d11992 1 a11994 1 BINOWN d11996 1 a11998 1 BIN_INSTALL_FLAGS d12000 1 a12002 1 BLAS d12004 1 a12006 1 BLAS_C_INTERFACE d12008 1 a12010 1 BLAS_INDEX64 d12012 1 a12014 1 BLAS_PC d12016 1 a12018 1 BOOTSTRAP_DEPENDS d12020 1 a12022 1 BROKEN_EXCEPT_ON_PLATFORM d12024 1 a12026 1 BSDSRCDIR d12028 1 a12030 1 BSD_MAKE_ENV d12032 1 a12034 1 BUILDLINK_AUTO_VARS d12036 1 a12038 1 BUILDLINK_CONTENTS_FILTER d12040 1 d12136 3 d12140 1 a12142 1 CHECK_FAKEHOME d12144 1 a12146 1 CHECK_FILES_SKIP d12148 1 a12150 1 CHECK_HEADERS d12152 1 a12154 1 CHECK_INTERPRETER d12156 1 a12158 1 CHECK_PERMS d12160 1 a12162 1 CHECK_PERMS_SKIP d12164 1 a12166 1 CHECK_PIE_SKIP d12168 1 a12170 1 CHECK_PORTABILITY d12172 1 a12174 1 CHECK_PORTABILITY_SKIP d12176 1 a12178 1 CHECK_RELRO_SKIP d12180 1 a12182 1 CHECK_SHLIBS d12184 1 a12186 1 CHECK_SHLIBS_SUPPORTED d12188 1 a12190 1 CHECK_SSP d12192 1 a12194 1 CHECK_SSP_SUPPORTED d12196 1 a12198 1 CHECK_STRIPPED_SKIP d12200 1 a12202 1 CHECK_WRKREF_EXTRA_DIRS d12204 1 a12206 1 CLAMAV_DBDIR d12208 1 a12210 1 CLAMAV_USER d12212 1 a12214 1 CLEANDEPENDS d12216 1 a12218 1 CMAKE_INSTALL_NAME_DIR d12220 1 a12222 1 CMAKE_MODULE_PATH_OVERRIDE d12224 1 a12226 1 CMAKE_PREFIX_PATH d12228 9 d12324 19 d12344 1 a12346 1 CYRUS_GROUP d12348 1 a12350 1 CYRUS_USER d12352 1 a12354 1 DAEMONTOOLS_LOG_USER d12356 1 a12358 1 DARWIN_REQUIRES_FILTER d12360 1 a12362 1 DBUS_USER d12364 1 a12366 1 DEFANG_USER d12368 1 a12370 1 DEFAULT_DISTFILES d12372 1 a12374 1 DEFAULT_SERIAL_DEVICE d12376 1 a12378 1 DEINSTALLDEPENDS d12380 1 a12382 1 DEINSTALL_TEMPLATES d12384 1 a12386 1 DELAYED_WARNING_MSG d12388 1 a12390 1 DEPENDS_TARGET d12392 1 a12394 1 DESTDIR d12396 1 a12398 1 DIALER_GROUP d12400 1 a12402 1 DISTDIR d12404 1 a12406 1 DISTINFO_FILE d12408 1 a12410 1 DIST_PATH d12412 1 a12414 1 DJBDNS_AXFR_USER d12416 1 a12418 1 DJBDNS_DJBDNS_GROUP d12420 1 a12422 1 DJBDNS_RBL_USER d12424 1 a12426 1 DLOPEN_REQUIRE_PTHREADS d12428 1 a12430 1 DL_CFLAGS d12432 1 a12434 1 DL_LIBS d12436 1 a12438 1 DOCOWN d12440 1 a12442 1 DQCACHE_GROUP d12444 1 a12446 1 DT_LAYOUT d12448 1 a12450 1 DYNAMIC_SITES_SCRIPT d12452 1 a12454 1 ECHO_N d12456 1 a12458 1 EMACS_TYPE d12460 1 a12462 1 EMULSUBDIR d12464 1 a12466 1 EMUL_ARCH d12468 1 a12470 1 EMUL_EXEC_FMT d12472 1 a12474 1 EMUL_MODULES d12476 1 a12478 1 EMUL_PKG_FMT d12480 1 a12482 1 EMUL_PLATFORMS d12484 1 a12486 1 EMUL_REQD d12488 1 a12490 1 ERROR_MSG d12492 1 a12494 1 EXIM_USER d12496 1 a12498 1 EXTRACTOR d12500 1 a12502 1 EXTRACT_CMD_DEFAULT d12504 1 a12506 1 EXTRACT_ELEMENTS d12508 1 a12510 1 EXTRACT_ONLY d12512 1 a12514 1 EXTRACT_SUFX d12516 1 a12518 1 FAIL d12520 1 a12522 1 FAIL_MSG d12524 1 a12526 1 FAM d12528 1 a12530 1 FAM_DEFAULT d12532 1 a12534 1 FCPATH d12536 1 a12538 1 FEATURE_LDFLAGS d12540 1 a12542 1 FETCH_AFTER_ARGS d12544 1 a12546 1 FETCH_CMD d12548 1 a12550 1 FETCH_PROXY d12552 1 a12554 1 FETCH_TIMEOUT d12556 1 a12558 1 FETCH_USING d12560 1 a12562 1 FILES_SUBST_SED d12564 1 d12576 8 d12671 13 d12685 2 d12688 1 a12690 1 GNU_CONFIGURE_INFODIR d12692 1 a12694 1 GNU_CONFIGURE_QUIET d12696 1 a12698 1 GODEP_REDIRECTS d12700 1 a12702 1 GO_DEPS d12704 1 a12706 1 GO_EXTRA_MOD_DIRS d12708 1 a12710 1 GO_SRCPATH d12712 1 a12714 1 GRUB_NETWORK_CARDS d12716 1 a12718 1 GRUB_SCAN_ARGS d12720 1 d12740 1 a12740 1 HOMEPAGE d12743 5 d12749 2 d12752 1 a12754 1 HOWL_GROUP d12756 1 a12758 1 ICCBASE d12760 1 a12762 1 ICON_THEMES d12764 1 a12766 1 IGNORE_CCACHE d12768 1 a12770 1 IGNORE_INTERACTIVE_FETCH d12772 1 a12774 1 IMAKEOPTS d12776 1 a12778 1 IMAKE_MANINSTALL d12780 1 a12782 1 IMDICTDIR d12784 1 a12786 1 INFO_DIR d12788 1 a12790 1 INFO_MSG d12792 1 a12794 1 INN_DATA_DIR d12796 1 a12798 1 INN_USER d12800 1 a12802 1 INSTALLATION_DIRS_FROM_PLIST d12804 1 a12806 1 INSTALL_SH_OVERRIDE d12808 1 a12810 1 INSTALL_TEMPLATES d12812 1 a12814 1 IRCD_HYBRID_IRC_GROUP d12816 1 a12818 1 IRCD_HYBRID_MAXCONN d12820 1 a12822 1 IRCD_HYBRID_SYSLOG_EVENTS d12824 1 a12826 1 IRCD_HYBRID_TOPICLEN d12828 1 a12830 1 IRRD_USE_PGP d12832 1 a12834 1 JABBERD_LOGDIR d12836 1 a12838 1 JABBERD_SPOOLDIR d12840 1 d12843 1 d12845 2 d12848 1 a12850 1 JAVA_HOME d12852 1 a12854 1 JAVA_NAME d12856 1 a12858 1 JAVA_WRAPPERS d12860 1 a12862 1 JPEG_DEFAULT d12864 1 a12866 1 KERMIT_SUID_UUCP d12868 1 a12870 1 KNEWS_DOMAIN_FILE d12872 1 a12874 1 KRB5_ACCEPTED d12876 1 a12878 1 LANGUAGES d12880 1 a12882 1 LAPACKE_PC d12884 1 a12886 1 LAPACK_PC d12888 1 a12890 1 LDCONFIG_ADD_CMD d12892 1 a12894 1 LDD d12896 1 a12898 1 LEAFNODE_GROUP d12900 1 a12902 1 LIBDVDCSS_HOMEPAGE d12904 1 a12906 1 LIBIMAGEQUANT_TYPE d12908 1 a12910 1 LIBTOOL d12912 1 a12914 1 LIBTOOL_M4_OVERRIDE d12916 1 a12918 1 LICENSE d12920 5 d12927 1 a12927 1 LINK_RPATH_FLAG d12992 3 d12996 1 a12998 1 MAKE_DIRS d13000 1 a13002 1 MAKE_ENV d13004 1 a13006 1 MAKE_FLAGS d13008 1 a13010 1 MAKE_JOBS_SAFE d13012 1 a13014 1 MANCOMPRESSED_IF_MANZ d13016 1 a13018 1 MANZ d13020 1 a13022 1 MASTER_SITES d13024 1 a13026 1 MASTER_SITE_LOCAL d13028 1 a13030 1 MASTER_SITE_OVERRIDE d13032 1 a13034 1 MASTER_SORT d13036 1 a13038 1 MASTER_SORT_REGEX d13040 1 a13042 1 MEDIATOMB_GROUP d13044 1 a13046 1 MIPSPROBASE d13048 1 a13050 1 MIREDO_USER d13052 1 a13054 1 MKDIR d13056 1 a13058 1 MLDONKEY_GROUP d13060 1 a13062 1 MLDONKEY_USER d13064 1 a13066 1 MONOTONE_USER d13068 1 a13070 1 MOTIF_TYPE d13072 1 a13074 1 MPI_TYPE d13076 1 a13078 1 MSGFMT_STRIP_MSGID_PLURAL d13080 1 d13196 4 d13212 3 d13216 1 a13218 1 OWN_DIRS_PERMS d13220 1 a13222 1 P4PORT d13224 1 a13226 1 P4USER d13228 1 a13230 1 PALMOS_DEFAULT_SDK d13232 1 a13234 1 PAM_DEFAULT d13236 1 a13238 1 PASSIVE_FETCH d13240 1 a13242 1 PATCHFILES d13244 1 a13246 1 PATCH_DEBUG d13248 1 a13250 1 PATCH_DIST_CAT d13252 1 a13254 1 PATCH_FUZZ_FACTOR d13256 1 a13258 1 PATH d13260 1 d13263 5 a13268 1 PEAR_LIB d13271 1 a13272 1 PERL5 d13275 1 a13276 1 PERL5_CONFIGURE_DIRS d13279 1 a13280 1 PERL5_LICENSE d13283 1 a13284 1 PERL5_PACKLIST d13287 1 a13288 1 PERL5_PERLBASE d13291 1 a13292 1 PERL5_USE_PACKLIST d13295 1 a13296 1 PFCTL d13299 1 a13300 1 PF_VERSION d13303 1 a13304 1 PGHOME d13307 1 a13308 1 PGSQL_TYPE d13311 1 a13312 1 PGSQL_VERSIONS_ACCEPTED d13315 1 a13316 1 PGUSER d13319 1 a13320 1 PHP d13323 1 a13324 1 PHPPKGSRCDIR d13327 1 a13328 1 PHP_CHECK_INSTALLED d13331 1 a13332 1 PHP_INITIAL_TEENY d13335 1 a13336 1 PHP_VERSION d13339 1 a13340 1 PHP_VERSIONS_INCOMPATIBLE d13343 1 a13344 1 PHP_VERSION_REQD d13347 1 a13348 1 PKGCONFIG_BASE d13351 1 a13352 1 PKGCONFIG_OVERRIDE d13355 1 a13356 1 PKGDIR d13359 1 a13360 1 PKGINFODIR d13363 1 a13364 1 PKGMANDIR d13367 1 a13368 1 PKGNAME_REQD d13371 1 a13372 1 PKGREVISION d13375 1 a13376 1 PKGSRC_CHANGES d13379 1 a13380 1 PKGSRC_KEEP_BIN_PKGS d13383 1 a13384 1 PKGSRC_MAKE_ENV d13387 1 a13388 1 PKGSRC_MKPIE d13391 1 a13392 1 PKGSRC_OVERRIDE_MKPIE d13395 1 a13396 1 PKGSRC_SETENV d13399 1 a13400 1 PKGSRC_TODO d13403 1 a13404 1 PKGSRC_USE_FORTIFY d13407 1 a13408 1 PKGSRC_USE_RELRO d13411 1 a13412 1 PKGSRC_USE_STACK_CHECK d13415 1 a13416 1 PKGTOOLS_ARGS d13419 1 a13420 1 PKG_ALTERNATIVES d13423 1 a13424 1 PKG_APACHE_ACCEPTED d13427 1 a13428 1 PKG_BEST_EXISTS d13431 1 a13432 1 PKG_COMPRESSION d13435 1 a13436 1 PKG_CONFIG_PERMS d13439 1 a13440 1 PKG_DB_TMPDIR d13443 1 a13444 1 PKG_DEFAULT_OPTIONS d13447 1 a13448 1 PKG_DEVELOPER d13451 1 a13452 1 PKG_FATAL_ERRORS d13455 1 d13457 2 d13460 1 a13462 1 PKG_GECOS d13464 1 a13466 1 PKG_GROUPS d13468 1 a13470 1 PKG_HOME d13472 1 a13474 1 PKG_JAVA_HOME d13476 1 a13478 1 PKG_JVMS_ACCEPTED d13480 1 a13482 1 PKG_LEGACY_OPTIONS d13484 1 a13486 1 PKG_MKSYMLINKS d13488 1 a13490 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13492 1 a13494 1 PKG_OPTIONS_LEGACY_VARS d13496 1 a13498 1 PKG_OPTIONS_OPTIONAL_GROUPS d13500 1 a13502 1 PKG_OPTIONS_VAR d13504 1 a13506 1 PKG_PHP_MAJOR_VERS d13508 1 a13510 1 PKG_RCD_SCRIPTS d13512 1 a13514 1 PKG_REGISTER_SHELLS d13516 1 a13518 1 PKG_SHELL d13520 1 a13522 1 PKG_SUPPORTED_OPTIONS d13524 1 a13526 1 PKG_SYSCONFBASEDIR d13528 1 a13530 1 PKG_SYSCONFDIR_PERMS d13532 1 a13534 1 PKG_SYSCONFVAR d13536 1 a13538 1 PKG_UID d13540 1 a13542 1 PKG_USERS d13544 1 a13546 1 PKG_VERBOSE d13548 1 a13550 1 PLIST d13552 1 a13554 1 PLIST_AWK_ENV d13556 1 a13558 1 PLIST_SUBST d13560 1 a13562 1 PLIST_VARS d13564 1 a13566 1 POSSIBLE_GFORTRAN_VERSION d13568 1 a13570 1 PREFER d13572 1 a13574 1 PREFER_NATIVE_PTHREADS d13576 1 a13578 1 PREFIX d13580 1 a13582 1 PRE_ROOT_CMD d13584 1 a13586 1 PS d13588 1 a13590 1 PTHREAD_CFLAGS d13592 1 a13594 1 PTHREAD_LIBS d13596 1 a13598 1 PTHREAD_TYPE d13600 1 a13602 1 PYPKGPREFIX d13604 1 a13606 1 PYTHON_SELF_CONFLICT d13608 1 a13610 1 PYTHON_VERSIONED_DEPENDENCIES d13612 1 a13614 1 PYTHON_VERSIONS_INCOMPATIBLE d13616 1 a13618 1 PYTHON_VERSION_REQD d13620 1 a13622 1 QMAILDIR d13624 1 a13626 1 QMAIL_DAEMON_USER d13628 1 a13630 1 QMAIL_NOFILES_GROUP d13632 1 a13634 1 QMAIL_QMAIL_GROUP d13636 1 a13638 1 QMAIL_QUEUE_EXTRA d13640 1 a13642 1 QMAIL_REMOTE_USER d13644 1 a13646 1 QMAIL_SEND_USER d13648 1 a13650 1 QORE_MODULE_API d13652 1 a13654 1 QORE_USER_MODULE_DIR d13656 1 a13658 1 QPOPPER_FAC d13660 1 a13662 1 QPOPPER_USER d13664 5 a13670 1 RASMOL_DEPTH d13672 1 a13674 1 RCD_SCRIPTS_DIR d13676 1 a13678 1 RCD_SCRIPTS_MODE d13680 1 d13683 1 a13683 1 RCD_SCRIPT_SRC d13756 4 d13960 3 d13964 1 a13966 1 SILC_CLIENT_WITH_PERL d13968 1 a13970 1 SKIP_DEPENDS d13972 1 a13974 1 SMF_MANIFEST d13976 1 a13978 1 SMF_METHOD_SHELL d13980 1 a13982 1 SMF_NAME d13984 1 a13986 1 SMF_SRCDIR d13988 1 a13990 1 SNIPROXY_USER d13992 1 a13994 1 SPECIAL_PERMS d13996 1 a13998 1 SSH_SUID d14000 1 a14002 1 SSYNC_PAWD d14004 1 a14006 1 STRIP d14008 1 a14010 1 STRIP_DEBUG d14012 1 a14014 1 STRIP_FILES_SKIP d14016 1 a14018 1 SUBDIR d14020 1 a14022 1 SUBST_CLASSES d14024 1 a14026 1 SUBST_FILTER_CMD d14028 1 a14030 1 SUBST_NOOP_OK d14032 1 a14034 1 SUBST_SHOW_DIFF d14036 1 a14038 1 SUBST_STAGE d14040 1 a14042 1 SUNWSPROBASE d14044 9 a14054 1 SU_CMD d14056 1 a14058 1 TARGET_ARCH d14060 1 a14062 1 TERMCAP_TYPE d14064 1 a14066 1 TERMINFO_TYPE d14068 1 a14070 1 TEST_DEPENDS d14072 1 a14074 1 TEST_ENV d14076 1 a14078 1 TEST_MAKE_CMD d14080 1 a14082 1 TEST_TARGET d14084 1 a14086 1 TEXLIVE_REV d14088 1 a14090 1 TEXMFSITE d14092 1 a14094 1 TEX_HYPHEN_DAT d14096 1 a14098 1 TEX_TEXMF_DIRS d14100 1 a14102 1 TINYDYN_USER d14104 1 a14106 1 TO d14108 1 a14110 1 TOOLS_ALWAYS_WRAP d14112 1 a14114 1 TOOLS_BROKEN d14116 1 a14118 1 TOOLS_CMDLINE_SED d14120 1 a14122 1 TOOLS_CROSS_DESTDIR d14124 1 a14126 1 TOOLS_FAIL d14128 1 a14130 1 TOOLS_LDCONFIG d14132 1 a14134 1 TOOLS_PATH d14136 1 a14138 1 TOOLS_USE_CROSS_COMPILE d14140 1 d14299 1 d14301 2 d14304 1 a14306 1 __stdc__ d14308 1 a14310 1 accept d14312 1 a14314 1 acquire-lock d14316 1 a14318 1 added d14320 1 a14322 1 alloca d14324 1 a14326 1 aslr d14328 1 a14330 1 atlas d14332 1 a14334 1 automake d14336 1 a14338 1 awk d14340 1 a14342 1 big-endian d14344 1 a14346 1 bind d14348 1 a14350 1 blas d14352 1 a14354 1 broken d14356 1 a14358 1 bsd d14360 1 a14362 1 build d14364 1 a14366 1 buildlink-directories d14368 1 a14370 1 built-in d14372 1 a14374 1 c d14376 1 a14378 1 ccache d14380 1 a14382 1 cdefs d14384 1 a14386 1 changes d14388 1 a14390 1 changes-entry-noupdate d14392 1 a14394 1 check-clean d14396 1 a14398 1 check-files-clean d14400 1 a14402 1 checksum d14404 1 a14406 1 clean d14408 1 a14410 1 cleandir d14412 1 a14414 1 commit-changes-entry d14416 1 a14418 1 compiler d14420 1 a14422 1 config.guess d14424 1 a14426 1 configuration d14428 1 a14430 1 configure-env d14432 1 a14434 1 configure_args d14436 1 a14438 1 cos d14440 1 a14442 1 cputime d14444 1 a14446 1 csh d14448 1 d14512 3 d14516 1 a14518 1 ensurepip d14520 1 a14522 1 errx d14524 1 a14526 1 exp d14528 1 a14530 1 fabs d14532 1 a14534 1 features d14536 1 a14538 1 fetch-list d14540 1 a14542 1 forbids d14544 1 a14546 1 format d14548 1 d14551 1 a14551 1 fortify_source d14584 3 d14588 1 a14590 1 gitlab d14592 1 a14594 1 gnu d14596 1 a14598 1 go d14600 1 a14602 1 golang d14604 1 a14606 1 hashbang d14608 1 d14611 1 a14611 1 help d14684 3 d14688 1 a14690 1 meta-package d14692 1 a14694 1 mit-krb5 d14696 1 a14698 1 mkl d14700 1 a14702 1 move d14704 1 a14706 1 mprotect d14708 1 a14710 1 native d14712 1 a14714 1 nbcompat d14716 1 a14718 1 node d14720 1 a14722 1 nodejs d14724 1 a14726 1 obstack_ptr_grow d14728 1 a14730 1 only d14732 1 a14734 1 options d14736 1 a14738 1 order d14740 1 a14742 1 override-intltool d14744 1 a14746 1 package d14748 1 a14750 1 path d14752 1 a14754 1 paxctl d14756 1 a14758 1 pc d14760 1 a14762 1 perl5 d14764 1 a14766 1 php d14768 1 a14770 1 pkg-config d14772 1 a14774 1 pkgsrc d14776 1 a14778 1 plist d14780 1 a14782 1 post-fetch d14784 1 a14786 1 pre-build-checks-hook d14788 1 a14790 1 pre-extract d14792 1 a14794 1 print-go-deps d14796 1 a14798 1 print-summary-data d14800 1 a14802 1 pypi d14804 1 a14806 1 r d14808 1 a14810 1 recursive d14812 1 a14814 1 recvfrom d14816 1 a14818 1 release-localbase-lock d14820 1 a14822 1 relro d14824 1 a14826 1 removed d14828 1 a14830 1 renamed d14832 1 a14834 1 replace d14836 1 a14838 1 reproducible d14840 1 a14842 1 root d14844 1 a14846 1 send d14848 1 a14850 1 sendto d14852 1 a14854 1 setgid d14856 1 a14858 1 setuid d14860 1 a14862 1 shebang d14864 1 a14866 1 show-all d14868 1 a14870 1 show-depends d14872 1 a14874 1 show-depends-pkgpaths d14876 1 a14878 1 show-deps d14880 1 a14882 1 show-downlevel d14884 1 a14886 1 show-tools d14888 1 a14890 1 show-vars d14892 1 a14894 1 socket d14896 1 a14898 1 st_mode d14900 1 a14902 1 strcasestr d14904 1 a14906 1 strip d14908 1 a14910 1 strnlen d14912 1 a14914 1 subst d14916 1 d14924 1 a14924 1 symlink d14927 1 a14928 1 test-env d14931 1 a14932 1 texlive d14935 1 a14936 1 todo d14939 1 a14940 1 tools d14943 1 a14944 1 transitive d14947 1 a14948 1 ulimit d14951 1 a14952 1 undo-replace d14955 1 a14956 1 unprivileged d14959 1 a14960 1 unstripped d14963 1 a14964 1 updated d14967 1 a14968 1 upload-distfiles d14971 1 a14972 1 user d14975 1 a14976 1 vasprintf d14979 1 a14980 1 vsnprintf d14983 1 a14984 1 warning d14987 1 a14988 1 warnx d14991 1 a14992 1 wattr_on d14995 1 a14996 1 wrapper d14999 1 a15000 1   @ 1.358 log @doc/pkgsrc.*: regen @ text @d8765 1 a8765 1 actioned in lang/php/phpversion.mk, and @ 1.357 log @doc/pkgsrc.*: regen @ text @d8596 1 a8596 1

    Compilers for the C and C++ languages comes with d8606 1 a8606 3 c99, c++, c++03, gnu++03, c++0x, gnu++0x, c++11, gnu++11, c++14, gnu++14, c++17, gnu++17, c++20, gnu++20, fortran, fortran77, java, objc, obj-c++, and ada. d8612 1 a8612 6 phase. Language variants like c++11 can be specified if the package does not explicitly set -std=... when compiling (i.e. the package assumes the compiler defaults to C++11 or some other standard). This is a common bug in upstream build systems.

    d8632 23 d12536 4 d12835 1 a12836 1 LIBTOOL d12839 1 a12840 1 LIBTOOL_M4_OVERRIDE d12843 1 a12844 1 LICENSE d12847 1 a12848 1 LINK_RPATH_FLAG d12851 1 a12852 1 LOCALBASE d12855 1 a12856 1 LOCALPATCHES d12859 1 a12860 1 LOVE_GAME d12863 1 a12864 1 LP32PLATFORMS d12867 1 a12868 1 LUA_BUSTED_ARGS d12871 1 a12872 1 LUA_COMPILER d12875 1 a12876 1 LUA_EXAMPLESDIR d12879 1 a12880 1 LUA_INTERPRETER d12883 1 a12884 1 LUA_LINKER_MAGIC d12887 1 a12888 1 LUA_SELF_CONFLICT d12891 1 a12892 1 LUA_VERSIONS_ACCEPTED d12895 1 a12896 1 LUA_VERSION_DEFAULT d12899 1 a12900 1 Lua d12903 1 a12904 1 MAILAGENT_DOMAIN d12907 1 a12908 1 MAILAGENT_FQDN d12911 1 a12912 1 MAJORDOMO_HOMEDIR d12915 1 a12916 1 MAKE_DIRS d12919 1 a12920 1 MAKE_ENV d12923 1 a12924 1 MAKE_FLAGS d12927 1 a12928 1 MAKE_JOBS_SAFE d12931 1 a12932 1 MANCOMPRESSED_IF_MANZ d12935 1 a12936 1 MANZ d12939 1 a12940 1 MASTER_SITES d12943 1 a12944 1 MASTER_SITE_LOCAL d12947 1 a12948 1 MASTER_SITE_OVERRIDE d12951 1 a12952 1 MASTER_SORT d12955 1 a12956 1 MASTER_SORT_REGEX d12959 1 a12960 1 MEDIATOMB_GROUP d12963 1 a12964 1 MIPSPROBASE d12967 1 a12968 1 MIREDO_USER d12971 1 a12972 1 MKDIR d12975 1 a12976 1 MLDONKEY_GROUP d12979 1 a12980 1 MLDONKEY_USER d12983 1 a12984 1 MONOTONE_USER d12987 1 a12988 1 MOTIF_TYPE d12991 1 a12992 1 MPI_TYPE d12995 1 a12996 1 MSGFMT_STRIP_MSGID_PLURAL d12999 1 a13000 1 MV d13003 1 a13004 1 MYSQL_DATADIR d13007 1 a13008 1 MYSQL_GROUP d13011 1 a13012 1 MYSQL_VERSION d13015 1 a13016 1 MYSQL_VERSION_DEFAULT d13019 1 a13020 1 NAGIOSDIR d13023 1 a13024 1 NAGIOS_USER d13027 1 a13028 1 NATIVE_APPEND_ELF d13031 1 a13032 1 NATIVE_MACHINE_PLATFORM d13035 1 a13036 1 NBPAX_PROGRAM_PREFIX d13039 1 a13040 1 NMH_EDITOR d13043 1 a13044 1 NMH_PAGER d13047 1 a13048 1 NODE_VERSIONS_INCOMPATIBLE d13051 1 a13052 1 NODE_VERSION_REQD d13055 1 a13056 1 NOTE d13059 1 a13060 1 NOT_PAX_ASLR_SAFE d13063 1 a13064 1 NO_BUILD d13067 1 a13068 1 NO_CONFIGURE d13071 1 a13072 1 NS_PREFERRED d13075 1 a13076 1 NULLMAILER_USER d13079 1 a13080 1 OBJMACHINE d13083 1 a13084 1 OCAML_FINDLIB_REGISTER d13087 1 a13088 1 OCAML_SITELIBDIR d13091 1 a13092 1 ONLY_FOR_COMPILER d13095 1 a13096 1 OPENSSH_CHROOT d13099 1 a13100 1 OPENSSH_USER d13103 1 a13104 1 OPSYS_EMULDIR d13107 1 a13108 1 OS d13111 1 a13112 1 OSX d13115 1 a13116 1 OS_VERSION d13119 1 a13120 1 OVERRIDE_DIRDEPTH d13123 1 a13124 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13127 1 a13128 1 OWN_DIRS_PERMS d13131 1 a13132 1 P4PORT d13135 1 a13136 1 P4USER d13139 1 a13140 1 PALMOS_DEFAULT_SDK d13143 1 a13144 1 PAM_DEFAULT d13147 1 a13148 1 PASSIVE_FETCH d13151 1 a13152 1 PATCHFILES d13155 1 a13156 1 PATCH_DEBUG d13159 1 a13160 1 PATCH_DIST_CAT d13163 1 a13164 1 PATCH_FUZZ_FACTOR d13167 1 a13168 1 PATH d13171 1 a13172 1 PEAR_CMD d13175 1 a13176 1 PEAR_PACKAGE_XML d13179 1 a13180 1 PERL5_CONFIGURE d13183 1 a13184 1 PERL5_LDFLAGS d13187 1 a13188 1 PERL5_MODULE_TYPE d13191 1 a13192 1 PERL5_PACKLIST_DIR d13195 1 a13196 1 PERL5_SITEBASE d13199 1 a13200 1 PERL5_VENDORBASE d13203 1 a13204 1 PFVAR_H d13207 1 a13208 1 PGGROUP d13211 1 a13212 1 PGPKGSRCDIR d13215 1 a13216 1 PGSQL_VERSION d13219 1 a13220 1 PGSQL_VERSION_DEFAULT d13223 1 a13224 1 PG_LIB_EXT d13227 1 a13228 1 PHPCOMMON_MK d13231 1 a13232 1 PHP_BASE_VERS d13235 1 a13236 1 PHP_EXTENSION_DIR d13239 1 a13240 1 PHP_PKG_PREFIX d13243 1 a13244 1 PHP_VERSIONS_ACCEPTED d13247 1 a13248 1 PHP_VERSION_DEFAULT d13251 1 a13252 1 PILRC_USE_GTK d13255 1 a13256 1 PKGCONFIG_FILE d13259 1 a13260 1 PKGCONFIG_OVERRIDE_STAGE d13263 1 a13264 1 PKGGNUDIR d13267 1 a13268 1 PKGLOCALEDIR d13271 1 a13272 1 PKGNAME d13275 1 a13276 1 PKGPATH d13279 1 a13280 1 PKGSRC_BLAS_TYPES d13283 1 a13284 1 PKGSRC_COMPILER d13287 1 a13288 1 PKGSRC_LOCKTYPE d13291 1 a13292 1 PKGSRC_MESSAGE_RECIPIENTS d13295 1 a13296 1 PKGSRC_MKREPRO d13299 1 a13300 1 PKGSRC_RUN_TEST d13303 1 a13304 1 PKGSRC_SLEEPSECS d13307 1 a13308 1 PKGSRC_USE_CTF d13311 1 a13312 1 PKGSRC_USE_MKTOOLS d13315 1 a13316 1 PKGSRC_USE_SSP d13319 1 a13320 1 PKGTASKS_DATAFILE d13323 1 a13324 1 PKGTOOLS_ENV d13327 1 a13328 1 PKG_APACHE d13331 1 a13332 1 PKG_APACHE_DEFAULT d13335 1 a13336 1 PKG_BUILD_OPTIONS d13339 1 a13340 1 PKG_CONFIG d13343 1 a13344 1 PKG_CREATE_USERGROUP d13347 1 a13348 1 PKG_DEBUG_LEVEL d13351 1 a13352 1 PKG_DESTDIR_SUPPORT d13355 1 a13356 1 PKG_DISABLED_OPTIONS d13359 1 a13360 1 PKG_FC d13363 1 a13364 1 PKG_GECOS d13367 1 a13368 1 PKG_GROUPS d13371 1 a13372 1 PKG_HOME d13375 1 a13376 1 PKG_JAVA_HOME d13379 1 a13380 1 PKG_JVMS_ACCEPTED d13383 1 a13384 1 PKG_LEGACY_OPTIONS d13387 1 a13388 1 PKG_MKSYMLINKS d13391 1 a13392 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13395 1 a13396 1 PKG_OPTIONS_LEGACY_VARS d13399 1 a13400 1 PKG_OPTIONS_OPTIONAL_GROUPS d13403 1 a13404 1 PKG_OPTIONS_VAR d13407 1 a13408 1 PKG_PHP_MAJOR_VERS d13411 1 a13412 1 PKG_RCD_SCRIPTS d13415 1 a13416 1 PKG_REGISTER_SHELLS d13419 1 a13420 1 PKG_SHELL d13423 1 a13424 1 PKG_SUPPORTED_OPTIONS d13427 1 a13428 1 PKG_SYSCONFBASEDIR d13431 1 a13432 1 PKG_SYSCONFDIR_PERMS d13435 1 a13436 1 PKG_SYSCONFVAR d13439 1 a13440 1 PKG_UID d13443 1 a13444 1 PKG_USERS d13447 1 a13448 1 PKG_VERBOSE d13451 1 a13452 1 PLIST d13455 1 a13456 1 PLIST_AWK_ENV d13459 1 a13460 1 PLIST_SUBST d13463 1 a13464 1 PLIST_VARS d13467 1 a13468 1 POSSIBLE_GFORTRAN_VERSION d13471 1 a13472 1 PREFER d13475 1 a13476 1 PREFER_NATIVE_PTHREADS d13479 1 a13480 1 PREFIX d13483 1 a13484 1 PRE_ROOT_CMD d13487 1 a13488 1 PS d13491 1 a13492 1 PTHREAD_CFLAGS d13495 1 a13496 1 PTHREAD_LIBS d13499 1 a13500 1 PTHREAD_TYPE d13503 1 a13504 1 PYPKGPREFIX d13507 1 a13508 1 PYTHON_SELF_CONFLICT d13511 1 a13512 1 PYTHON_VERSIONED_DEPENDENCIES d13515 1 a13516 1 PYTHON_VERSIONS_INCOMPATIBLE d13519 1 a13520 1 PYTHON_VERSION_REQD d13523 1 a13524 1 QMAILDIR d13527 1 a13528 1 QMAIL_DAEMON_USER d13531 1 a13532 1 QMAIL_NOFILES_GROUP d13535 1 a13536 1 QMAIL_QMAIL_GROUP d13539 1 a13540 1 QMAIL_QUEUE_EXTRA d13543 1 a13544 1 QMAIL_REMOTE_USER d13547 1 a13548 1 QMAIL_SEND_USER d13551 1 a13552 1 QORE_MODULE_API d13555 1 a13556 1 QORE_USER_MODULE_DIR d13559 1 a13560 1 QPOPPER_FAC d13563 1 a13564 1 QPOPPER_USER d13567 1 a13568 1 RASMOL_DEPTH d13571 1 a13572 1 RCD_SCRIPTS_DIR d13575 1 a13576 1 RCD_SCRIPTS_MODE d13579 1 a13580 1 RCD_SCRIPT_SRC d13583 1 a13584 1 READLINE_DEFAULT d13587 1 a13588 1 REAL_ROOT_GROUP d13591 1 a13592 1 RECURSIVE_MAKE d13595 1 a13596 1 RELRO_SUPPORTED d13599 1 a13600 1 REPLACE_BASH d13603 1 a13604 1 REPLACE_KSH d13607 1 a13608 1 REPLACE_NODEJS d13611 1 a13612 1 REPLACE_PERL d13615 1 a13616 1 REPLACE_PHP d13619 1 a13620 1 REPLACE_QORE d13623 1 a13624 1 REPLACE_RUBY d13627 1 a13628 1 REPLACE_RUBY_PAT d13631 1 a13632 1 REPLACE_TEXLUA d13635 1 a13636 1 REQD_DIRS d13639 1 a13640 1 REQD_FILES d13643 1 a13644 1 REQD_FILES_PERMS d13647 1 a13648 1 RESOLV_LDFLAGS d13651 1 a13652 1 RM d13655 1 a13656 1 ROOT_GROUP d13659 1 a13660 1 RPCGEN d13663 1 a13664 1 RPM2PKG_PLIST d13667 1 a13668 1 RPM2PKG_STAGE d13671 1 a13672 1 RPM2PKG_SUBPREFIX d13675 1 a13676 1 RPMIGNOREPATH d13679 1 a13680 1 RSSH_CVS_PATH d13683 1 a13684 1 RSSH_RSYNC_PATH d13687 1 a13688 1 RSSH_SFTP_SERVER_PATH d13691 1 a13692 1 RUBYGEM d13695 1 a13696 1 RUBYGEM_NAME d13699 1 a13700 1 RUBYGEM_USE_MANPAGES d13703 1 a13704 1 RUBY_ABI_VERSION d13707 1 a13708 1 RUBY_ARCHINC d13711 1 a13712 1 RUBY_BASE d13715 1 a13716 1 RUBY_BUILD_DOCUMENT d13719 1 a13720 1 RUBY_DOC d13723 1 a13724 1 RUBY_EG d13727 1 a13728 1 RUBY_EXTCONF d13731 1 a13732 1 RUBY_EXTCONF_DEBUG d13735 1 a13736 1 RUBY_GEM_ARCH d13739 1 a13740 1 RUBY_INC d13743 1 a13744 1 RUBY_LIB_BASE d13747 1 a13748 1 RUBY_NOVERSION d13751 1 a13752 1 RUBY_RAILS d13755 2 a13756 2 RUBY_RAILS52_VERSION RUBY_RAILS60_VERSION a13758 1 RUBY_RAILS61_VERSION d13760 1 a13762 1 RUBY_RAILS_ACCEPTED d13764 1 a13766 1 RUBY_RAILS_REQD d13768 1 a13770 1 RUBY_RIDIR d13772 1 a13774 1 RUBY_SHLIB d13776 1 a13778 1 RUBY_SHLIBVER d13780 1 a13782 1 RUBY_SITEARCHLIB d13784 1 a13786 1 RUBY_SITELIB_BASE d13788 1 a13790 1 RUBY_SLEXT d13792 1 a13794 1 RUBY_STATICLIB d13796 1 a13798 1 RUBY_SYSRIDIR d13800 1 a13802 1 RUBY_VENDORARCHLIB d13804 1 a13806 1 RUBY_VENDORLIB_BASE d13808 1 a13810 1 RUBY_VERSION d13812 1 a13814 1 RUBY_VERSIONS_INCOMPATIBLE d13816 1 a13818 1 RUBY_VERSION_REQD d13820 1 a13822 1 RUN d13824 1 a13826 1 RUST_TYPE d13828 1 a13830 1 SCREWS_GROUP d13832 1 a13834 1 SCRIPTS_ENV d13836 1 a13838 1 SCROLLKEEPER_REBUILDDB d13840 1 a13842 1 SDIST_PAWD d13844 1 a13846 1 SERIAL_DEVICES d13848 1 a13850 1 SETGID_GAMES_PERMS d13852 1 a13854 1 SH d13856 1 a13858 1 SIGN_PACKAGES d13860 1 a13862 1 SITE_SPECIFIC_PKGS d13864 1 a13866 1 SMF_INSTANCES d13868 1 a13870 1 SMF_METHODS d13872 1 a13874 1 SMF_METHOD_SRC d13876 1 a13878 1 SMF_PREFIX d13880 1 a13882 1 SNIPROXY_GROUP d13884 1 a13886 1 SOURCE_BUFFSIZE d13888 1 a13890 1 SPECIFIC_PKGS d13892 1 a13894 1 SSP_SUPPORTED d13896 1 a13898 1 STEP_MSG d13900 1 a13902 1 STRIP_DBG d13904 1 a13906 1 STRIP_DEBUG_SUPPORTED d13908 1 a13910 1 SU d13912 1 a13914 1 SUBST d13916 1 a13918 1 SUBST_FILES d13920 1 a13922 1 SUBST_MESSAGE d13924 1 a13926 1 SUBST_SED d13928 1 a13930 1 SUBST_SKIP_TEXT_CHECK d13932 1 a13934 1 SUBST_VARS d13936 1 a13938 1 SUSE_PREFER d13940 1 a13942 1 SYSCONFBASE d13944 1 a13946 1 TBL d13948 1 a13950 1 TERMINFO_DEFAULT d13952 1 a13954 1 TEST d13956 1 a13958 1 TEST_DIRS d13960 1 a13962 1 TEST_ENV_SHELL d13964 1 a13966 1 TEST_MAKE_FLAGS d13968 1 a13970 1 TEXLIVE_IGNORE_PATTERNS d13972 1 a13974 1 TEXLIVE_UNVERSIONED d13976 1 a13978 1 TEX_FORMATS d13980 1 a13982 1 TEX_HYPHEN_DEF d13984 1 a13986 1 THTTPD_LOG_FACILITY d13988 1 a13990 1 TLSWRAPPER_CHROOT d13992 1 a13994 1 TOOLS_ALIASES d13996 1 a13998 1 TOOLS_ARGS d14000 1 a14002 1 TOOLS_CMD d14004 1 a14006 1 TOOLS_CREATE d14008 1 a14010 1 TOOLS_DIR d14012 1 a14014 1 TOOLS_GNU_MISSING d14016 1 a14018 1 TOOLS_NOOP d14020 1 a14022 1 TOOLS_SCRIPT d14024 1 a14026 1 TOOL_DEPENDS d14028 1 a14030 1 TYPE d14032 1 a14034 1 UCSPI_SSL_GROUP d14036 1 a14038 1 UNLIMIT_RESOURCES d14040 1 a14042 1 UNPRIVILEGED_GROUP d14044 1 a14046 1 UNPRIVILEGED_USER d14048 1 a14050 1 UNWRAP_PATTERNS d14052 1 a14054 1 UPDATE_TARGET d14056 1 a14058 1 USERGROUP_PHASE d14060 1 a14062 1 USER_SPECIFIC_PKGS d14064 1 a14066 1 USE_APR d14068 1 a14070 1 USE_BUILTIN d14072 1 a14074 1 USE_CROSS_COMPILE d14076 1 a14078 1 USE_CWRAPPERS d14080 1 a14082 1 USE_DB185 d14084 1 a14086 1 USE_GAMESGROUP d14088 1 a14090 1 USE_IMAKE d14092 1 a14094 1 USE_JAVA2 d14096 1 a14098 1 USE_LIBTOOL d14100 1 a14102 1 USE_NETBSD_REPO d14104 1 a14106 1 USE_PKGSRC_GCC_RUNTIME d14108 1 a14110 1 USE_PKG_ADMIN_DIGEST d14112 1 a14114 1 USE_RUBY_INSTALL d14116 1 a14118 1 USE_RUBY_SETUP_PKG d14120 1 a14122 1 UUCP_GROUP d14124 1 a14126 1 VARBASE d14128 1 a14130 1 VIM_EXTRA_OPTS d14132 1 a14134 1 WCALC_CGIDIR d14136 1 a14138 1 WCALC_HTMLDIR d14140 1 a14142 1 WDM_MANAGERS d14144 1 a14146 1 WRAPPER_REORDER_CMDS d14148 1 a14150 1 WRKDIR_BASENAME d14152 1 a14154 1 WRKLOG d14156 1 a14158 1 WRKSRC d14160 1 a14162 1 X11 d14164 1 a14166 1 X11_PKGSRCDIR d14168 1 a14170 1 X509_CERTIFICATE d14172 1 a14174 1 XAW_TYPE d14176 1 a14178 1 XMKMF d14180 1 a14182 1 XXX d14184 1 a14186 1 ZSH_STATIC d14188 1 a14190 1 _vargroups d14192 1 a14194 1 acquire-localbase-lock d14196 1 a14198 1 add d14200 1 a14202 1 administrator d14204 1 a14206 1 alternatives d14208 1 a14210 1 asprintf d14212 1 a14214 1 autoconf d14216 1 a14218 1 autoreconf d14220 1 a14222 1 bash d14224 1 a14226 1 bin-install d14228 1 a14230 1 binpkg-list d14232 1 a14234 1 bootstrap-depends d14236 1 a14238 1 broken_on_platform d14240 1 a14242 1 bsd.prog.mk d14244 1 a14246 1 build-env d14248 1 a14250 1 buildlink-oss-soundcard-h d14252 1 a14254 1 builtin d14256 1 a14258 1 c++ d14260 1 a14262 1 cce d14264 1 a14266 1 ceil d14268 1 a14270 1 changes-entry d14272 1 a14274 1 check d14276 1 a14278 1 check-files d14280 1 a14282 1 check-vulnerable d14284 1 a14286 1 checksum-phase d14288 1 a14290 1 clean-depends d14292 1 a14294 1 commit d14296 1 a14298 1 compact d14300 1 a14302 1 conf d14304 1 a14306 1 config.sub d14308 1 a14310 1 configure d14312 1 a14314 1 configure-help d14316 1 a14318 1 connect d14320 1 a14322 1 cpe d14324 1 a14326 1 create-usergroup d14328 1 a14330 1 ctf d14332 1 a14334 1 declaration d14336 1 a14338 1 defined d14340 1 a14342 1 dependencies d14344 1 a14346 1 depends-checksum d14348 1 a14350 1 deps d14352 1 a14354 1 destdir d14356 1 a14358 1 distclean d14360 1 a14362 1 dl d14364 1 a14366 1 do-buildlink d14368 1 a14370 1 do-configure d14372 1 a14374 1 do-extract d14376 1 a14378 1 do-install d14380 1 a14382 1 emul-distinfo d14384 1 a14386 1 emulation d14388 1 a14390 1 enable d14392 1 a14394 1 enomem d14396 1 a14398 1 err d14400 1 a14402 1 etc d14404 1 a14406 1 extract-rpm d14408 1 a14410 1 feature d14412 1 a14414 1 fetch d14416 1 a14418 1 follows d14420 1 a14422 1 form d14424 1 a14426 1 fortify d14428 1 a14430 1 friend d14432 1 a14434 1 fts_close d14436 1 a14438 1 fts_read d14440 1 a14442 1 gcc d14444 1 a14446 1 gethostbyname d14448 1 a14450 1 getopt_long d14452 1 a14454 1 getservbyname d14456 1 a14458 1 getservent d14460 1 a14462 1 github d14464 1 a14466 1 glob d14468 1 a14470 1 gnu_configure_strict d14472 1 a14474 1 go-deps d14476 1 a14478 1 guess-license d14480 1 a14482 1 heimdal d14484 1 a14486 1 imake d14488 1 a14490 1 increment d14492 1 a14494 1 inet_aton d14496 1 a14498 1 interpreter d14500 1 a14502 1 ip4 d14504 1 a14506 1 ipv4 d14508 1 a14510 1 iso d14512 1 a14514 1 krb d14516 1 a14518 1 ksh d14520 1 a14522 1 latex d14524 1 a14526 1 libintl_gettext d14528 1 a14530 1 libnbcompat d14532 1 a14534 1 libtool d14536 1 a14538 1 license d14540 1 a14542 1 little-endian d14544 1 a14546 1 locking d14548 1 a14550 1 lvalue d14552 1 a14554 1 makesum d14556 1 a14558 1 meta d14560 1 a14562 1 meta_package d14564 1 a14566 1 mk.conf d14568 1 a14570 1 mount d14572 1 a14574 1 moved d14576 1 a14578 1 mremap d14580 1 a14582 1 nb d14584 1 a14586 1 netlib d14588 1 a14590 1 node.js d14592 1 a14594 1 obstack d14596 1 a14598 1 occurs d14600 1 a14602 1 openblas d14604 1 a14606 1 options.mk d14608 1 a14610 1 override d14612 1 a14614 1 override-message-intltool d14616 1 a14618 1 parallel d14620 1 a14622 1 pax d14624 1 a14626 1 pbulk-index d14628 1 a14630 1 perl d14632 1 a14634 1 perms d14636 1 a14638 1 pkg-build-options d14640 1 a14642 1 pkg_build_options d14644 1 a14646 1 platform d14648 1 a14650 1 post-extract d14652 1 a14654 1 post-wrapper d14656 1 a14658 1 pre-configure-checks-hook d14660 1 a14662 1 pre-fetch d14664 1 a14666 1 print-plist d14668 1 a14670 1 privileged-install-hook d14672 1 a14674 1 python d14676 1 a14678 1 readme-all d14680 1 a14682 1 recv d14684 1 a14686 1 regcomp d14688 1 a14690 1 release-lock d14692 1 a14694 1 remove d14696 1 a14698 1 rename d14700 1 a14702 1 reorder d14704 1 a14706 1 replace_interpreter d14708 1 a14710 1 resolv d14712 1 a14714 1 ruby d14716 1 a14718 1 sendfile d14720 1 a14722 1 setenv d14724 1 a14726 1 setprogname d14728 1 a14730 1 sh d14732 1 a14734 1 show d14736 1 a14738 1 show-build-defs d14740 1 a14742 1 show-depends-dirs d14744 1 a14746 1 show-depends-recursive d14748 1 a14750 1 show-distfiles d14752 1 a14754 1 show-subdir-var d14756 1 a14758 1 show-var d14760 1 a14762 1 snprintf d14764 1 a14766 1 ssp d14768 1 a14770 1 stage-install d14772 1 a14774 1 strict d14776 1 a14778 1 strndup d14780 1 a14782 1 strsep d14784 1 a14786 1 substitutions d14788 1 a14790 1 sunpro d14792 1 a14794 1 symlink d14796 1 a14798 1 test-env d14800 1 a14802 1 texlive d14804 1 a14806 1 todo d14808 1 a14810 1 tools d14812 1 a14814 1 transitive d14816 1 a14818 1 ulimit d14820 1 a14822 1 undo-replace d14824 1 a14826 1 unprivileged d14828 1 a14830 1 unstripped d14832 1 a14834 1 updated d14836 1 a14838 1 upload-distfiles d14840 1 a14842 1 user d14844 1 a14846 1 vasprintf d14848 1 a14850 1 vsnprintf d14852 1 a14854 1 warning d14856 1 a14858 1 warnx d14860 1 a14862 1 wattr_on d14864 1 a14866 1 wrapper d14868 1 @ 1.356 log @doc/pkgsrc.*: regen @ text @d3611 1 a3611 1 not both.

    d3674 2 a3675 2 protected using three different message digest algorithms (SHA1, RMD160, SHA512), as well as the file size.

    d8600 2 a8601 1

    To declare which language's compiler a package needs, set d8614 25 a8638 1 phase.

    d11907 1 a11908 1 ALL_ENV d11911 1 a11912 1 AMANDA_TMP d11915 1 a11916 1 AMANDA_VAR d11919 1 a11920 1 APACHE_MODULE_NAME d11923 1 a11924 1 APACHE_MODULE_SRCDIR d11927 1 a11928 1 APACHE_SUEXEC_CONFIGURE_ARGS d11931 1 a11932 1 APACHE_USER d11935 1 a11936 1 APPEND_ELF d11939 1 a11940 1 AUDIT_PACKAGES_FLAGS d11943 1 a11944 1 AUTOMAKE_OVERRIDE d11947 1 a11948 1 AUTO_MKDIRS d11951 1 a11952 1 BDBBASE d11955 1 a11956 1 BDB_DEFAULT d11959 1 a11960 1 BDB_TYPE d11963 1 a11964 1 BINCIMAP_USER d11967 1 a11968 1 BIND_GROUP d11971 1 a11972 1 BINOWN d11975 1 a11976 1 BIN_INSTALL_FLAGS d11979 1 a11980 1 BLAS d11983 1 a11984 1 BLAS_C_INTERFACE d11987 1 a11988 1 BLAS_INDEX64 d11991 1 a11992 1 BLAS_PC d11995 1 a11996 1 BOOTSTRAP_DEPENDS d11999 1 a12000 1 BROKEN_EXCEPT_ON_PLATFORM d12003 1 a12004 1 BSDSRCDIR d12007 1 a12008 1 BSD_MAKE_ENV d12011 1 a12012 1 BUILDLINK_AUTO_VARS d12015 1 a12016 1 BUILDLINK_CONTENTS_FILTER d12019 1 a12020 1 BUILDLINK_FILES d12023 1 a12024 1 BUILDLINK_FNAME_TRANSFORM d12027 1 a12028 1 BUILDLINK_LIBS d12031 1 a12032 1 BUILDLINK_PKGNAME d12035 1 a12036 1 BUILDLINK_RPATHDIRS d12039 1 a12040 1 BUILD_DEFS d12043 1 a12044 1 BUILD_DEPENDS d12047 1 a12048 1 BUILD_ENV_SHELL d12051 1 a12052 1 BUILD_MAKE_FLAGS d12055 1 a12056 1 BUILTIN_FIND_FILES d12059 1 a12060 1 BUILTIN_FIND_GREP d12063 1 a12064 1 BUILTIN_FIND_HEADERS_VAR d12067 1 a12068 1 BUILTIN_FIND_PKGCONFIG_VAR d12071 1 a12072 1 BUILTIN_TEST_CURSES_DEFINES d12075 1 a12076 1 BUILTIN_VERSION_SCRIPT d12079 1 a12080 1 BUILTIN_X11_VERSION d12083 1 a12084 1 CACTI_USER d12087 1 a12088 1 CANNA_USER d12091 1 a12092 1 CBLAS_LIBS d12095 1 a12096 1 CCACHE_BASE d12099 1 a12100 1 CCACHE_LOGFILE d12103 1 a12104 1 CC_VERSION_STRING d12107 1 a12108 1 CDROM_PKG_URL_DIR d12111 1 a12112 1 CHANGES d12115 1 a12116 1 CHECK_FAKEHOME d12119 1 a12120 1 CHECK_FILES_SKIP d12123 1 a12124 1 CHECK_HEADERS d12127 1 a12128 1 CHECK_INTERPRETER d12131 1 a12132 1 CHECK_PERMS d12135 1 a12136 1 CHECK_PERMS_SKIP d12139 1 a12140 1 CHECK_PIE_SKIP d12143 1 a12144 1 CHECK_PORTABILITY d12147 1 a12148 1 CHECK_PORTABILITY_SKIP d12151 1 a12152 1 CHECK_RELRO_SKIP d12155 1 a12156 1 CHECK_SHLIBS d12159 1 a12160 1 CHECK_SHLIBS_SUPPORTED d12163 1 a12164 1 CHECK_SSP d12167 1 a12168 1 CHECK_SSP_SUPPORTED d12171 1 a12172 1 CHECK_STRIPPED_SKIP d12175 1 a12176 1 CHECK_WRKREF_EXTRA_DIRS d12179 1 a12180 1 CLAMAV_DBDIR d12183 1 a12184 1 CLAMAV_USER d12187 1 a12188 1 CLEANDEPENDS d12191 1 a12192 1 CMAKE_INSTALL_NAME_DIR d12195 1 a12196 1 CMAKE_MODULE_PATH_OVERRIDE d12199 1 a12200 1 CMAKE_PREFIX_PATH d12203 1 a12204 1 COMPILER_RPATH_FLAG d12207 1 a12208 1 CONFIGURE_ARGS d12211 1 a12212 1 CONFIGURE_ENV d12215 1 a12216 1 CONFIGURE_HAS_INFODIR d12219 1 a12220 1 CONFIGURE_SCRIPT d12223 1 a12224 1 CONFIG_SHELL_FLAGS d12227 1 a12228 1 CONF_FILES_MODE d12231 1 a12232 1 CONSERVER_DEFAULTHOST d12235 1 a12236 1 CP d12239 1 a12240 1 CPE_EDITION d12243 1 a12244 1 CPE_OTHER d12247 1 a12248 1 CPE_PRODUCT d12251 1 a12252 1 CPE_TARGET_HW d12255 1 a12256 1 CPE_UPDATE d12259 1 a12260 1 CPE_VENDOR d12263 1 a12264 1 CPP d12267 1 a12268 1 CREATE_WRKDIR_SYMLINK d12271 1 a12272 1 CTFCONVERT d12275 1 a12276 1 CTF_SUPPORTED d12279 1 a12280 1 CUPS_GROUP d12283 1 a12284 1 CUPS_USER d12287 1 a12288 1 CURSES_TYPE d12291 1 a12292 1 CYRUS_GROUP d12295 1 a12296 1 CYRUS_USER d12299 1 a12300 1 DAEMONTOOLS_LOG_USER d12303 1 a12304 1 DARWIN_REQUIRES_FILTER d12307 1 a12308 1 DBUS_USER d12311 1 a12312 1 DEFANG_USER d12315 1 a12316 1 DEFAULT_DISTFILES d12319 1 a12320 1 DEFAULT_SERIAL_DEVICE d12323 1 a12324 1 DEINSTALLDEPENDS d12327 1 a12328 1 DEINSTALL_TEMPLATES d12331 1 a12332 1 DELAYED_WARNING_MSG d12335 1 a12336 1 DEPENDS_TARGET d12339 1 a12340 1 DESTDIR d12343 1 a12344 1 DIALER_GROUP d12347 1 a12348 1 DISTDIR d12351 1 a12352 1 DISTINFO_FILE d12355 1 a12356 1 DIST_PATH d12359 1 a12360 1 DJBDNS_AXFR_USER d12363 1 a12364 1 DJBDNS_DJBDNS_GROUP d12367 1 a12368 1 DJBDNS_RBL_USER d12371 1 a12372 1 DLOPEN_REQUIRE_PTHREADS d12375 1 a12376 1 DL_CFLAGS d12379 1 a12380 1 DL_LIBS d12383 1 a12384 1 DOCOWN d12387 1 a12388 1 DQCACHE_GROUP d12391 1 a12392 1 DT_LAYOUT d12395 1 a12396 1 DYNAMIC_SITES_SCRIPT d12399 1 d12401 2 d12404 1 a12406 1 ELK_GUI d12408 1 a12410 1 EMULDIR d12412 1 a12414 1 EMULSUBDIRSLASH d12416 1 a12418 1 EMUL_DISTRO d12420 1 a12422 1 EMUL_IS_NATIVE d12424 1 a12426 1 EMUL_OPSYS d12428 1 a12430 1 EMUL_PLATFORM d12432 1 a12434 1 EMUL_PREFER d12436 1 a12438 1 EMUL_TYPE d12440 1 a12442 1 EXIM_GROUP d12444 1 a12446 1 EXPORT_SYMBOLS_LDFLAGS d12448 1 a12450 1 EXTRACT_CMD d12452 1 a12454 1 EXTRACT_DIR d12456 1 a12458 1 EXTRACT_ENV d12460 1 a12462 1 EXTRACT_OPTS d12464 1 a12466 1 EXTRACT_USING d12468 1 a12470 1 FAILOVER_FETCH d12472 1 a12474 1 FAKE_NCURSES d12476 1 a12478 1 FAM_ACCEPTED d12480 1 a12482 1 FAM_SERVER d12484 1 a12486 1 FEATURE_CPPFLAGS d12488 1 a12490 1 FEATURE_LIBS d12492 1 a12494 1 FETCH_BEFORE_ARGS d12496 1 a12498 1 FETCH_OUTPUT_ARGS d12500 1 a12502 1 FETCH_RESUME_ARGS d12504 1 a12506 1 FETCH_USE_IPV4_ONLY d12508 1 a12510 1 FILES_SUBST d12512 1 a12514 1 FIX_SYSTEM_HEADERS d12516 1 a12518 1 FONTS_VERBOSE d12520 1 a12522 1 FOX_USE_XUNICODE d12524 1 a12526 1 FREEWNN_USER d12528 1 a12530 1 FTP_PKG_URL_HOST d12532 1 a12534 1 GAMEDATA_PERMS d12536 1 a12538 1 GAMEDIR_PERMS d12540 1 a12542 1 GAMEMODE d12544 1 a12546 1 GAMES_GROUP d12548 1 a12550 1 GCC d12552 1 a12554 1 GCC_REQD d12556 1 a12558 1 GEM_BUILD d12560 1 a12562 1 GEM_CLEANBUILD_EXTENSIONS d12564 1 a12566 1 GEM_EXTSDIR d12568 1 a12570 1 GEM_KEEPBUILD d12572 1 a12574 1 GEM_NAME d12576 1 a12578 1 GEM_PLUGINSDIR d12580 1 a12582 1 GENERATE_PLIST d12584 1 a12586 1 GHOSTSCRIPT_REQD d12588 1 a12590 1 GITHUB_RELEASE d12592 1 a12594 1 GITHUB_TAG d12596 1 a12598 1 GITLAB_PROJECT d12600 1 a12602 1 GITLAB_SUBMODULES d12604 1 a12606 1 GITLAB_TYPE d12608 1 a12610 1 GNU_CONFIGURE d12612 1 a12614 1 GNU_CONFIGURE_MANDIR d12616 1 a12618 1 GNU_CONFIGURE_STRICT d12620 1 a12622 1 GO_BUILD_PATTERN d12624 1 a12626 1 GO_DIST_BASE d12628 1 a12630 1 GO_MODULE_FILES d12632 1 a12634 1 GROUP_SPECIFIC_PKGS d12636 1 a12638 1 GRUB_PRESET_COMMAND d12640 1 a12642 1 GZIP d12644 1 a12646 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12648 1 a12650 1 HASKELL_ENABLE_SHARED_LIBRARY d12652 1 a12654 1 HASKELL_OPTIMIZATION_LEVEL d12656 1 a12658 1 HASKELL_UNRESTRICT_DEPENDENCIES d12660 1 a12662 1 HOMEPAGE d12664 1 a12666 1 HOST_SPECIFIC_PKGS d12668 1 a12670 1 HOWL_USER d12672 1 a12674 1 ICECAST_CHROOTDIR d12676 1 a12678 1 IDOBASE d12680 1 a12682 1 IGNORE_INFO_DIRS d12684 1 a12686 1 IMAKE d12688 1 a12690 1 IMAKE_MAKE d12692 1 a12694 1 IMAP_UW_CCLIENT_MBOX_FMT d12696 1 a12698 1 INCOMPAT_CURSES d12700 1 a12702 1 INFO_FILES d12704 1 a12706 1 INIT_SYSTEM d12708 1 a12710 1 INN_GROUP d12712 1 a12714 1 INSTALLATION_DIRS d12716 1 a12718 1 INSTALL_ENV d12720 1 a12722 1 INSTALL_SRC d12724 1 a12726 1 INSTALL_UNSTRIPPED d12728 1 a12730 1 IRCD_HYBRID_IRC_USER d12732 1 a12734 1 IRCD_HYBRID_NICLEN d12736 1 a12738 1 IRCD_HYBRID_SYSLOG_FACILITY d12740 1 a12742 1 IRIX d12744 1 a12746 1 JABBERD_GROUP d12748 1 a12750 1 JABBERD_PIDDIR d12752 1 a12754 1 JABBERD_USER d12756 1 a12758 1 JAVA_CLASSPATH d12760 1 a12762 1 JAVA_LD_LIBRARY_PATH d12764 1 a12766 1 JAVA_UNLIMIT d12768 1 a12770 1 JPEG_ACCEPTED d12772 1 a12774 1 KERBEROS d12776 1 a12778 1 KJS_USE_PCRE d12780 1 a12782 1 KNEWS_DOMAIN_NAME d12784 1 a12786 1 KRB5_DEFAULT d12788 1 a12790 1 LAPACKE_LIBS d12792 1 a12794 1 LAPACK_LIBS d12796 1 a12798 1 LATEX2HTML_ICONPATH d12800 1 a12802 1 LDCONFIG_REMOVE_CMD d12804 1 a12806 1 LEAFNODE_DATA_DIR d12808 1 a12810 1 LEAFNODE_USER d12812 1 a12814 1 LIBDVDCSS_MASTER_SITES d12816 1 a12818 1 LIBTOOL d12820 1 a12822 1 LIBTOOL_M4_OVERRIDE d12824 1 a12826 1 LICENSE d12828 1 a12830 1 LINK_RPATH_FLAG d12832 1 a12834 1 LOCALBASE d12836 1 a12838 1 LOCALPATCHES d12840 1 a12842 1 LOVE_GAME d12844 1 a12846 1 LP32PLATFORMS d12848 1 a12850 1 LUA_BUSTED_ARGS d12852 1 a12854 1 LUA_COMPILER d12856 1 a12858 1 LUA_EXAMPLESDIR d12860 1 a12862 1 LUA_INTERPRETER d12864 1 a12866 1 LUA_LINKER_MAGIC d12868 1 a12870 1 LUA_SELF_CONFLICT d12872 1 a12874 1 LUA_VERSIONS_ACCEPTED d12876 1 a12878 1 LUA_VERSION_DEFAULT d12880 1 a12882 1 Lua d12884 1 a12886 1 MAILAGENT_DOMAIN d12888 1 a12890 1 MAILAGENT_FQDN d12892 1 a12894 1 MAJORDOMO_HOMEDIR d12896 1 a12898 1 MAKE_DIRS d12900 1 a12902 1 MAKE_ENV d12904 1 a12906 1 MAKE_FLAGS d12908 1 a12910 1 MAKE_JOBS_SAFE d12912 1 a12914 1 MANCOMPRESSED_IF_MANZ d12916 1 d12919 1 a12919 1 MANZ d12996 1 a12996 1 MYSQL_VERSIONS_ALL a12998 1 MYSQL_VERSION_DEFAULT d13000 1 a13002 1 NAGIOSDIR d13004 1 a13006 1 NAGIOS_USER d13008 1 a13010 1 NATIVE_APPEND_ELF d13012 1 a13014 1 NATIVE_MACHINE_PLATFORM d13016 1 a13018 1 NBPAX_PROGRAM_PREFIX d13020 1 a13022 1 NMH_EDITOR d13024 1 a13026 1 NMH_PAGER d13028 1 a13030 1 NODE_VERSIONS_INCOMPATIBLE d13032 1 a13034 1 NODE_VERSION_REQD d13036 1 a13038 1 NOTE d13040 1 a13042 1 NOT_PAX_ASLR_SAFE d13044 1 a13046 1 NO_BUILD d13048 1 a13050 1 NO_CONFIGURE d13052 1 a13054 1 NS_PREFERRED d13056 1 a13058 1 NULLMAILER_USER d13060 1 a13062 1 OBJMACHINE d13064 1 a13066 1 OCAML_FINDLIB_REGISTER d13068 1 a13070 1 OCAML_SITELIBDIR d13072 1 a13074 1 ONLY_FOR_COMPILER d13076 1 a13078 1 OPENSSH_CHROOT d13080 1 a13082 1 OPENSSH_USER d13084 1 a13086 1 OPSYS_EMULDIR d13088 1 a13090 1 OS a13091 2 a13092 1 OSX_TOLERATE_SDK_SKEW d14052 3 d14056 1 a14058 1 USE_CURSES d14060 1 @ 1.355 log @doc/pkgsrc.*: regen @ text @d2161 8 a2168 7

    This will build and install your package (if not already done), and then build a binary package from what was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a gzipped tar file. See Section C.2, “Packaging figlet” for a continuation of the above misc/figlet example.

    a8613 18

    To express a general requirement on a specific C or C++ version, normally only GCC_REQD needs to be set. For example, GCC 7 includes support for C++17, so if the package uses C++17 it should specify:

    GCC_REQD+=	7
    

    Language variants like c++11 for USE_LANGUAGES should only be specified if the package does not explicitly set -std=... when compiling (i.e. the package assumes the compiler defaults to C++11 or some other standard). This is usually a bug in the upstream build system.

    GCC version 5 includes support for C++14, while GCC 4.7 includes more-or-less complete support for C++11. For more information, consult GCC's own documentation on programming language support.

    a11885 1 ALSA_PC d11887 1 a11889 1 AMANDA_TMP d11891 1 a11893 1 AMANDA_VAR d11895 1 a11897 1 APACHE_MODULE_NAME d11899 1 a11901 1 APACHE_MODULE_SRCDIR d11903 1 a11905 1 APACHE_SUEXEC_CONFIGURE_ARGS d11907 1 a11909 1 APACHE_USER d11911 1 a11913 1 APPEND_ELF d11915 1 a11917 1 AUDIT_PACKAGES_FLAGS d11919 1 a11921 1 AUTOMAKE_OVERRIDE d11923 1 a11925 1 AUTO_MKDIRS d11927 1 a11929 1 BDBBASE d11931 1 a11933 1 BDB_DEFAULT d11935 1 a11937 1 BDB_TYPE d11939 1 a11941 1 BINCIMAP_USER d11943 1 a11945 1 BIND_GROUP d11947 1 a11949 1 BINOWN d11951 1 a11953 1 BIN_INSTALL_FLAGS d11955 1 a11957 1 BLAS d11959 1 a11961 1 BLAS_C_INTERFACE d11963 1 a11965 1 BLAS_INDEX64 d11967 1 a11969 1 BLAS_PC d11971 1 a11973 1 BOOTSTRAP_DEPENDS d11975 1 a11977 1 BROKEN_EXCEPT_ON_PLATFORM d11979 1 a11981 1 BSDSRCDIR d11983 1 a11985 1 BSD_MAKE_ENV d11987 1 a11989 1 BUILDLINK_AUTO_VARS d11991 1 a11993 1 BUILDLINK_CONTENTS_FILTER a11994 3 BUILDLINK_DEPMETHOD a12089 1 CHECKOUT_DATE d12091 1 a12093 1 CHECK_FAKEHOME d12095 1 a12097 1 CHECK_FILES_SKIP d12099 1 a12101 1 CHECK_HEADERS d12103 1 a12105 1 CHECK_INTERPRETER d12107 1 a12109 1 CHECK_PERMS d12111 1 a12113 1 CHECK_PERMS_SKIP d12115 1 a12117 1 CHECK_PIE_SKIP d12119 1 a12121 1 CHECK_PORTABILITY d12123 1 a12125 1 CHECK_PORTABILITY_SKIP d12127 1 a12129 1 CHECK_RELRO_SKIP d12131 1 a12133 1 CHECK_SHLIBS d12135 1 a12137 1 CHECK_SHLIBS_SUPPORTED d12139 1 a12141 1 CHECK_SSP d12143 1 a12145 1 CHECK_SSP_SUPPORTED d12147 1 a12149 1 CHECK_STRIPPED_SKIP d12151 1 a12153 1 CHECK_WRKREF_EXTRA_DIRS d12155 1 a12157 1 CLAMAV_DBDIR d12159 1 a12161 1 CLAMAV_USER d12163 1 a12165 1 CLEANDEPENDS d12167 1 a12169 1 CMAKE_INSTALL_NAME_DIR d12171 1 a12173 1 CMAKE_MODULE_PATH_OVERRIDE d12175 1 a12177 1 CMAKE_PREFIX_PATH a12178 11 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12265 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12267 1 a12269 1 CYRUS_GROUP d12271 1 a12273 1 CYRUS_USER d12275 1 a12277 1 DAEMONTOOLS_LOG_USER d12279 1 a12281 1 DARWIN_REQUIRES_FILTER d12283 1 a12285 1 DBUS_USER d12287 1 a12289 1 DEFANG_USER d12291 1 a12293 1 DEFAULT_DISTFILES d12295 1 a12297 1 DEFAULT_SERIAL_DEVICE d12299 1 a12301 1 DEINSTALLDEPENDS d12303 1 a12305 1 DEINSTALL_TEMPLATES d12307 1 a12309 1 DELAYED_WARNING_MSG d12311 1 a12313 1 DEPENDS_TARGET d12315 1 a12317 1 DESTDIR d12319 1 a12321 1 DIALER_GROUP d12323 1 a12325 1 DISTDIR d12327 1 a12329 1 DISTINFO_FILE d12331 1 a12333 1 DIST_PATH d12335 1 a12337 1 DJBDNS_AXFR_USER d12339 1 a12341 1 DJBDNS_DJBDNS_GROUP d12343 1 a12345 1 DJBDNS_RBL_USER d12347 1 a12349 1 DLOPEN_REQUIRE_PTHREADS d12351 1 a12353 1 DL_CFLAGS d12355 1 a12357 1 DL_LIBS d12359 1 a12361 1 DOCOWN d12363 1 a12365 1 DQCACHE_GROUP d12367 1 a12369 1 DT_LAYOUT d12371 1 a12373 1 DYNAMIC_SITES_SCRIPT d12375 1 a12377 1 ECHO_N d12379 1 a12381 1 EMACS_TYPE d12383 1 a12385 1 EMULSUBDIR d12387 1 a12389 1 EMUL_ARCH d12391 1 a12393 1 EMUL_EXEC_FMT d12395 1 a12397 1 EMUL_MODULES d12399 1 a12401 1 EMUL_PKG_FMT d12403 1 a12405 1 EMUL_PLATFORMS d12407 1 a12409 1 EMUL_REQD d12411 1 a12413 1 ERROR_MSG d12415 1 a12417 1 EXIM_USER d12419 1 a12421 1 EXTRACTOR d12423 1 a12425 1 EXTRACT_CMD_DEFAULT d12427 1 a12429 1 EXTRACT_ELEMENTS d12431 1 a12433 1 EXTRACT_ONLY d12435 1 a12437 1 EXTRACT_SUFX d12439 1 a12441 1 FAIL d12443 1 a12445 1 FAIL_MSG d12447 1 a12449 1 FAM d12451 1 a12453 1 FAM_DEFAULT d12455 1 a12457 1 FCPATH d12459 1 a12461 1 FEATURE_LDFLAGS d12463 1 a12465 1 FETCH_AFTER_ARGS d12467 1 a12469 1 FETCH_CMD d12471 1 a12473 1 FETCH_PROXY d12475 1 a12477 1 FETCH_TIMEOUT d12479 1 a12481 1 FETCH_USING d12483 1 a12485 1 FILES_SUBST_SED a12486 3 FONTDIR a12493 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d12579 1 a12579 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG a12581 1 GNU d12583 1 a12585 1 GNU_CONFIGURE_INFODIR d12587 1 a12589 1 GNU_CONFIGURE_QUIET d12591 1 a12593 1 GODEP_REDIRECTS d12595 1 a12597 1 GO_DEPS d12599 1 a12601 1 GO_EXTRA_MOD_DIRS d12603 1 a12605 1 GO_SRCPATH d12607 1 a12609 1 GRUB_NETWORK_CARDS d12611 1 a12613 1 GRUB_SCAN_ARGS a12614 3 HASKELL_COMPILER a12633 5 HG_REPO HG_REPOSITORIES HG_TAG d12635 1 a12637 1 HOST_PKGTOOLS_ARGS d12639 1 a12641 1 HOWL_GROUP d12643 1 a12645 1 ICCBASE d12647 1 a12649 1 ICON_THEMES d12651 1 a12653 1 IGNORE_CCACHE d12655 1 a12657 1 IGNORE_INTERACTIVE_FETCH d12659 1 a12661 1 IMAKEOPTS d12663 1 a12665 1 IMAKE_MANINSTALL d12667 1 a12669 1 IMDICTDIR d12671 1 a12673 1 INFO_DIR a12674 3 INFO_FILES_VERBOSE a12726 4 JAVA_APP_PATH JAVA_APP_TARGETS d12803 1 a12803 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED a12805 1 LINUX_LOCALES d12807 1 a12809 1 LOCALBASE_LOCKTYPE d12811 1 a12813 1 LOVE_DATA d12815 1 a12817 1 LOVE_VERSION d12819 1 a12821 1 LP64PLATFORMS d12823 1 a12825 1 LUA_CDIR d12827 1 a12829 1 LUA_DOCDIR d12831 1 a12833 1 LUA_INCDIR d12835 1 a12837 1 LUA_LDIR d12839 1 a12841 1 LUA_PKGPREFIX d12843 1 a12845 1 LUA_USE_BUSTED d12847 1 a12849 1 LUA_VERSIONS_INCOMPATIBLE d12851 1 a12853 1 LUA_VERSION_REQD d12855 1 a12857 1 MACHINE_PLATFORM d12859 1 a12861 1 MAILAGENT_EMAIL d12863 1 a12865 1 MAILAGENT_ORGANIZATION a12866 3 MAJOR_OS_VERSION d12951 1 a12951 1 MUST a12953 1 MV d12955 1 a12957 1 MYSQL_DATADIR d12959 1 a12961 1 MYSQL_GROUP d12963 1 a12965 1 MYSQL_VERSION d12967 1 a12969 1 MYSQL_VERSIONS_ALL d12971 1 a12973 1 NAGIOSCMD_GROUP d12975 1 a12977 1 NAGIOS_GROUP d12979 1 a12981 1 NATIVE_APPEND_ABI d12983 1 a12985 1 NATIVE_EXEC_FMT d12987 1 a12989 1 NATIVE_OBJECT_FMT d12991 1 a12993 1 NETBSD_LOGIN_NAME d12995 1 a12997 1 NMH_MTA d12999 1 a13001 1 NODE_VERSIONS_ACCEPTED d13003 1 a13005 1 NODE_VERSION_DEFAULT d13007 1 a13009 1 NOLOGIN d13011 1 a13013 1 NOT_FOR_PLATFORM d13015 1 a13017 1 NOT_PAX_MPROTECT_SAFE d13019 1 a13021 1 NO_CHECKSUM d13023 1 a13025 1 NO_SKIP d13027 1 a13029 1 NULLMAILER_GROUP d13031 1 a13033 1 OBJHOSTNAME d13035 1 a13037 1 OCAML_FINDLIB_DIRS d13039 1 a13041 1 OCAML_FINDLIB_REGISTER_VERBOSE d13043 1 a13045 1 OMF d13047 1 a13049 1 ONLY_FOR_PLATFORM d13051 1 a13053 1 OPENSSH_GROUP d13055 1 a13057 1 OPSYS d13059 1 a13061 1 OPSYS_VERSION d13063 1 a13065 1 OSS_TYPE a13066 2 a13067 1 OS_HAVE_ALSA a13069 1 OS_HAVE_RCD d13071 1 a13073 1 OS_VERSION d13075 1 a13077 1 OVERRIDE_DIRDEPTH a13078 2 a13079 1 OVERRIDE_ROCKSPEC a13126 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13525 4 RCD_DIR RCD_ORDER a13537 1 RCD_SUBR d13539 1 a13541 1 READLINE_DEFAULT d13543 1 a13545 1 REAL_ROOT_GROUP d13547 1 a13549 1 RECURSIVE_MAKE d13551 1 a13553 1 RELRO_SUPPORTED d13555 1 a13557 1 REPLACE_BASH d13559 1 a13561 1 REPLACE_KSH d13563 1 a13565 1 REPLACE_NODEJS d13567 1 a13569 1 REPLACE_PERL d13571 1 a13573 1 REPLACE_PHP d13575 1 a13577 1 REPLACE_QORE d13579 1 a13581 1 REPLACE_RUBY d13583 1 a13585 1 REPLACE_RUBY_PAT d13587 1 a13589 1 REPLACE_TEXLUA d13591 1 a13593 1 REQD_DIRS d13595 1 a13597 1 REQD_FILES d13599 1 a13601 1 REQD_FILES_PERMS d13603 1 a13605 1 RESOLV_LDFLAGS a13606 2 a13607 1 ROCKSPEC_NAME a13609 1 ROCKSPEC_SPECFILE d13611 1 a13613 1 ROOT_GROUP d13615 1 a13617 1 RPCGEN d13619 1 a13621 1 RPM2PKG_PLIST d13623 1 a13625 1 RPM2PKG_STAGE d13627 1 a13629 1 RPM2PKG_SUBPREFIX d13631 1 a13633 1 RPMIGNOREPATH d13635 1 a13637 1 RSSH_CVS_PATH d13639 1 a13641 1 RSSH_RSYNC_PATH d13643 1 a13645 1 RSSH_SFTP_SERVER_PATH d13647 1 a13649 1 RUBYGEM d13651 1 a13653 1 RUBYGEM_NAME d13655 1 a13657 1 RUBYGEM_USE_MANPAGES d13659 1 a13661 1 RUBY_ABI_VERSION d13663 1 a13665 1 RUBY_ARCHINC d13667 1 a13669 1 RUBY_BASE d13671 1 a13673 1 RUBY_BUILD_DOCUMENT d13675 1 a13677 1 RUBY_DOC d13679 1 a13681 1 RUBY_EG d13683 1 a13685 1 RUBY_EXTCONF d13687 1 a13689 1 RUBY_EXTCONF_DEBUG d13691 1 a13693 1 RUBY_GEM_ARCH d13695 1 a13697 1 RUBY_INC d13699 1 a13701 1 RUBY_LIB_BASE d13703 1 a13705 1 RUBY_NOVERSION d13707 1 a13709 1 RUBY_RAILS d13711 1 a13713 1 RUBY_RAILS60_VERSION d13715 1 a13717 1 RUBY_RAILS70_VERSION d13719 1 a13721 1 RUBY_RAILS_DEFAULT d13723 1 a13725 1 RUBY_RAILS_STRICT_DEP d13727 1 a13729 1 RUBY_SETUP d13731 1 a13733 1 RUBY_SHLIBALIAS d13735 1 a13737 1 RUBY_SIMPLE_INSTALL d13739 1 a13741 1 RUBY_SITELIB d13743 1 a13745 1 RUBY_SITERIDIR d13747 1 a13749 1 RUBY_SRCDIR d13751 1 a13753 1 RUBY_SUFFIX d13755 1 a13757 1 RUBY_USE_PTHREAD d13759 1 a13761 1 RUBY_VENDORLIB d13763 1 a13765 1 RUBY_VER d13767 1 a13769 1 RUBY_VERSIONS_ACCEPTED d13771 1 a13773 1 RUBY_VERSION_DEFAULT d13775 1 a13777 1 RUBY_VER_DIR d13779 1 a13781 1 RUN_LDCONFIG d13783 1 a13785 1 SCO d13787 1 a13789 1 SCREWS_USER d13791 1 a13793 1 SCROLLKEEPER_DATADIR d13795 1 a13797 1 SCROLLKEEPER_UPDATEDB d13799 1 a13801 1 SDL12_TYPE d13803 1 a13805 1 SETGIDGAME d13807 1 a13809 1 SETUID_ROOT_PERMS a13810 2 a13811 1 SHORTNAME a13897 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION d13983 1 a13983 1 TTF_FONTDIR a13985 1 TTF_FONTS_DIR d13987 1 a13989 1 UAC_REQD_EXECS d13991 1 a13993 1 UCSPI_SSL_USER d13995 1 a13997 1 UNPRIVILEGED d13999 1 a14001 1 UNPRIVILEGED_GROUPS d14003 1 a14005 1 UNWRAP_FILES d14007 1 a14009 1 UPDATE_GEMSPEC d14011 1 a14013 1 URI d14015 1 a14017 1 USERPPP_GROUP d14019 1 a14021 1 USE_ABI_DEPENDS d14023 1 a14025 1 USE_BSD_MAKEFILE d14027 1 a14029 1 USE_CROSS_COMPILE d14031 1 a14033 1 USE_CWRAPPERS d14035 1 a14037 1 USE_FEATURES d14039 1 a14041 1 USE_GCC_RUNTIME d14043 1 a14045 1 USE_JAVA d14047 1 a14049 1 USE_LANGUAGES d14051 1 a14053 1 USE_NATIVE_GCC d14055 1 a14057 1 USE_PKGSRC_GCC d14059 1 a14061 1 USE_PKGTASKS d14063 1 a14065 1 USE_RUBY_EXTCONF d14067 1 a14069 1 USE_RUBY_SETUP d14071 1 a14073 1 USE_TOOLS d14075 1 a14077 1 UUCP_USER d14079 1 a14081 1 VARNAME d14083 1 a14085 1 WARNING_MSG d14087 1 a14089 1 WCALC_CGIPATH d14091 1 a14093 1 WCALC_HTMLPATH d14095 1 a14097 1 WRAPPER_CC d14099 1 a14101 1 WRKDIR d14103 1 a14105 1 WRKDIR_LOCKTYPE d14107 1 a14109 1 WRKOBJDIR d14111 1 a14113 1 X10_PORT d14115 1 a14117 1 X11BASE d14119 1 a14121 1 X11_TYPE d14123 1 a14125 1 X509_KEY d14127 1 a14129 1 XLOCK_DEFAULT_MODE d14131 1 a14133 1 XMKMF_FLAGS a14134 3 XXXX d14203 4 d14283 1 a14283 1 cvs a14285 1 debug d14287 1 a14289 1 declare d14291 1 a14293 1 depend d14295 1 a14297 1 depends d14299 1 a14301 1 depends-fetch d14303 1 a14305 1 describe d14307 1 a14309 1 disable d14311 1 a14313 1 distinfo d14315 1 a14317 1 dlopen d14319 1 a14321 1 do-clean d14323 1 a14325 1 do-configure-post-hook d14327 1 a14329 1 do-fetch d14331 1 a14333 1 emul d14335 1 a14337 1 emul-fetch d14339 1 a14341 1 emulator a14342 2 a14343 1 endif a14381 1 fossil d14383 1 a14385 1 fts d14387 1 a14389 1 fts_open d14391 1 a14393 1 fts_set d14395 1 a14397 1 gethostbyaddr d14399 1 a14401 1 gethostbyname2 d14403 1 a14405 1 getprogname d14407 1 a14409 1 getservbyport a14410 2 a14411 1 git a14426 4 go-modules go-modules.mk a14437 1 hg d14439 1 a14509 1 mercurial d14511 1 a14513 1 meta-package d14515 1 a14517 1 mit-krb5 d14519 1 a14521 1 mkl d14523 1 a14525 1 move d14527 1 a14529 1 mprotect d14531 1 d14595 1 a14595 1 platform d14598 1 a14599 1 post-extract d14602 1 a14603 1 post-wrapper d14606 1 a14607 1 pre-configure-checks-hook d14610 1 a14611 1 pre-fetch d14614 1 a14615 1 print-plist d14618 1 a14619 1 privileged-install-hook d14622 1 a14623 1 python d14626 1 a14627 1 readme-all d14630 1 a14631 1 recv d14634 1 a14635 1 regcomp d14638 1 a14639 1 release-lock d14642 1 a14643 1 remove d14646 1 a14647 1 rename d14650 1 a14651 1 reorder d14654 1 a14655 1 replace_interpreter d14658 1 a14659 1 resolv d14662 1 a14663 1 ruby d14666 1 a14667 1 sendfile d14670 1 a14671 1 setenv d14674 1 a14675 1 setprogname d14678 1 a14679 1 sh d14682 1 a14683 1 show d14686 1 a14687 1 show-build-defs d14690 1 a14691 1 show-depends-dirs d14694 1 a14695 1 show-depends-recursive d14698 1 a14699 1 show-distfiles d14702 1 a14703 1 show-subdir-var d14706 1 a14707 1 show-var d14710 1 a14711 1 snprintf d14714 1 a14715 1 ssp d14718 1 a14719 1 stage-install d14722 1 a14723 1 strict d14726 1 a14727 1 strndup d14730 1 a14731 1 strsep d14734 1 a14735 1 substitutions d14738 1 a14738 1 subversion a14745 1 svn d14747 1 a14749 1 test d14751 1 a14753 1 tex d14755 1 a14757 1 tmp d14759 1 a14761 1 tool d14763 1 a14765 1 tools-libtool-m4-override d14767 1 a14769 1 type d14771 1 a14773 1 undefined d14775 1 a14777 1 unlimit d14779 1 a14781 1 unprivileged-install-hook d14783 1 a14785 1 update d14787 1 a14789 1 upload d14791 1 a14793 1 use_tools d14795 1 a14797 1 utimes d14799 1 a14801 1 verbose d14803 1 a14805 1 warn d14807 1 a14809 1 warnings d14811 1 a14813 1 wattr_off d14815 1 a14817 1 work a14818 2 a14819 1   @ 1.354 log @doc/pkgsrc.*: regen @ text @d106 7 a112 6
    6.3. Variables affecting the installation process
    6.4. Selecting and configuring the compiler
    6.4.1. Selecting the compiler
    6.4.2. Additional flags to the compiler (CFLAGS)
    6.4.3. Additional flags to the linker (LDFLAGS)
    d114 2 a115 2
    6.5. Developer/advanced settings
    6.6. Selecting Build Options
    d272 1 a272 4
    18.3.1. Anatomy of a builtin.mk file
    18.3.2. Global preferences for native or pkgsrc software
    d884 7 a890 6
    6.3. Variables affecting the installation process
    6.4. Selecting and configuring the compiler
    6.4.1. Selecting the compiler
    6.4.2. Additional flags to the compiler (CFLAGS)
    6.4.3. Additional flags to the linker (LDFLAGS)
    d892 2 a893 2
    6.5. Developer/advanced settings
    6.6. Selecting Build Options
    d1682 7 a1688 6
    6.3. Variables affecting the installation process
    6.4. Selecting and configuring the compiler
    6.4.1. Selecting the compiler
    6.4.2. Additional flags to the compiler (CFLAGS)
    6.4.3. Additional flags to the linker (LDFLAGS)
    d1690 2 a1691 2
    6.5. Developer/advanced settings
    6.6. Selecting Build Options
    d1791 70 a1860 1 6.3. Variables affecting the installation process d1928 1 a1928 1 6.4. Selecting and configuring the compiler d1931 1 a1931 1 6.4.1. Selecting the compiler d1998 1 a1998 1 6.4.2. Additional flags to the compiler (CFLAGS) d2014 1 a2014 1 6.4.3. Additional flags to the linker (LDFLAGS) d2032 1 a2032 1 6.5. Developer/advanced settings d2066 1 a2066 1 6.6. Selecting Build Options d3313 1 a3313 4
    18.3.1. Anatomy of a builtin.mk file
    18.3.2. Global preferences for native or pkgsrc software
    d6216 1 a6216 4
    18.3.1. Anatomy of a builtin.mk file
    18.3.2. Global preferences for native or pkgsrc software
    a6664 65

    18.3.2. Global preferences for native or pkgsrc software

    When building packages, it's possible to choose whether to set a global preference for using either the built-in (native) version or the pkgsrc version of software to satisfy a dependency. This is controlled by setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either yes, no, or a list of packages. PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

    PREFER_PKGSRC=  yes
    PREFER_NATIVE=  getopt skey tcp_wrappers
    

    A package must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    PREFER_PKGSRC and PREFER_NATIVE should be set during bootstrap to ensure that the bootstrap process does not use inapropriate native tools as dependencies for core packages.

    # ./bootstrap --prefer-pkgsrc yes --prefer-native openssl
    

    Switching between settings globally at a later date can introduce complications with dependency resolution. This is caused by packages built with the opposite preference being installed alongside each other. Hence, any changes to these variables after bootstrap will necessitate rebuilding all packages depending on one whose preference has been changed. This is not trivial and should be avoided.

    When using pkgsrc on Linux systems, there is high risk of "leakage", where programs installed by pkgsrc may inadvertently use a command or library not installed by pkgsrc, e.g. those installed by yum or apt. Such foreign dependencies may be installed, removed, or upgraded to a version incompatible with the pkgsrc package at any time, causing pkgsrc packages to subsequently malfunction. Pkgsrc cannot prevent this, as it has no control over other package managers. Another potential problem is that under Redhat Enterprise and related Linux systems, yum packages are only patched and never upgraded, so eventually they may become too outdated for use by pkgsrc. Even intentionally using foreign dependencies, not considered leakage, can lead to these problems, so it is generally discouraged. In order to minimize such problems, PREFER_PKGSRC defaults to "yes" on Linux systems. This ensures that pkgsrc is aware of any changes to dependency packages and can rebuild or upgrade the entire dependency tree as needed. This default can be overridden by setting --prefer-pkgsrc to "no" or a list of packages, or by setting --prefer-native to "yes".

    d11903 1 d11905 2 d11908 1 a11910 1 AMANDA_USER d11912 1 a11914 1 APACHE_GROUP d11916 1 a11918 1 APACHE_MODULE_SRC d11920 1 a11922 1 APACHE_PKG_PREFIX d11924 1 a11926 1 APACHE_SUEXEC_DOCROOT d11928 1 a11930 1 APPEND_ABI d11932 1 a11934 1 ARLA_CACHE d11936 1 a11938 1 AUTOCONF_REQD d11940 1 a11942 1 AUTOMAKE_REQD d11944 1 a11946 1 BDB185_DEFAULT d11948 1 a11950 1 BDB_ACCEPTED d11952 1 a11954 1 BDB_LIBS d11956 1 a11958 1 BINCIMAP_GROUP d11960 1 a11962 1 BIND_DIR d11964 1 a11966 1 BIND_USER d11968 1 a11970 1 BINPKG_SITES d11972 1 a11974 1 BISON_PKGDATADIR d11976 1 a11978 1 BLAS_ACCEPTED d11980 1 a11982 1 BLAS_INCLUDES d11984 1 a11986 1 BLAS_LIBS d11988 1 a11990 1 BLAS_TYPE d11992 1 a11994 1 BROKEN d11996 1 a11998 1 BROKEN_ON_PLATFORM d12000 1 a12002 1 BSDXSRCDIR d12004 1 a12006 1 BUILDLINK_AUTO_DIRS d12008 1 a12010 1 BUILDLINK_CFLAGS d12012 1 d12015 1 a12015 1 BUILDLINK_CPPFLAGS d12111 1 d12113 2 d12116 1 a12118 1 CHECK_FILES d12120 1 a12122 1 CHECK_FILES_STRICT d12124 1 a12126 1 CHECK_HEADERS_SKIP d12128 1 a12130 1 CHECK_INTERPRETER_SKIP d12132 1 a12134 1 CHECK_PERMS_AUTOFIX d12136 1 a12138 1 CHECK_PIE d12140 1 a12142 1 CHECK_PIE_SUPPORTED d12144 1 a12146 1 CHECK_PORTABILITY_EXPERIMENTAL d12148 1 a12150 1 CHECK_RELRO d12152 1 a12154 1 CHECK_RELRO_SUPPORTED d12156 1 a12158 1 CHECK_SHLIBS_SKIP d12160 1 a12162 1 CHECK_SHLIBS_TOXIC d12164 1 a12166 1 CHECK_SSP_SKIP d12168 1 a12170 1 CHECK_STRIPPED d12172 1 a12174 1 CHECK_WRKREF d12176 1 a12178 1 CHECK_WRKREF_SKIP d12180 1 a12182 1 CLAMAV_GROUP d12184 1 a12186 1 CLANGBASE d12188 1 a12190 1 CMAKE_DEPENDENCIES_REWRITE d12192 1 a12194 1 CMAKE_INSTALL_PREFIX d12196 1 a12198 1 CMAKE_PKGSRC_BUILD_FLAGS d12200 9 d12211 1 a12211 1 CMAKE_USE_GNU_INSTALL_DIRS d12299 17 a12316 1 CYRUS_GROUP d12319 1 a12320 1 CYRUS_USER d12323 1 a12324 1 DAEMONTOOLS_LOG_USER d12327 1 a12328 1 DARWIN_REQUIRES_FILTER d12331 1 a12332 1 DBUS_USER d12335 1 a12336 1 DEFANG_USER d12339 1 a12340 1 DEFAULT_DISTFILES d12343 1 a12344 1 DEFAULT_SERIAL_DEVICE d12347 1 a12348 1 DEINSTALLDEPENDS d12351 1 a12352 1 DEINSTALL_TEMPLATES d12355 1 a12356 1 DELAYED_WARNING_MSG d12359 1 a12360 1 DEPENDS_TARGET d12363 1 a12364 1 DESTDIR d12367 1 a12368 1 DIALER_GROUP d12371 1 a12372 1 DISTDIR d12375 1 a12376 1 DISTINFO_FILE d12379 1 a12380 1 DIST_PATH d12383 1 a12384 1 DJBDNS_AXFR_USER d12387 1 a12388 1 DJBDNS_DJBDNS_GROUP d12391 1 a12392 1 DJBDNS_RBL_USER d12395 1 a12396 1 DLOPEN_REQUIRE_PTHREADS d12399 1 a12400 1 DL_CFLAGS d12403 1 a12404 1 DL_LIBS d12407 1 a12408 1 DOCOWN d12411 1 a12412 1 DQCACHE_GROUP d12415 1 a12416 1 DT_LAYOUT d12419 1 a12420 1 DYNAMIC_SITES_SCRIPT d12423 1 a12424 1 ECHO_N d12427 1 a12428 1 EMACS_TYPE d12431 1 a12432 1 EMULSUBDIR d12435 1 a12436 1 EMUL_ARCH d12439 1 a12440 1 EMUL_EXEC_FMT d12443 1 a12444 1 EMUL_MODULES d12447 1 a12448 1 EMUL_PKG_FMT d12451 1 a12452 1 EMUL_PLATFORMS d12455 1 a12456 1 EMUL_REQD d12459 1 a12460 1 ERROR_MSG d12463 1 a12464 1 EXIM_USER d12467 1 a12468 1 EXTRACTOR d12471 1 a12472 1 EXTRACT_CMD_DEFAULT d12475 1 a12476 1 EXTRACT_ELEMENTS d12479 1 a12480 1 EXTRACT_ONLY d12483 1 a12484 1 EXTRACT_SUFX d12487 1 a12488 1 FAIL d12491 1 a12492 1 FAIL_MSG d12495 1 a12496 1 FAM d12499 1 a12500 1 FAM_DEFAULT d12503 1 a12504 1 FCPATH d12507 1 a12508 1 FEATURE_LDFLAGS d12511 1 a12512 1 FETCH_AFTER_ARGS d12515 1 a12516 1 FETCH_CMD d12519 1 a12520 1 FETCH_PROXY d12523 1 d12525 2 d12528 1 a12530 1 FETCH_USE_IPV4_ONLY d12532 1 a12534 1 FILES_SUBST d12536 1 d12539 1 a12539 1 FIX_SYSTEM_HEADERS d12547 8 d12640 15 d12656 1 a12658 1 GNU_CONFIGURE d12660 1 a12662 1 GNU_CONFIGURE_MANDIR d12664 1 a12666 1 GNU_CONFIGURE_STRICT d12668 1 a12670 1 GO_BUILD_PATTERN d12672 1 a12674 1 GO_DIST_BASE d12676 1 a12678 1 GO_MODULE_FILES d12680 1 a12682 1 GROUP_SPECIFIC_PKGS d12684 1 a12686 1 GRUB_PRESET_COMMAND d12688 1 d12691 1 a12691 1 GZIP d12711 5 d12717 2 d12720 1 a12722 1 HOST_SPECIFIC_PKGS d12724 1 a12726 1 HOWL_USER d12728 1 a12730 1 ICECAST_CHROOTDIR d12732 1 a12734 1 IDOBASE d12736 1 a12738 1 IGNORE_INFO_DIRS d12740 1 a12742 1 IMAKE d12744 1 a12746 1 IMAKE_MAKE d12748 1 a12750 1 IMAP_UW_CCLIENT_MBOX_FMT d12752 1 a12754 1 INCOMPAT_CURSES d12756 1 d12759 1 a12759 1 INFO_FILES d12812 4 d12892 7 d12900 1 a12902 1 LOCALBASE d12904 1 a12906 1 LOCALPATCHES d12908 1 a12910 1 LOVE_GAME d12912 1 a12914 1 LP32PLATFORMS d12916 1 a12918 1 LUA_BUSTED_ARGS d12920 1 a12922 1 LUA_COMPILER d12924 1 a12926 1 LUA_EXAMPLESDIR d12928 1 a12930 1 LUA_INTERPRETER d12932 1 a12934 1 LUA_LINKER_MAGIC d12936 1 a12938 1 LUA_SELF_CONFLICT d12940 1 a12942 1 LUA_VERSIONS_ACCEPTED d12944 1 a12946 1 LUA_VERSION_DEFAULT d12948 1 a12950 1 Lua d12952 1 a12954 1 MAILAGENT_DOMAIN d12956 1 a12958 1 MAILAGENT_FQDN d12960 1 d12963 1 a12963 1 MAJORDOMO_HOMEDIR d13048 3 d13052 1 a13054 1 MYSQL_CHARSET d13056 1 a13058 1 MYSQL_EXTRA_CHARSET d13060 1 a13062 1 MYSQL_USER d13064 1 a13066 1 MYSQL_VERSIONS_ACCEPTED d13068 1 a13070 1 MYSQL_VERSION_DEFAULT d13072 1 a13074 1 NAGIOSDIR d13076 1 a13078 1 NAGIOS_USER d13080 1 a13082 1 NATIVE_APPEND_ELF d13084 1 a13086 1 NATIVE_MACHINE_PLATFORM d13088 1 a13090 1 NBPAX_PROGRAM_PREFIX d13092 1 a13094 1 NMH_EDITOR d13096 1 a13098 1 NMH_PAGER d13100 1 a13102 1 NODE_VERSIONS_INCOMPATIBLE d13104 1 a13106 1 NODE_VERSION_REQD d13108 1 a13110 1 NOTE d13112 1 a13114 1 NOT_PAX_ASLR_SAFE d13116 1 a13118 1 NO_BUILD d13120 1 a13122 1 NO_CONFIGURE d13124 1 a13126 1 NS_PREFERRED d13128 1 a13130 1 NULLMAILER_USER d13132 1 a13134 1 OBJMACHINE d13136 1 a13138 1 OCAML_FINDLIB_REGISTER d13140 1 a13142 1 OCAML_SITELIBDIR d13144 1 a13146 1 ONLY_FOR_COMPILER d13148 1 a13150 1 OPENSSH_CHROOT d13152 1 a13154 1 OPENSSH_USER d13156 1 a13158 1 OPSYS_EMULDIR d13160 1 a13162 1 OS d13164 1 a13166 1 OSX d13168 1 d13171 1 d13173 2 d13176 1 a13178 1 OTF_FONTS_DIR d13180 1 a13182 1 OVERRIDE_GEMSPEC d13184 1 d13232 8 d13639 4 d13655 1 d13657 2 d13660 1 a13662 1 READLINE_TYPE d13664 1 a13666 1 REAL_ROOT_USER d13668 1 a13670 1 RELAY_CTRL_DIR d13672 1 a13674 1 REPLACE_AWK d13676 1 a13678 1 REPLACE_CSH d13680 1 a13682 1 REPLACE_LUA d13684 1 a13686 1 REPLACE_OCTAVE d13688 1 a13690 1 REPLACE_PERL6 d13692 1 a13694 1 REPLACE_PYTHON d13696 1 a13698 1 REPLACE_R d13700 1 a13702 1 REPLACE_RUBY_DIRS d13704 1 a13706 1 REPLACE_SH d13708 1 a13710 1 REPLACE_WISH d13712 1 a13714 1 REQD_DIRS_PERMS d13716 1 a13718 1 REQD_FILES_MODE d13720 1 a13722 1 RESOLV_AUTO_VARS d13724 1 a13726 1 RESOLV_LIBS d13728 1 d13731 1 d13733 2 d13736 1 a13738 1 ROOT_USER d13740 1 a13742 1 RPM d13744 1 a13746 1 RPM2PKG_PREFIX d13748 1 a13750 1 RPM2PKG_STRIP d13752 1 a13754 1 RPMFILES d13756 1 a13758 1 RPM_DB_PREFIX d13760 1 a13762 1 RSSH_RDIST_PATH d13764 1 a13766 1 RSSH_SCP_PATH d13768 1 a13770 1 RUBY d13772 1 a13774 1 RUBYGEM_MANPAGES d13776 1 a13778 1 RUBYGEM_OPTIONS d13780 1 a13782 1 RUBYGEM_VERBOSE d13784 1 a13786 1 RUBY_ARCH d13788 1 a13790 1 RUBY_ARCHLIB d13792 1 a13794 1 RUBY_BASERIDIR d13796 1 a13798 1 RUBY_DLEXT d13800 1 a13802 1 RUBY_DYNAMIC_DIRS d13804 1 a13806 1 RUBY_ENCODING_ARG d13808 1 a13810 1 RUBY_EXTCONF_CHECK d13812 1 a13814 1 RUBY_EXTCONF_MAKEFILE d13816 1 a13818 1 RUBY_GEM_BASE d13820 1 a13822 1 RUBY_LIB d13824 1 a13826 1 RUBY_NAME d13828 1 a13830 1 RUBY_PKGPREFIX d13832 1 a13834 1 RUBY_RAILS52_VERSION d13836 1 a13838 1 RUBY_RAILS61_VERSION d13840 1 a13842 1 RUBY_RAILS_ACCEPTED d13844 1 a13846 1 RUBY_RAILS_REQD d13848 1 a13850 1 RUBY_RIDIR d13852 1 a13854 1 RUBY_SHLIB d13856 1 a13858 1 RUBY_SHLIBVER d13860 1 a13862 1 RUBY_SITEARCHLIB d13864 1 a13866 1 RUBY_SITELIB_BASE d13868 1 a13870 1 RUBY_SLEXT d13872 1 a13874 1 RUBY_STATICLIB d13876 1 a13878 1 RUBY_SYSRIDIR d13880 1 a13882 1 RUBY_VENDORARCHLIB d13884 1 a13886 1 RUBY_VENDORLIB_BASE d13888 1 a13890 1 RUBY_VERSION d13892 1 a13894 1 RUBY_VERSIONS_INCOMPATIBLE d13896 1 a13898 1 RUBY_VERSION_REQD d13900 1 a13902 1 RUN d13904 1 a13906 1 RUST_TYPE d13908 1 a13910 1 SCREWS_GROUP d13912 1 a13914 1 SCRIPTS_ENV d13916 1 a13918 1 SCROLLKEEPER_REBUILDDB d13920 1 a13922 1 SDIST_PAWD d13924 1 a13926 1 SERIAL_DEVICES d13928 1 a13930 1 SETGID_GAMES_PERMS d13932 1 a13934 1 SH d13936 1 d14023 8 d14116 3 d14120 1 a14122 1 TYPE d14124 1 a14126 1 UCSPI_SSL_GROUP d14128 1 a14130 1 UNLIMIT_RESOURCES d14132 1 a14134 1 UNPRIVILEGED_GROUP d14136 1 a14138 1 UNPRIVILEGED_USER d14140 1 a14142 1 UNWRAP_PATTERNS d14144 1 a14146 1 UPDATE_TARGET d14148 1 a14150 1 USERGROUP_PHASE d14152 1 a14154 1 USER_SPECIFIC_PKGS d14156 1 a14158 1 USE_APR d14160 1 a14162 1 USE_BUILTIN d14164 1 a14166 1 USE_CURSES d14168 1 a14170 1 USE_DB185 d14172 1 a14174 1 USE_GAMESGROUP d14176 1 a14178 1 USE_IMAKE d14180 1 a14182 1 USE_JAVA2 d14184 1 a14186 1 USE_LIBTOOL d14188 1 a14190 1 USE_NETBSD_REPO d14192 1 a14194 1 USE_PKGSRC_GCC_RUNTIME d14196 1 a14198 1 USE_PKG_ADMIN_DIGEST d14200 1 a14202 1 USE_RUBY_INSTALL d14204 1 a14206 1 USE_RUBY_SETUP_PKG d14208 1 a14210 1 UUCP_GROUP d14212 1 a14214 1 VARBASE d14216 1 a14218 1 VIM_EXTRA_OPTS d14220 1 a14222 1 WCALC_CGIDIR d14224 1 a14226 1 WCALC_HTMLDIR d14228 1 a14230 1 WDM_MANAGERS d14232 1 a14234 1 WRAPPER_REORDER_CMDS d14236 1 a14238 1 WRKDIR_BASENAME d14240 1 a14242 1 WRKLOG d14244 1 a14246 1 WRKSRC d14248 1 a14250 1 X11 d14252 1 a14254 1 X11_PKGSRCDIR d14256 1 a14258 1 X509_CERTIFICATE d14260 1 a14262 1 XAW_TYPE d14264 1 a14266 1 XMKMF d14268 1 d14271 1 a14271 1 XXX d14416 3 d14420 1 a14422 1 declaration d14424 1 a14426 1 defined d14428 1 a14430 1 dependencies d14432 1 a14434 1 depends-checksum d14436 1 a14438 1 deps d14440 1 a14442 1 destdir d14444 1 a14446 1 distclean d14448 1 a14450 1 dl d14452 1 a14454 1 do-buildlink d14456 1 a14458 1 do-configure d14460 1 a14462 1 do-extract d14464 1 a14466 1 do-install d14468 1 a14470 1 emul-distinfo d14472 1 a14474 1 emulation d14476 1 a14478 1 enable d14480 1 d14519 1 d14521 2 d14524 1 a14526 1 fts_close d14528 1 a14530 1 fts_read d14532 1 a14534 1 gcc d14536 1 a14538 1 gethostbyname d14540 1 a14542 1 getopt_long d14544 1 a14546 1 getservbyname d14548 1 a14550 1 getservent d14552 1 d14568 4 d14583 1 d14585 2 d14588 1 a14590 1 indirect d14592 1 a14594 1 interp d14596 1 a14598 1 intl d14600 1 a14602 1 ip6 d14604 1 a14606 1 ipv6 d14608 1 a14610 1 kerberos d14612 1 a14614 1 krb5 d14616 1 a14618 1 lapack d14620 1 a14622 1 libintl_bindtextdomain d14624 1 a14626 1 libintl_textdomain d14628 1 a14630 1 libs d14632 1 a14634 1 licence d14636 1 a14638 1 lintl d14640 1 a14642 1 lock d14644 1 a14646 1 lua d14648 1 a14650 1 make d14652 1 d14655 1 a14655 1 memory d14883 1 d14885 2 d14888 1 d14891 1 a14891 1 sunwspro @ 1.353 log @doc/pkgsrc.*: regen @ text @d7166 1 a7166 1 in the next seection, although the combination is rather confusing at d12694 1 a12694 1 INFO_FILES_VERBOSE a12696 1 INFO_MSG d12698 1 a12700 1 INN_DATA_DIR d12702 1 a12704 1 INN_USER d12706 1 a12708 1 INSTALLATION_DIRS_FROM_PLIST d12710 1 a12712 1 INSTALL_SH_OVERRIDE d12714 1 a12716 1 INSTALL_TEMPLATES d12718 1 a12720 1 IRCD_HYBRID_IRC_GROUP d12722 1 a12724 1 IRCD_HYBRID_MAXCONN d12726 1 a12728 1 IRCD_HYBRID_SYSLOG_EVENTS d12730 1 a12732 1 IRCD_HYBRID_TOPICLEN d12734 1 a12736 1 IRRD_USE_PGP d12738 1 a12740 1 JABBERD_LOGDIR d12742 1 a12744 1 JABBERD_SPOOLDIR d12746 1 a12748 1 JAVA_BINPREFIX d12750 1 a12752 1 JAVA_HOME d12754 1 a12756 1 JAVA_NAME d12758 1 a12760 1 JAVA_WRAPPERS d12762 1 a12764 1 JPEG_DEFAULT d12766 1 a12768 1 KERMIT_SUID_UUCP d12770 1 a12772 1 KNEWS_DOMAIN_FILE d12774 1 a12776 1 KRB5_ACCEPTED d12778 1 a12780 1 LANGUAGES d12782 1 a12784 1 LAPACKE_PC d12786 1 a12788 1 LAPACK_PC d12790 1 a12792 1 LDCONFIG_ADD_CMD d12794 1 a12796 1 LDD d12798 1 a12800 1 LEAFNODE_GROUP d12802 1 a12804 1 LIBDVDCSS_HOMEPAGE d12806 1 a12808 1 LIBRSVG_TYPE d12810 1 a12812 1 LIBTOOLIZE_PLIST d12814 1 a12816 1 LIBUSB_TYPE d12818 1 a12820 1 LINKER_RPATH_FLAG d12822 1 a12824 1 LINUX_LOCALES d12826 1 a12828 1 LOCALBASE_LOCKTYPE d12830 1 a12832 1 LOVE_DATA d12834 1 a12836 1 LOVE_VERSION d12838 1 a12840 1 LP64PLATFORMS d12842 1 a12844 1 LUA_CDIR d12846 1 a12848 1 LUA_DOCDIR d12850 1 a12852 1 LUA_INCDIR d12854 1 a12856 1 LUA_LDIR d12858 1 a12860 1 LUA_PKGPREFIX d12862 1 a12864 1 LUA_USE_BUSTED d12866 1 a12868 1 LUA_VERSIONS_INCOMPATIBLE d12870 1 a12872 1 LUA_VERSION_REQD d12874 1 a12876 1 MACHINE_PLATFORM d12878 1 a12880 1 MAILAGENT_EMAIL d12882 1 a12884 1 MAILAGENT_ORGANIZATION d12886 1 a12888 1 MAKEINFO_ARGS d12890 1 a12892 1 MAKE_DIRS_PERMS d12894 1 a12896 1 MAKE_FILE d12898 1 a12900 1 MAKE_JOBS d12902 1 a12904 1 MAKE_PROGRAM d12906 1 a12908 1 MANINSTALL d12910 1 a12912 1 MASTER_SITES d12914 1 a12916 1 MASTER_SITE_LOCAL d12918 1 a12920 1 MASTER_SITE_OVERRIDE d12922 1 a12924 1 MASTER_SORT d12926 1 a12928 1 MASTER_SORT_REGEX d12930 1 a12932 1 MEDIATOMB_GROUP d12934 1 a12936 1 MIPSPROBASE d12938 1 a12940 1 MIREDO_USER d12942 1 a12944 1 MKDIR d12946 1 a12948 1 MLDONKEY_GROUP d12950 1 a12952 1 MLDONKEY_USER d12954 1 a12956 1 MONOTONE_USER d12958 1 a12960 1 MOTIF_TYPE d12962 1 a12964 1 MPI_TYPE d12966 1 a12968 1 MSGFMT_STRIP_MSGID_PLURAL d12970 1 a12972 1 MV d12974 1 a12976 1 MYSQL_DATADIR d12978 1 a12980 1 MYSQL_GROUP d12982 1 a12984 1 MYSQL_VERSION d12986 1 a12988 1 MYSQL_VERSIONS_ALL d12990 1 a12992 1 NAGIOSCMD_GROUP d12994 1 a12996 1 NAGIOS_GROUP d12998 1 a13000 1 NATIVE_APPEND_ABI d13002 1 a13004 1 NATIVE_EXEC_FMT d13006 1 a13008 1 NATIVE_OBJECT_FMT d13010 1 a13012 1 NETBSD_LOGIN_NAME d13014 1 a13016 1 NMH_MTA d13018 1 a13020 1 NODE_VERSIONS_ACCEPTED d13022 1 a13024 1 NODE_VERSION_DEFAULT d13026 1 a13028 1 NOLOGIN d13030 1 a13032 1 NOT_FOR_PLATFORM d13034 1 a13036 1 NOT_PAX_MPROTECT_SAFE d13038 1 a13040 1 NO_CHECKSUM d13042 1 a13044 1 NO_SKIP d13046 1 a13048 1 NULLMAILER_GROUP d13050 1 a13052 1 OBJHOSTNAME d13054 1 a13056 1 OCAML_FINDLIB_DIRS d13058 1 a13060 1 OCAML_FINDLIB_REGISTER_VERBOSE d13062 1 a13064 1 OMF d13066 1 a13068 1 ONLY_FOR_PLATFORM d13070 1 a13072 1 OPENSSH_GROUP d13074 1 a13076 1 OPSYS d13078 1 a13080 1 OPSYS_VERSION d13082 1 a13084 1 OSS_TYPE d13086 1 a13088 1 OSX_TOLERATE_SDK_SKEW d13090 1 a13092 1 OS_VERSION d13094 1 a13096 1 OVERRIDE_DIRDEPTH d13098 1 a13100 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13102 1 a13104 1 OWN_DIRS_PERMS d13106 1 a13108 1 P4PORT d13110 1 a13112 1 P4USER d13114 1 a13116 1 PALMOS_DEFAULT_SDK d13118 1 a13120 1 PAM_DEFAULT d13122 1 a13124 1 PASSIVE_FETCH d13126 1 a13128 1 PATCHFILES d13130 1 a13132 1 PATCH_DEBUG d13134 1 a13136 1 PATCH_DIST_CAT d13138 1 a13140 1 PATCH_FUZZ_FACTOR d13142 1 a13144 1 PATH d13146 1 a13148 1 PEAR_CMD d13150 1 a13152 1 PEAR_PACKAGE_XML d13154 1 a13156 1 PERL5_CONFIGURE d13158 1 a13160 1 PERL5_LDFLAGS d13162 1 a13164 1 PERL5_MODULE_TYPE d13166 1 a13168 1 PERL5_PACKLIST_DIR d13170 1 a13172 1 PERL5_SITEBASE d13174 1 a13176 1 PERL5_VENDORBASE d13178 1 a13180 1 PFVAR_H d13182 1 a13184 1 PGGROUP d13186 1 a13188 1 PGPKGSRCDIR d13190 1 a13192 1 PGSQL_VERSION d13194 1 a13196 1 PGSQL_VERSION_DEFAULT d13198 1 a13200 1 PG_LIB_EXT d13202 1 a13204 1 PHPCOMMON_MK d13206 1 a13208 1 PHP_BASE_VERS d13210 1 a13212 1 PHP_EXTENSION_DIR d13214 1 a13216 1 PHP_PKG_PREFIX d13218 1 a13220 1 PHP_VERSIONS_ACCEPTED d13222 1 a13224 1 PHP_VERSION_DEFAULT d13226 1 a13228 1 PILRC_USE_GTK d13230 1 a13232 1 PKGCONFIG_FILE d13234 1 a13236 1 PKGCONFIG_OVERRIDE_STAGE d13238 1 a13240 1 PKGGNUDIR d13242 1 a13244 1 PKGLOCALEDIR d13246 1 a13248 1 PKGNAME d13250 1 a13252 1 PKGPATH d13254 1 a13256 1 PKGSRC_BLAS_TYPES d13258 1 a13260 1 PKGSRC_COMPILER d13262 1 a13264 1 PKGSRC_LOCKTYPE d13266 1 a13268 1 PKGSRC_MESSAGE_RECIPIENTS d13270 1 a13272 1 PKGSRC_MKREPRO d13274 1 a13276 1 PKGSRC_RUN_TEST d13278 1 a13280 1 PKGSRC_SLEEPSECS d13282 1 a13284 1 PKGSRC_USE_CTF d13286 1 a13288 1 PKGSRC_USE_MKTOOLS d13290 1 a13292 1 PKGSRC_USE_SSP d13294 1 a13296 1 PKGTASKS_DATAFILE d13298 1 a13300 1 PKGTOOLS_ENV d13302 1 a13304 1 PKG_APACHE d13306 1 a13308 1 PKG_APACHE_DEFAULT d13310 1 a13312 1 PKG_BUILD_OPTIONS d13314 1 a13316 1 PKG_CONFIG d13318 1 a13320 1 PKG_CREATE_USERGROUP d13322 1 a13324 1 PKG_DEBUG_LEVEL d13326 1 a13328 1 PKG_DESTDIR_SUPPORT d13330 1 a13332 1 PKG_DISABLED_OPTIONS d13334 1 a13336 1 PKG_FC d13338 1 a13340 1 PKG_GECOS d13342 1 a13344 1 PKG_GROUPS d13346 1 a13348 1 PKG_HOME d13350 1 a13352 1 PKG_JAVA_HOME d13354 1 a13356 1 PKG_JVMS_ACCEPTED d13358 1 a13360 1 PKG_LEGACY_OPTIONS d13362 1 a13364 1 PKG_MKSYMLINKS d13366 1 a13368 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13370 1 a13372 1 PKG_OPTIONS_LEGACY_VARS d13374 1 a13376 1 PKG_OPTIONS_OPTIONAL_GROUPS d13378 1 a13380 1 PKG_OPTIONS_VAR d13382 1 a13384 1 PKG_PHP_MAJOR_VERS d13386 1 a13388 1 PKG_RCD_SCRIPTS d13390 1 a13392 1 PKG_REGISTER_SHELLS d13394 1 a13396 1 PKG_SHELL d13398 1 a13400 1 PKG_SUPPORTED_OPTIONS d13402 1 a13404 1 PKG_SYSCONFBASEDIR d13406 1 a13408 1 PKG_SYSCONFDIR_PERMS d13410 1 a13412 1 PKG_SYSCONFVAR d13414 1 a13416 1 PKG_UID d13418 1 a13420 1 PKG_USERS d13422 1 a13424 1 PKG_VERBOSE d13426 1 a13428 1 PLIST d13430 1 a13432 1 PLIST_AWK_ENV d13434 1 a13436 1 PLIST_SUBST d13438 1 a13440 1 PLIST_VARS d13442 1 a13444 1 POSSIBLE_GFORTRAN_VERSION d13446 1 a13448 1 PREFER d13450 1 a13452 1 PREFER_NATIVE_PTHREADS d13454 1 a13456 1 PREFIX d13458 1 a13460 1 PRE_ROOT_CMD d13462 1 a13464 1 PS d13466 1 a13468 1 PTHREAD_CFLAGS d13470 1 a13472 1 PTHREAD_LIBS d13474 1 a13476 1 PTHREAD_TYPE d13478 1 a13480 1 PYPKGPREFIX d13482 1 a13484 1 PYTHON_SELF_CONFLICT d13486 1 a13488 1 PYTHON_VERSIONED_DEPENDENCIES d13490 1 a13492 1 PYTHON_VERSIONS_INCOMPATIBLE d13494 1 a13496 1 PYTHON_VERSION_REQD d13498 1 a13500 1 QMAILDIR d13502 1 a13504 1 QMAIL_DAEMON_USER d13506 1 a13508 1 QMAIL_NOFILES_GROUP d13510 1 a13512 1 QMAIL_QMAIL_GROUP d13514 1 a13516 1 QMAIL_QUEUE_EXTRA d13518 1 a13520 1 QMAIL_REMOTE_USER d13522 1 a13524 1 QMAIL_SEND_USER d13526 1 a13528 1 QORE_MODULE_API d13530 1 a13532 1 QORE_USER_MODULE_DIR d13534 1 a13536 1 QPOPPER_FAC d13538 1 a13540 1 QPOPPER_USER d13542 1 a13544 1 RASMOL_DEPTH d13546 1 a13548 1 RCD_SCRIPTS_DIR d13550 1 a13552 1 RCD_SCRIPTS_MODE d13554 1 a13556 1 RCD_SCRIPT_SRC a13557 3 READLINE_ACCEPTED @ 1.352 log @doc/pkgsrc.*: regen @ text @d299 3 a301 2
    20.2.3. Patching installations
    20.2.4. Disabling handling of configuration files
    d3272 3 a3274 2
    20.2.3. Patching installations
    20.2.4. Disabling handling of configuration files
    d6917 3 a6919 2
    20.2.3. Patching installations
    20.2.4. Disabling handling of configuration files
    d7022 1 a7022 1 To overcome this problem, the only solution is to extract the file in the d7025 1 a7025 1 generated by pkginstall). We will call the former the master d7030 5 d7036 3 a7038 17

    CONF_FILES and REQD_FILES are pairs of master and target files. During installation time, the master file is copied to the target one if and only if the latter does not exist. Upon deinstallation, the target file is removed provided that it was not modified by the installation.

    The difference between the two is that the latter prompts the administrator to remove any files that may be left after deinstallation (because they were not empty), while the former does not.

  • CONF_FILES_PERMS and REQD_FILES_PERMS contain tuples describing master files as well as their target locations. For each of them, it also specifies their owner, their group and their numeric permissions, in this order. For example:

    a7042 2

    The difference between the two is exactly the same as their non-PERMS counterparts.

    d7044 11 d7056 2 d7063 32 a7094 9

    Configuration files are special in the sense that they are installed in their own specific directory, PKG_SYSCONFDIR, and need special treatment during installation (most of which is automated by pkginstall). The main concept you must bear in mind is that files marked as configuration files are automatically copied to the right place (somewhere inside PKG_SYSCONFDIR) during installation if and only if they didn't exist before. Similarly, they will not be removed if they have local modifications. This ensures that administrators never lose any custom changes they may have made.

    d7104 1 a7104 1 be overridden by the user to point to his preferred location (e.g., d7131 1 a7131 1 variable that can be used within a package to refer to its configuration d7145 5 a7149 3 automatically added to OWN_DIRS. See Section 20.1.1, “Directory manipulation” what this means. This does not apply to subdirectories of ${PKG_SYSCONFDIR}, they still have to be created with OWN_DIRS or MAKE_DIRS.

    d7155 5 a7159 5 known place, you need to teach each package where it shall install its files. In some cases you will have to patch the package Makefiles to achieve it. If you are lucky, though, it may be as easy as passing an extra flag to the configuration script; this is the case of GNU Autoconf- generated files:

    d7164 4 a7167 3 for
    its configuration files, not where they will be originally installed (although the difference is never explicit, unfortunately).

    d7171 2 a7172 3 20.2.3. Patching installations

    As said before, pkginstall automatically handles configuration files. This means that the packages themselves must not d7182 15 d7198 1 a7198 1 examples hierarchy), the pkginstall framework can use them as master copies d7202 11 a7212 3 used. Check out Section 20.1.2, “File manipulation” for information about their syntax and their purpose. Here is an example, taken from the mail/mutt package:

    d7214 5 a7218 2 EGDIR= ${PREFIX}/share/doc/mutt/samples CONF_FILES= ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc a7219 2

    Note that the EGDIR variable is specific to that package and has no meaning outside it.

    d7223 1 a7223 1 20.2.4. Disabling handling of configuration files d7261 1 a7261 1 that this master file must be explicitly registered in the a11904 1 ALSA_PC d11906 1 a11908 1 AMANDA_TMP d11910 1 a11912 1 AMANDA_VAR d11914 1 a11916 1 APACHE_MODULE_NAME d11918 1 a11920 1 APACHE_MODULE_SRCDIR d11922 1 a11924 1 APACHE_SUEXEC_CONFIGURE_ARGS d11926 1 a11928 1 APACHE_USER d11930 1 a11932 1 APPEND_ELF d11934 1 a11936 1 AUDIT_PACKAGES_FLAGS d11938 1 a11940 1 AUTOMAKE_OVERRIDE d11942 1 a11944 1 AUTO_MKDIRS d11946 1 a11948 1 BDBBASE d11950 1 a11952 1 BDB_DEFAULT d11954 1 a11956 1 BDB_TYPE d11958 1 a11960 1 BINCIMAP_USER d11962 1 a11964 1 BIND_GROUP d11966 1 a11968 1 BINOWN d11970 1 a11972 1 BIN_INSTALL_FLAGS d11974 1 a11976 1 BLAS d11978 1 a11980 1 BLAS_C_INTERFACE d11982 1 a11984 1 BLAS_INDEX64 d11986 1 a11988 1 BLAS_PC d11990 1 a11992 1 BOOTSTRAP_DEPENDS d11994 1 a11996 1 BROKEN_EXCEPT_ON_PLATFORM d11998 1 a12000 1 BSDSRCDIR d12002 1 a12004 1 BSD_MAKE_ENV d12006 1 a12008 1 BUILDLINK_AUTO_VARS d12010 1 a12012 1 BUILDLINK_CONTENTS_FILTER a12013 3 BUILDLINK_DEPMETHOD a12108 1 CHECKOUT_DATE d12110 1 a12112 1 CHECK_FAKEHOME d12114 1 a12116 1 CHECK_FILES_SKIP d12118 1 a12120 1 CHECK_HEADERS d12122 1 a12124 1 CHECK_INTERPRETER d12126 1 a12128 1 CHECK_PERMS d12130 1 a12132 1 CHECK_PERMS_SKIP d12134 1 a12136 1 CHECK_PIE_SKIP d12138 1 a12140 1 CHECK_PORTABILITY d12142 1 a12144 1 CHECK_PORTABILITY_SKIP d12146 1 a12148 1 CHECK_RELRO_SKIP d12150 1 a12152 1 CHECK_SHLIBS d12154 1 a12156 1 CHECK_SHLIBS_SUPPORTED d12158 1 a12160 1 CHECK_SSP d12162 1 a12164 1 CHECK_SSP_SUPPORTED d12166 1 a12168 1 CHECK_STRIPPED_SKIP d12170 1 a12172 1 CHECK_WRKREF_EXTRA_DIRS d12174 1 a12176 1 CLAMAV_DBDIR d12178 1 a12180 1 CLAMAV_USER d12182 1 a12184 1 CLEANDEPENDS d12186 1 a12188 1 CMAKE_INSTALL_NAME_DIR d12190 1 a12192 1 CMAKE_MODULE_PATH_OVERRIDE d12194 1 a12196 1 CMAKE_PREFIX_PATH a12197 11 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12284 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12286 1 a12288 1 CYRUS_GROUP d12290 1 a12292 1 CYRUS_USER d12294 1 a12296 1 DAEMONTOOLS_LOG_USER d12298 1 a12300 1 DARWIN_REQUIRES_FILTER d12302 1 a12304 1 DBUS_USER d12306 1 a12308 1 DEFANG_USER d12310 1 a12312 1 DEFAULT_DISTFILES d12314 1 a12316 1 DEFAULT_SERIAL_DEVICE d12318 1 a12320 1 DEINSTALLDEPENDS d12322 1 a12324 1 DEINSTALL_TEMPLATES d12326 1 a12328 1 DELAYED_WARNING_MSG d12330 1 a12332 1 DEPENDS_TARGET d12334 1 a12336 1 DESTDIR d12338 1 a12340 1 DIALER_GROUP d12342 1 a12344 1 DISTDIR d12346 1 a12348 1 DISTINFO_FILE d12350 1 a12352 1 DIST_PATH d12354 1 a12356 1 DJBDNS_AXFR_USER d12358 1 a12360 1 DJBDNS_DJBDNS_GROUP d12362 1 a12364 1 DJBDNS_RBL_USER d12366 1 a12368 1 DLOPEN_REQUIRE_PTHREADS d12370 1 a12372 1 DL_CFLAGS d12374 1 a12376 1 DL_LIBS d12378 1 a12380 1 DOCOWN d12382 1 a12384 1 DQCACHE_GROUP d12386 1 a12388 1 DT_LAYOUT d12390 1 a12392 1 DYNAMIC_SITES_SCRIPT d12394 1 a12396 1 ECHO_N d12398 1 a12400 1 EMACS_TYPE d12402 1 a12404 1 EMULSUBDIR d12406 1 a12408 1 EMUL_ARCH d12410 1 a12412 1 EMUL_EXEC_FMT d12414 1 a12416 1 EMUL_MODULES d12418 1 a12420 1 EMUL_PKG_FMT d12422 1 a12424 1 EMUL_PLATFORMS d12426 1 a12428 1 EMUL_REQD d12430 1 a12432 1 ERROR_MSG d12434 1 a12436 1 EXIM_USER d12438 1 a12440 1 EXTRACTOR d12442 1 a12444 1 EXTRACT_CMD_DEFAULT d12446 1 a12448 1 EXTRACT_ELEMENTS d12450 1 a12452 1 EXTRACT_ONLY d12454 1 a12456 1 EXTRACT_SUFX d12458 1 a12460 1 FAIL d12462 1 a12464 1 FAIL_MSG d12466 1 a12468 1 FAM d12470 1 a12472 1 FAM_DEFAULT d12474 1 a12476 1 FCPATH d12478 1 a12480 1 FEATURE_LDFLAGS d12482 1 a12484 1 FETCH_AFTER_ARGS d12486 1 a12488 1 FETCH_CMD d12490 1 a12492 1 FETCH_PROXY d12494 1 a12496 1 FETCH_TIMEOUT d12498 1 a12500 1 FETCH_USING d12502 1 a12504 1 FILES_SUBST_SED a12505 3 FONTDIR a12512 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d12598 1 a12598 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG a12600 1 GNU d12602 1 a12604 1 GNU_CONFIGURE_INFODIR d12606 1 a12608 1 GNU_CONFIGURE_QUIET d12610 1 a12612 1 GODEP_REDIRECTS d12614 1 a12616 1 GO_DEPS d12618 1 a12620 1 GO_EXTRA_MOD_DIRS d12622 1 a12624 1 GO_SRCPATH d12626 1 a12628 1 GRUB_NETWORK_CARDS d12630 1 a12632 1 GRUB_SCAN_ARGS a12633 3 HASKELL_COMPILER a12652 5 HG_REPO HG_REPOSITORIES HG_TAG d12654 1 a12656 1 HOST_PKGTOOLS_ARGS d12658 1 a12660 1 HOWL_GROUP d12662 1 a12664 1 ICCBASE d12666 1 a12668 1 ICON_THEMES d12670 1 a12672 1 IGNORE_CCACHE d12674 1 a12676 1 IGNORE_INTERACTIVE_FETCH d12678 1 a12680 1 IMAKEOPTS d12682 1 a12684 1 IMAKE_MANINSTALL d12686 1 a12688 1 IMDICTDIR d12690 1 a12692 1 INFO_DIR d12694 1 a12748 4 JAVA_APP_PATH JAVA_APP_TARGETS a12824 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12826 1 a12828 1 LOCALBASE d12830 1 a12832 1 LOCALPATCHES d12834 1 a12836 1 LOVE_GAME d12838 1 a12840 1 LP32PLATFORMS d12842 1 a12844 1 LUA_BUSTED_ARGS d12846 1 a12848 1 LUA_COMPILER d12850 1 a12852 1 LUA_EXAMPLESDIR d12854 1 a12856 1 LUA_INTERPRETER d12858 1 a12860 1 LUA_LINKER_MAGIC d12862 1 a12864 1 LUA_SELF_CONFLICT d12866 1 a12868 1 LUA_VERSIONS_ACCEPTED d12870 1 a12872 1 LUA_VERSION_DEFAULT d12874 1 a12876 1 Lua d12878 1 a12880 1 MAILAGENT_DOMAIN d12882 1 a12884 1 MAILAGENT_FQDN a12885 2 a12886 1 MAJOR_OS_VERSION a12972 1 MUST d12974 1 a12976 1 MYSQL_CHARSET d12978 1 a12980 1 MYSQL_EXTRA_CHARSET d12982 1 a12984 1 MYSQL_USER d12986 1 a12988 1 MYSQL_VERSIONS_ACCEPTED d12990 1 a12992 1 MYSQL_VERSION_DEFAULT d12994 1 a12996 1 NAGIOSDIR d12998 1 a13000 1 NAGIOS_USER d13002 1 a13004 1 NATIVE_APPEND_ELF d13006 1 a13008 1 NATIVE_MACHINE_PLATFORM d13010 1 a13012 1 NBPAX_PROGRAM_PREFIX d13014 1 a13016 1 NMH_EDITOR d13018 1 a13020 1 NMH_PAGER d13022 1 a13024 1 NODE_VERSIONS_INCOMPATIBLE d13026 1 a13028 1 NODE_VERSION_REQD d13030 1 a13032 1 NOTE d13034 1 a13036 1 NOT_PAX_ASLR_SAFE d13038 1 a13040 1 NO_BUILD d13042 1 a13044 1 NO_CONFIGURE d13046 1 a13048 1 NS_PREFERRED d13050 1 a13052 1 NULLMAILER_USER d13054 1 a13056 1 OBJMACHINE d13058 1 a13060 1 OCAML_FINDLIB_REGISTER d13062 1 a13064 1 OCAML_SITELIBDIR d13066 1 a13068 1 ONLY_FOR_COMPILER d13070 1 a13072 1 OPENSSH_CHROOT d13074 1 a13076 1 OPENSSH_USER d13078 1 a13080 1 OPSYS_EMULDIR d13082 1 a13084 1 OS d13086 1 a13088 1 OSX d13090 1 a13092 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d13094 1 a13096 1 OTF_FONTS_DIR d13098 1 a13100 1 OVERRIDE_GEMSPEC a13101 3 OVERRIDE_ROCKSPEC a13148 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13545 4 RCD_DIR RCD_ORDER d13558 1 a13558 1 RCD_SUBR d13561 1 a13561 1 RDOC a13632 4 ROCKSPEC_NAME ROCKSPEC_SPECFILE a13836 1 SHORTNAME d13838 1 a13840 1 SILC_CLIENT_WITH_PERL d13842 1 a13844 1 SKIP_DEPENDS d13846 1 a13848 1 SMF_MANIFEST d13850 1 a13852 1 SMF_METHOD_SHELL d13854 1 a13856 1 SMF_NAME d13858 1 a13860 1 SMF_SRCDIR d13862 1 a13864 1 SNIPROXY_USER d13866 1 a13868 1 SPECIAL_PERMS d13870 1 a13872 1 SSH_SUID d13874 1 a13876 1 SSYNC_PAWD d13878 1 a13880 1 STRIP d13882 1 a13884 1 STRIP_DEBUG d13886 1 a13888 1 STRIP_FILES_SKIP d13890 1 a13892 1 SUBDIR d13894 1 a13896 1 SUBST_CLASSES d13898 1 a13900 1 SUBST_FILTER_CMD d13902 1 a13904 1 SUBST_NOOP_OK d13906 1 a13908 1 SUBST_SHOW_DIFF d13910 1 a13912 1 SUBST_STAGE d13914 1 a13916 1 SUNWSPROBASE a13917 2 a13918 1 SVN_EXTRACTDIR a13920 5 SVN_REPO SVN_REPOSITORIES SVN_REVISION d13922 1 a13924 1 TARGET_ARCH d13926 1 a13928 1 TERMCAP_TYPE d13930 1 a13932 1 TERMINFO_TYPE d13934 1 a13936 1 TEST_DEPENDS d13938 1 a13940 1 TEST_ENV d13942 1 a13944 1 TEST_MAKE_CMD d13946 1 a13948 1 TEST_TARGET d13950 1 a13952 1 TEXLIVE_REV d13954 1 a13956 1 TEXMFSITE d13958 1 a13960 1 TEX_HYPHEN_DAT d13962 1 a13964 1 TEX_TEXMF_DIRS d13966 1 a13968 1 TINYDYN_USER d13970 1 a13972 1 TO d13974 1 a13976 1 TOOLS_ALWAYS_WRAP d13978 1 a13980 1 TOOLS_BROKEN d13982 1 a13984 1 TOOLS_CMDLINE_SED d13986 1 a13988 1 TOOLS_CROSS_DESTDIR d13990 1 a13992 1 TOOLS_FAIL d13994 1 a13996 1 TOOLS_LDCONFIG d13998 1 a14000 1 TOOLS_PATH d14002 1 a14004 1 TOOLS_USE_CROSS_COMPILE a14005 3 TTF_FONTDIR d14158 1 a14158 1 XXXX a14160 1 YES d14162 1 a14164 1 __stdc__ d14166 1 a14168 1 accept d14170 1 a14172 1 acquire-lock d14174 1 a14176 1 added d14178 1 a14180 1 alloca d14182 1 a14184 1 aslr d14186 1 a14188 1 atlas d14190 1 a14192 1 automake d14194 1 a14196 1 awk d14198 1 a14200 1 big-endian d14202 1 a14204 1 bind d14206 1 a14208 1 blas d14210 1 a14212 1 broken d14214 1 a14216 1 bsd d14218 1 a14220 1 build d14222 1 a14224 1 buildlink-directories d14226 1 a14228 1 c d14230 1 a14232 1 ccache d14234 1 a14236 1 cdefs d14238 1 a14240 1 changes d14242 1 a14244 1 changes-entry-noupdate d14246 1 a14248 1 check-clean d14250 1 a14252 1 check-files-clean d14254 1 a14256 1 checksum d14258 1 a14260 1 clean d14262 1 a14264 1 cleandir d14266 1 a14268 1 commit-changes-entry d14270 1 a14272 1 compiler d14274 1 a14276 1 config.guess d14278 1 a14280 1 configuration d14282 1 a14284 1 configure-env d14286 1 a14288 1 configure_args d14290 1 a14292 1 cos d14294 1 a14296 1 cputime d14298 1 a14300 1 csh a14301 3 cvs a14364 1 endif d14366 1 a14368 1 ensurepip d14370 1 a14372 1 errx d14374 1 a14376 1 exp d14378 1 a14380 1 fabs d14382 1 a14384 1 features d14386 1 a14388 1 fetch-list d14390 1 a14392 1 forbids d14394 1 a14396 1 format a14397 2 a14398 1 fossil a14432 1 git d14434 1 a14436 1 gitlab d14438 1 a14440 1 gnu d14442 1 a14444 1 go d14446 1 a14448 1 golang d14450 1 a14452 1 hashbang a14453 2 a14454 1 hg d14526 1 a14526 1 mercurial a14528 1 meta d14530 1 a14532 1 meta_package d14534 1 a14536 1 mk.conf d14538 1 a14540 1 mount d14542 1 a14544 1 moved d14546 1 a14548 1 mremap d14550 1 a14552 1 nbcompat d14554 1 a14556 1 node d14558 1 a14560 1 nodejs d14562 1 a14564 1 obstack_ptr_grow d14566 1 a14568 1 only d14570 1 a14572 1 options d14574 1 a14576 1 order d14578 1 a14580 1 override-intltool d14582 1 a14584 1 package d14586 1 a14588 1 path d14590 1 a14592 1 paxctl d14594 1 a14596 1 pc d14598 1 a14600 1 perl5 d14602 1 a14604 1 php d14606 1 a14608 1 pkg-config d14610 1 a14612 1 platform d14614 1 a14616 1 post-extract d14618 1 a14620 1 post-wrapper d14622 1 a14624 1 pre-configure-checks-hook d14626 1 a14628 1 pre-fetch d14630 1 a14632 1 print-plist d14634 1 a14636 1 privileged-install-hook d14638 1 a14640 1 python d14642 1 a14644 1 readme-all d14646 1 a14648 1 recv d14650 1 a14652 1 regcomp d14654 1 a14656 1 release-lock d14658 1 a14660 1 remove d14662 1 a14664 1 rename d14666 1 a14668 1 reorder d14670 1 a14672 1 replace_interpreter d14674 1 a14676 1 resolv d14678 1 a14680 1 ruby d14682 1 a14684 1 sendfile d14686 1 a14688 1 setenv d14690 1 a14692 1 setprogname d14694 1 a14696 1 sh d14698 1 a14700 1 show d14702 1 a14704 1 show-build-defs d14706 1 a14708 1 show-depends-dirs d14710 1 a14712 1 show-depends-recursive d14714 1 a14716 1 show-distfiles d14718 1 a14720 1 show-subdir-var d14722 1 a14724 1 show-var d14726 1 a14728 1 snprintf d14730 1 a14732 1 ssp d14734 1 a14736 1 stage-install d14738 1 a14740 1 strict d14742 1 a14744 1 strndup d14746 1 a14748 1 strsep a14749 2 a14750 1 subversion d14758 1 a14758 1 svn a14760 1 symlink d14762 1 a14764 1 test-env d14766 1 a14768 1 texlive d14770 1 a14772 1 todo d14774 1 a14776 1 tools d14778 1 a14780 1 transitive d14782 1 a14784 1 ulimit d14786 1 a14788 1 undo-replace d14790 1 a14792 1 unprivileged d14794 1 a14796 1 unstripped d14798 1 a14800 1 updated d14802 1 a14804 1 upload-distfiles d14806 1 a14808 1 user d14810 1 a14812 1 vasprintf d14814 1 a14816 1 vsnprintf d14818 1 a14820 1 warning d14822 1 a14824 1 warnx d14826 1 a14828 1 wattr_on d14830 1 a14832 1 wrapper d14834 1 @ 1.351 log @doc/pkgsrc.*: regen @ text @d7765 1 a7765 1
  • d7769 1 a7769 1 d8550 1 a8550 1

    d8552 4 a8555 4 c99, c++, c++03, gnu++03, c++0x, gnu++0x, c++11, gnu++11, c++14, gnu++14, c++17, gnu++17, c++20, gnu++20, fortran, fortran77, java, objc, obj-c++, and ada. d8566 1 a8566 1

    d8568 2 a8569 2 GCC_REQD+= 7 d9933 1 a9933 1

    d9935 1 a9935 1 libxslt: update to 1.0.30 d9937 3 a9939 3 Changes since 1.0.29: ... d9943 1 a9943 1

    d9945 1 a9945 1 mk/bsd.pkg.mk: enable SSP by default on NetBSD d9947 2 a9948 2 (rationale) d11851 1 d11853 2 d11856 1 a11858 1 AMANDA_USER d11860 1 a11862 1 APACHE_GROUP d11864 1 a11866 1 APACHE_MODULE_SRC d11868 1 a11870 1 APACHE_PKG_PREFIX d11872 1 a11874 1 APACHE_SUEXEC_DOCROOT d11876 1 a11878 1 APPEND_ABI d11880 1 a11882 1 ARLA_CACHE d11884 1 a11886 1 AUTOCONF_REQD d11888 1 a11890 1 AUTOMAKE_REQD d11892 1 a11894 1 BDB185_DEFAULT d11896 1 a11898 1 BDB_ACCEPTED d11900 1 a11902 1 BDB_LIBS d11904 1 a11906 1 BINCIMAP_GROUP d11908 1 a11910 1 BIND_DIR d11912 1 a11914 1 BIND_USER d11916 1 a11918 1 BINPKG_SITES d11920 1 a11922 1 BISON_PKGDATADIR d11924 1 a11926 1 BLAS_ACCEPTED d11928 1 a11930 1 BLAS_INCLUDES d11932 1 a11934 1 BLAS_LIBS d11936 1 a11938 1 BLAS_TYPE d11940 1 a11942 1 BROKEN d11944 1 a11946 1 BROKEN_ON_PLATFORM d11948 1 a11950 1 BSDXSRCDIR d11952 1 a11954 1 BUILDLINK_AUTO_DIRS d11956 1 a11958 1 BUILDLINK_CFLAGS d11960 1 d11963 1 a11963 1 BUILDLINK_CPPFLAGS d12059 1 d12061 2 d12064 1 a12066 1 CHECK_FILES d12068 1 a12070 1 CHECK_FILES_STRICT d12072 1 a12074 1 CHECK_HEADERS_SKIP d12076 1 a12078 1 CHECK_INTERPRETER_SKIP d12080 1 a12082 1 CHECK_PERMS_AUTOFIX d12084 1 a12086 1 CHECK_PIE d12088 1 a12090 1 CHECK_PIE_SUPPORTED d12092 1 a12094 1 CHECK_PORTABILITY_EXPERIMENTAL d12096 1 a12098 1 CHECK_RELRO d12100 1 a12102 1 CHECK_RELRO_SUPPORTED d12104 1 a12106 1 CHECK_SHLIBS_SKIP d12108 1 a12110 1 CHECK_SHLIBS_TOXIC d12112 1 a12114 1 CHECK_SSP_SKIP d12116 1 a12118 1 CHECK_STRIPPED d12120 1 a12122 1 CHECK_WRKREF d12124 1 a12126 1 CHECK_WRKREF_SKIP d12128 1 a12130 1 CLAMAV_GROUP d12132 1 a12134 1 CLANGBASE d12136 1 a12138 1 CMAKE_DEPENDENCIES_REWRITE d12140 1 a12142 1 CMAKE_INSTALL_PREFIX d12144 1 a12146 1 CMAKE_PKGSRC_BUILD_FLAGS d12148 5 d12155 5 a12159 1 CMAKE_USE_GNU_INSTALL_DIRS d12247 17 d12265 2 d12268 1 a12270 1 CYRUS_IDLE d12272 1 a12274 1 DAEMONTOOLS_GROUP d12276 1 a12278 1 DARWIN_NO_SYSTEM_LIBS d12280 1 a12282 1 DBUS_GROUP d12284 1 a12286 1 DEFANG_GROUP d12288 1 a12290 1 DEFAULT_ACCEPTABLE_LICENSES d12292 1 a12294 1 DEFAULT_IRC_SERVER d12296 1 a12298 1 DEF_UMASK d12300 1 a12302 1 DEINSTALL_SRC d12304 1 a12306 1 DELAYED_ERROR_MSG d12308 1 a12310 1 DEPENDS d12312 1 a12314 1 DEPENDS_TYPE d12316 1 a12318 1 DESTDIR_VARNAME d12320 1 a12322 1 DIGEST_REQD d12324 1 a12326 1 DISTFILES d12328 1 a12330 1 DISTNAME d12332 1 a12334 1 DIST_SUBDIR d12336 1 a12338 1 DJBDNS_CACHE_USER d12340 1 a12342 1 DJBDNS_LOG_USER d12344 1 a12346 1 DJBDNS_TINY_USER d12348 1 a12350 1 DL_AUTO_VARS d12352 1 a12354 1 DL_LDFLAGS d12356 1 a12358 1 DNS d12360 1 a12362 1 DOWNLOADED_DISTFILE d12364 1 a12366 1 DQCACHE_USER d12368 1 a12370 1 DYNAMIC_SITES_CMD d12372 1 a12374 1 ECHO d12376 1 a12378 1 ELK_GUI d12380 1 a12382 1 EMULDIR d12384 1 a12386 1 EMULSUBDIRSLASH d12388 1 a12390 1 EMUL_DISTRO d12392 1 a12394 1 EMUL_IS_NATIVE d12396 1 a12398 1 EMUL_OPSYS d12400 1 a12402 1 EMUL_PLATFORM d12404 1 a12406 1 EMUL_PREFER d12408 1 a12410 1 EMUL_TYPE d12412 1 a12414 1 EXIM_GROUP d12416 1 a12418 1 EXPORT_SYMBOLS_LDFLAGS d12420 1 a12422 1 EXTRACT_CMD d12424 1 a12426 1 EXTRACT_DIR d12428 1 a12430 1 EXTRACT_ENV d12432 1 a12434 1 EXTRACT_OPTS d12436 1 a12438 1 EXTRACT_USING d12440 1 a12442 1 FAILOVER_FETCH d12444 1 a12446 1 FAKE_NCURSES d12448 1 a12450 1 FAM_ACCEPTED d12452 1 a12454 1 FAM_SERVER d12456 1 a12458 1 FEATURE_CPPFLAGS d12460 1 a12462 1 FEATURE_LIBS d12464 1 a12466 1 FETCH_BEFORE_ARGS d12468 1 a12470 1 FETCH_OUTPUT_ARGS d12472 1 a12474 1 FETCH_RESUME_ARGS d12476 1 a12478 1 FETCH_USE_IPV4_ONLY d12480 1 a12482 1 FILES_SUBST d12484 1 d12487 1 a12487 1 FIX_SYSTEM_HEADERS d12495 8 d12588 13 a12600 1 GNU d12603 1 a12604 1 GNU_CONFIGURE_INFODIR d12607 1 a12608 1 GNU_CONFIGURE_QUIET d12611 1 a12612 1 GODEP_REDIRECTS d12615 1 d12617 2 d12620 1 a12622 1 GO_DIST_BASE d12624 1 a12626 1 GO_MODULE_FILES d12628 1 a12630 1 GROUP_SPECIFIC_PKGS d12632 1 a12634 1 GRUB_PRESET_COMMAND d12636 1 d12639 1 a12639 1 GZIP d12659 5 a12664 1 HOST_PKGTOOLS_ARGS d12667 1 a12668 1 HOWL_GROUP d12671 1 a12672 1 ICCBASE d12675 1 a12676 1 ICON_THEMES d12679 1 a12680 1 IGNORE_CCACHE d12683 1 a12684 1 IGNORE_INTERACTIVE_FETCH d12687 1 a12688 1 IMAKEOPTS d12691 1 a12692 1 IMAKE_MANINSTALL d12695 1 a12696 1 IMDICTDIR d12699 1 a12700 1 INFO_DIR d12703 1 a12704 1 INFO_FILES_VERBOSE d12759 4 d12839 5 d12845 2 d12848 1 a12850 1 LOCALBASE_LOCKTYPE d12852 1 a12854 1 LOVE_DATA d12856 1 a12858 1 LOVE_VERSION d12860 1 a12862 1 LP64PLATFORMS d12864 1 a12866 1 LUA_CDIR d12868 1 a12870 1 LUA_DOCDIR d12872 1 a12874 1 LUA_INCDIR d12876 1 a12878 1 LUA_LDIR d12880 1 a12882 1 LUA_PKGPREFIX d12884 1 a12886 1 LUA_USE_BUSTED d12888 1 a12890 1 LUA_VERSIONS_INCOMPATIBLE d12892 1 a12894 1 LUA_VERSION_REQD d12896 1 a12898 1 MACHINE_PLATFORM d12900 1 a12902 1 MAILAGENT_EMAIL d12904 1 a12906 1 MAILAGENT_ORGANIZATION d12908 1 d12995 1 d12997 2 d13000 1 a13002 1 MYSQL_DATADIR d13004 1 a13006 1 MYSQL_GROUP d13008 1 a13010 1 MYSQL_VERSION d13012 1 a13014 1 MYSQL_VERSIONS_ALL d13016 1 a13018 1 NAGIOSCMD_GROUP d13020 1 a13022 1 NAGIOS_GROUP d13024 1 a13026 1 NATIVE_APPEND_ABI d13028 1 a13030 1 NATIVE_EXEC_FMT d13032 1 a13034 1 NATIVE_OBJECT_FMT d13036 1 a13038 1 NETBSD_LOGIN_NAME d13040 1 a13042 1 NMH_MTA d13044 1 a13046 1 NODE_VERSIONS_ACCEPTED d13048 1 a13050 1 NODE_VERSION_DEFAULT d13052 1 a13054 1 NOLOGIN d13056 1 a13058 1 NOT_FOR_PLATFORM d13060 1 a13062 1 NOT_PAX_MPROTECT_SAFE d13064 1 a13066 1 NO_CHECKSUM d13068 1 a13070 1 NO_SKIP d13072 1 a13074 1 NULLMAILER_GROUP d13076 1 a13078 1 OBJHOSTNAME d13080 1 a13082 1 OCAML_FINDLIB_DIRS d13084 1 a13086 1 OCAML_FINDLIB_REGISTER_VERBOSE d13088 1 a13090 1 OMF d13092 1 a13094 1 ONLY_FOR_PLATFORM d13096 1 a13098 1 OPENSSH_GROUP d13100 1 a13102 1 OPSYS d13104 1 a13106 1 OPSYS_VERSION d13108 1 a13110 1 OSS_TYPE d13112 5 a13118 1 OSX_TOLERATE_SDK_SKEW d13120 1 a13122 1 OS_VERSION d13124 1 a13126 1 OVERRIDE_DIRDEPTH d13128 1 d13131 1 a13131 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13179 8 d13584 4 d13600 3 d13604 1 a13606 1 READLINE_DEFAULT d13608 1 a13610 1 REAL_ROOT_GROUP d13612 1 a13614 1 RECURSIVE_MAKE d13616 1 a13618 1 RELRO_SUPPORTED d13620 1 a13622 1 REPLACE_BASH d13624 1 a13626 1 REPLACE_KSH d13628 1 a13630 1 REPLACE_NODEJS d13632 1 a13634 1 REPLACE_PERL d13636 1 a13638 1 REPLACE_PHP d13640 1 a13642 1 REPLACE_QORE d13644 1 a13646 1 REPLACE_RUBY d13648 1 a13650 1 REPLACE_RUBY_PAT d13652 1 a13654 1 REPLACE_TEXLUA d13656 1 a13658 1 REQD_DIRS d13660 1 a13662 1 REQD_FILES d13664 1 a13666 1 REQD_FILES_PERMS d13668 1 a13670 1 RESOLV_LDFLAGS d13672 5 a13678 1 RM d13680 1 a13682 1 ROOT_GROUP d13684 1 a13686 1 RPCGEN d13688 1 a13690 1 RPM2PKG_PLIST d13692 1 a13694 1 RPM2PKG_STAGE d13696 1 a13698 1 RPM2PKG_SUBPREFIX d13700 1 a13702 1 RPMIGNOREPATH d13704 1 a13706 1 RSSH_CVS_PATH d13708 1 a13710 1 RSSH_RSYNC_PATH d13712 1 a13714 1 RSSH_SFTP_SERVER_PATH d13716 1 a13718 1 RUBYGEM d13720 1 a13722 1 RUBYGEM_NAME d13724 1 a13726 1 RUBYGEM_USE_MANPAGES d13728 1 a13730 1 RUBY_ABI_VERSION d13732 1 a13734 1 RUBY_ARCHINC d13736 1 a13738 1 RUBY_BASE d13740 1 a13742 1 RUBY_BUILD_DOCUMENT d13744 1 a13746 1 RUBY_DOC d13748 1 a13750 1 RUBY_EG d13752 1 a13754 1 RUBY_EXTCONF d13756 1 a13758 1 RUBY_EXTCONF_DEBUG d13760 1 a13762 1 RUBY_GEM_ARCH d13764 1 a13766 1 RUBY_INC d13768 1 a13770 1 RUBY_LIB_BASE d13772 1 a13774 1 RUBY_NOVERSION d13776 1 a13778 1 RUBY_RAILS d13780 1 a13782 1 RUBY_RAILS60_VERSION d13784 1 a13786 1 RUBY_RAILS70_VERSION d13788 1 a13790 1 RUBY_RAILS_DEFAULT d13792 1 a13794 1 RUBY_RAILS_STRICT_DEP d13796 1 a13798 1 RUBY_SETUP d13800 1 a13802 1 RUBY_SHLIBALIAS d13804 1 a13806 1 RUBY_SIMPLE_INSTALL d13808 1 a13810 1 RUBY_SITELIB d13812 1 a13814 1 RUBY_SITERIDIR d13816 1 a13818 1 RUBY_SRCDIR d13820 1 a13822 1 RUBY_SUFFIX d13824 1 a13826 1 RUBY_USE_PTHREAD d13828 1 a13830 1 RUBY_VENDORLIB d13832 1 a13834 1 RUBY_VER d13836 1 a13838 1 RUBY_VERSIONS_ACCEPTED d13840 1 a13842 1 RUBY_VERSION_DEFAULT d13844 1 a13846 1 RUBY_VER_DIR d13848 1 a13850 1 RUN_LDCONFIG d13852 1 a13854 1 SCO d13856 1 a13858 1 SCREWS_USER d13860 1 a13862 1 SCROLLKEEPER_DATADIR d13864 1 a13866 1 SCROLLKEEPER_UPDATEDB d13868 1 a13870 1 SDL12_TYPE d13872 1 a13874 1 SETGIDGAME d13876 1 a13878 1 SETUID_ROOT_PERMS d13880 1 d13883 1 a13883 1 SHLIB d13968 8 d14063 1 d14065 2 d14068 1 a14070 1 UAC_REQD_EXECS d14072 1 a14074 1 UCSPI_SSL_USER d14076 1 a14078 1 UNPRIVILEGED d14080 1 a14082 1 UNPRIVILEGED_GROUPS d14084 1 a14086 1 UNWRAP_FILES d14088 1 a14090 1 UPDATE_GEMSPEC d14092 1 a14094 1 URI d14096 1 a14098 1 USERPPP_GROUP d14100 1 a14102 1 USE_ABI_DEPENDS d14104 1 a14106 1 USE_BSD_MAKEFILE d14108 1 a14110 1 USE_CROSS_COMPILE d14112 1 a14114 1 USE_CWRAPPERS d14116 1 a14118 1 USE_FEATURES d14120 1 a14122 1 USE_GCC_RUNTIME d14124 1 a14126 1 USE_JAVA d14128 1 a14130 1 USE_LANGUAGES d14132 1 a14134 1 USE_NATIVE_GCC d14136 1 a14138 1 USE_PKGSRC_GCC d14140 1 a14142 1 USE_PKGTASKS d14144 1 a14146 1 USE_RUBY_EXTCONF d14148 1 a14150 1 USE_RUBY_SETUP d14152 1 a14154 1 USE_TOOLS d14156 1 a14158 1 UUCP_USER d14160 1 a14162 1 VARNAME d14164 1 a14166 1 WARNING_MSG d14168 1 a14170 1 WCALC_CGIPATH d14172 1 a14174 1 WCALC_HTMLPATH d14176 1 a14178 1 WRAPPER_CC d14180 1 a14182 1 WRKDIR d14184 1 a14186 1 WRKDIR_LOCKTYPE d14188 1 a14190 1 WRKOBJDIR d14192 1 a14194 1 X10_PORT d14196 1 a14198 1 X11BASE d14200 1 a14202 1 X11_TYPE d14204 1 a14206 1 X509_KEY d14208 1 a14210 1 XLOCK_DEFAULT_MODE d14212 1 a14214 1 XMKMF_FLAGS d14216 1 d14363 1 d14365 2 d14368 1 a14370 1 declare d14372 1 a14374 1 depend d14376 1 a14378 1 depends d14380 1 a14382 1 depends-fetch d14384 1 a14386 1 describe d14388 1 a14390 1 disable d14392 1 a14394 1 distinfo d14396 1 a14398 1 dlopen d14400 1 a14402 1 do-clean d14404 1 a14406 1 do-configure-post-hook d14408 1 a14410 1 do-fetch d14412 1 a14414 1 emul d14416 1 a14418 1 emul-fetch d14420 1 a14422 1 emulator d14424 1 d14427 1 a14427 1 endian d14464 3 d14468 1 a14470 1 fts d14472 1 a14474 1 fts_open d14476 1 a14478 1 fts_set d14480 1 a14482 1 gethostbyaddr d14484 1 a14486 1 gethostbyname2 d14488 1 a14490 1 getprogname d14492 1 a14494 1 getservbyport d14496 1 d14499 1 a14499 1 gettext d14524 3 d14528 1 a14530 1 increment d14532 1 a14534 1 inet_aton d14536 1 a14538 1 interpreter d14540 1 a14542 1 ip4 d14544 1 a14546 1 ipv4 d14548 1 a14550 1 iso d14552 1 a14554 1 krb d14556 1 a14558 1 ksh d14560 1 a14562 1 latex d14564 1 a14566 1 libintl_gettext d14568 1 a14570 1 libnbcompat d14572 1 a14574 1 libtool d14576 1 a14578 1 license d14580 1 a14582 1 little-endian d14584 1 a14586 1 locking d14588 1 a14590 1 lvalue d14592 1 a14594 1 makesum d14596 1 d14824 3 d14828 1 a14830 1 sunpro d14832 1 @ 1.350 log @doc/pkgsrc.*: regen @ text @d10062 1 a10062 1
  • cvs import the modified package in the new d13432 1 a13432 1 PYTHON_VERSIONED_DEPENDENCIES d13435 1 a13436 1 PYTHON_VERSIONS_INCOMPATIBLE d13439 1 a13440 1 PYTHON_VERSION_REQD d13443 1 a13444 1 QMAILDIR d13447 1 a13448 1 QMAIL_DAEMON_USER d13451 1 a13452 1 QMAIL_NOFILES_GROUP d13455 1 a13456 1 QMAIL_QMAIL_GROUP d13459 1 a13460 1 QMAIL_QUEUE_EXTRA d13463 1 a13464 1 QMAIL_REMOTE_USER d13467 1 a13468 1 QMAIL_SEND_USER d13471 1 a13472 1 QORE_MODULE_API d13475 1 a13476 1 QORE_USER_MODULE_DIR d13479 1 a13480 1 QPOPPER_FAC d13483 1 a13484 1 QPOPPER_USER d13487 1 a13488 1 RASMOL_DEPTH d13491 1 a13492 1 RCD_SCRIPTS_DIR d13495 1 a13496 1 RCD_SCRIPTS_MODE d13499 1 a13500 1 RCD_SCRIPT_SRC d13503 1 a13504 1 READLINE_DEFAULT d13507 1 a13508 1 REAL_ROOT_GROUP d13511 1 a13512 1 RECURSIVE_MAKE d13515 1 a13516 1 RELRO_SUPPORTED d13519 1 a13520 1 REPLACE_BASH d13523 1 a13524 1 REPLACE_KSH d13527 1 a13528 1 REPLACE_NODEJS d13531 1 a13532 1 REPLACE_PERL d13535 1 a13536 1 REPLACE_PHP d13539 1 a13540 1 REPLACE_QORE d13543 1 a13544 1 REPLACE_RUBY d13547 1 a13548 1 REPLACE_RUBY_PAT d13551 1 a13552 1 REPLACE_TEXLUA d13555 1 a13556 1 REQD_DIRS d13559 1 a13560 1 REQD_FILES d13563 1 a13564 1 REQD_FILES_PERMS d13567 1 a13568 1 RESOLV_LDFLAGS d13571 1 a13572 1 RM d13575 1 a13576 1 ROOT_GROUP d13579 1 a13580 1 RPCGEN d13583 1 a13584 1 RPM2PKG_PLIST d13587 1 a13588 1 RPM2PKG_STAGE d13591 1 a13592 1 RPM2PKG_SUBPREFIX d13595 1 a13596 1 RPMIGNOREPATH d13599 1 a13600 1 RSSH_CVS_PATH d13603 1 a13604 1 RSSH_RSYNC_PATH d13607 1 a13608 1 RSSH_SFTP_SERVER_PATH d13611 1 a13612 1 RUBYGEM d13615 1 a13616 1 RUBYGEM_NAME d13619 1 a13620 1 RUBYGEM_USE_MANPAGES d13623 1 a13624 1 RUBY_ABI_VERSION d13627 1 a13628 1 RUBY_ARCHINC d13631 1 a13632 1 RUBY_BASE d13635 1 a13636 1 RUBY_BUILD_DOCUMENT d13639 1 a13640 1 RUBY_DOC d13643 1 a13644 1 RUBY_EG d13647 1 a13648 1 RUBY_EXTCONF d13651 1 a13652 1 RUBY_EXTCONF_DEBUG d13655 1 a13656 1 RUBY_GEM_ARCH d13659 1 a13660 1 RUBY_INC d13663 1 a13664 1 RUBY_LIB_BASE d13667 1 a13668 1 RUBY_NOVERSION d13671 1 a13672 1 RUBY_RAILS d13675 1 a13676 1 RUBY_RAILS60_VERSION d13679 1 a13680 1 RUBY_RAILS70_VERSION d13683 1 a13684 1 RUBY_RAILS_DEFAULT d13687 1 a13688 1 RUBY_RAILS_STRICT_DEP d13691 1 a13692 1 RUBY_SETUP d13695 1 a13696 1 RUBY_SHLIBALIAS d13699 1 a13700 1 RUBY_SIMPLE_INSTALL d13703 1 a13704 1 RUBY_SITELIB d13707 1 a13708 1 RUBY_SITERIDIR d13711 1 a13712 1 RUBY_SRCDIR d13715 1 a13716 1 RUBY_SUFFIX d13719 1 a13720 1 RUBY_USE_PTHREAD d13723 1 a13724 1 RUBY_VENDORLIB d13727 1 a13728 1 RUBY_VER d13731 1 a13732 1 RUBY_VERSIONS_ACCEPTED d13735 1 a13736 1 RUBY_VERSION_DEFAULT d13739 1 a13740 1 RUBY_VER_DIR d13743 1 a13744 1 RUN_LDCONFIG d13747 1 a13748 1 SCO d13751 1 a13752 1 SCREWS_USER d13755 1 a13756 1 SCROLLKEEPER_DATADIR d13759 1 a13760 1 SCROLLKEEPER_UPDATEDB d13763 1 a13764 1 SDL12_TYPE d13767 1 a13768 1 SETGIDGAME d13771 1 a13772 1 SETUID_ROOT_PERMS d13775 1 a13776 1 SHLIB d13779 1 a13780 1 SILC_CLIENT_WITH_PERL d13783 1 a13784 1 SKIP_DEPENDS d13787 1 a13788 1 SMF_MANIFEST d13791 1 a13792 1 SMF_METHOD_SHELL d13795 1 a13796 1 SMF_NAME d13799 1 a13800 1 SMF_SRCDIR d13803 1 a13804 1 SNIPROXY_USER d13807 1 a13808 1 SPECIAL_PERMS d13811 1 a13812 1 SSH_SUID d13815 1 a13816 1 SSYNC_PAWD d13819 1 a13820 1 STRIP d13823 1 a13824 1 STRIP_DEBUG d13827 1 a13828 1 STRIP_FILES_SKIP d13831 1 a13832 1 SUBDIR d13835 1 a13836 1 SUBST_CLASSES d13839 1 a13840 1 SUBST_FILTER_CMD d13843 1 a13844 1 SUBST_NOOP_OK d13847 1 a13848 1 SUBST_SHOW_DIFF d13851 1 a13852 1 SUBST_STAGE d13855 1 a13856 1 SUNWSPROBASE d13859 1 a13860 1 SU_CMD d13863 1 a13864 1 TARGET_ARCH d13867 1 a13868 1 TERMCAP_TYPE d13871 1 a13872 1 TERMINFO_TYPE d13875 1 a13876 1 TEST_DEPENDS d13879 1 a13880 1 TEST_ENV d13883 1 a13884 1 TEST_MAKE_CMD d13887 1 a13888 1 TEST_TARGET d13891 1 a13892 1 TEXLIVE_REV d13895 1 a13896 1 TEXMFSITE d13899 1 a13900 1 TEX_HYPHEN_DAT d13903 1 a13904 1 TEX_TEXMF_DIRS d13907 1 a13908 1 TINYDYN_USER d13911 1 a13912 1 TO d13915 1 a13916 1 TOOLS_ALWAYS_WRAP d13919 1 a13920 1 TOOLS_BROKEN d13923 1 a13924 1 TOOLS_CMDLINE_SED d13927 1 a13928 1 TOOLS_CROSS_DESTDIR d13931 1 a13932 1 TOOLS_FAIL d13935 1 a13936 1 TOOLS_LDCONFIG d13939 1 a13940 1 TOOLS_PATH d13943 1 a13944 1 TOOLS_USE_CROSS_COMPILE d13947 1 a13948 1 TTF_FONTS_DIR d13951 1 a13952 1 UAC_REQD_EXECS d13955 1 a13956 1 UCSPI_SSL_USER d13959 1 a13960 1 UNPRIVILEGED d13963 1 a13964 1 UNPRIVILEGED_GROUPS d13967 1 a13968 1 UNWRAP_FILES d13971 1 a13972 1 UPDATE_GEMSPEC d13975 1 a13976 1 URI d13979 1 a13980 1 USERPPP_GROUP d13983 1 a13984 1 USE_ABI_DEPENDS d13987 1 a13988 1 USE_BSD_MAKEFILE d13991 1 a13992 1 USE_CROSS_COMPILE d13995 1 a13996 1 USE_CWRAPPERS d13999 1 a14000 1 USE_FEATURES d14003 1 a14004 1 USE_GCC_RUNTIME d14007 1 a14008 1 USE_JAVA d14011 1 a14012 1 USE_LANGUAGES d14015 1 a14016 1 USE_NATIVE_GCC d14019 1 a14020 1 USE_PKGSRC_GCC d14023 1 a14024 1 USE_PKGTASKS d14027 1 a14028 1 USE_RUBY_EXTCONF d14031 1 a14032 1 USE_RUBY_SETUP d14035 1 a14036 1 USE_TOOLS d14039 1 a14040 1 UUCP_USER d14043 1 a14044 1 VARNAME d14047 1 a14048 1 WARNING_MSG d14051 1 a14052 1 WCALC_CGIPATH d14055 1 a14056 1 WCALC_HTMLPATH d14059 1 a14060 1 WRAPPER_CC d14063 1 a14064 1 WRKDIR d14067 1 a14068 1 WRKDIR_LOCKTYPE d14071 1 a14072 1 WRKOBJDIR d14075 1 a14076 1 X10_PORT d14079 1 a14080 1 X11BASE d14083 1 a14084 1 X11_TYPE d14087 1 a14088 1 X509_KEY d14091 1 a14092 1 XLOCK_DEFAULT_MODE d14095 1 a14096 1 XMKMF_FLAGS d14099 1 a14100 1 YES d14103 1 a14104 1 __stdc__ d14107 1 a14108 1 accept d14111 1 a14112 1 acquire-lock d14115 1 a14116 1 added d14119 1 a14120 1 alloca d14123 1 a14124 1 aslr d14127 1 a14128 1 atlas d14131 1 a14132 1 automake d14135 1 a14136 1 awk d14139 1 a14140 1 big-endian d14143 1 a14144 1 bind d14147 1 a14148 1 blas d14151 1 a14152 1 broken d14155 1 a14156 1 bsd d14159 1 a14160 1 build d14163 1 a14164 1 buildlink-directories d14167 1 a14168 1 c d14171 1 a14172 1 ccache d14175 1 a14176 1 cdefs d14179 1 a14180 1 changes d14183 1 a14184 1 changes-entry-noupdate d14187 1 a14188 1 check-clean d14191 1 a14192 1 check-files-clean d14195 1 a14196 1 checksum d14199 1 a14200 1 clean d14203 1 a14204 1 cleandir d14207 1 a14208 1 commit-changes-entry d14211 1 a14212 1 compiler d14215 1 a14216 1 config.guess d14219 1 a14220 1 configuration d14223 1 a14224 1 configure-env d14227 1 a14228 1 configure_args d14231 1 a14232 1 cos d14235 1 a14236 1 cputime d14239 1 a14240 1 csh d14243 1 a14244 1 debug d14247 1 a14248 1 declare d14251 1 a14252 1 depend d14255 1 a14256 1 depends d14259 1 a14260 1 depends-fetch d14263 1 a14264 1 describe d14267 1 a14268 1 disable d14271 1 a14272 1 distinfo d14275 1 a14276 1 dlopen d14279 1 a14280 1 do-clean d14283 1 a14284 1 do-configure-post-hook d14287 1 a14288 1 do-fetch d14291 1 a14292 1 emul d14295 1 a14296 1 emul-fetch d14299 1 a14300 1 emulator d14303 1 a14304 1 endian d14307 1 a14308 1 ensurepip d14311 1 a14312 1 errx d14315 1 a14316 1 exp d14319 1 a14320 1 fabs d14323 1 a14324 1 features d14327 1 a14328 1 fetch-list d14331 1 a14332 1 forbids d14335 1 a14336 1 format d14339 1 a14340 1 fortify_source d14343 1 a14344 1 fts d14347 1 a14348 1 fts_open d14351 1 a14352 1 fts_set d14355 1 a14356 1 gethostbyaddr d14359 1 a14360 1 gethostbyname2 d14363 1 a14364 1 getprogname d14367 1 a14368 1 getservbyport d14371 1 a14372 1 gettext d14375 1 a14376 1 gitlab d14379 1 a14380 1 gnu d14383 1 a14384 1 go d14387 1 a14388 1 golang d14391 1 a14392 1 hashbang d14395 1 a14396 1 help d14399 1 a14400 1 increment d14403 1 a14404 1 inet_aton d14407 1 a14408 1 interpreter d14411 1 a14412 1 ip4 d14415 1 a14416 1 ipv4 d14419 1 a14420 1 iso d14423 1 a14424 1 krb d14427 1 a14428 1 ksh d14431 1 a14432 1 latex d14435 1 a14436 1 libintl_gettext d14439 1 a14440 1 libnbcompat d14443 1 a14444 1 libtool d14447 1 a14448 1 license d14451 1 a14452 1 little-endian d14455 1 a14456 1 locking d14459 1 a14460 1 lvalue d14463 1 a14464 1 makesum d14467 1 a14468 1 meta d14471 1 a14472 1 meta_package d14475 1 a14476 1 mk.conf d14479 1 a14480 1 mount d14483 1 a14484 1 moved d14487 1 a14488 1 mremap d14491 1 a14492 1 nbcompat d14495 1 a14496 1 node d14499 1 a14500 1 nodejs d14503 1 a14504 1 obstack_ptr_grow d14507 1 a14508 1 only d14511 1 a14512 1 options d14515 1 a14516 1 order d14519 1 a14520 1 override-intltool d14523 1 a14524 1 package d14527 1 a14528 1 path d14531 1 a14532 1 paxctl d14535 1 a14536 1 pc d14539 1 a14540 1 perl5 d14543 1 a14544 1 php d14547 1 a14548 1 pkg-config d14551 1 a14552 1 platform d14555 1 a14556 1 post-extract d14559 1 a14560 1 post-wrapper d14563 1 a14564 1 pre-configure-checks-hook d14567 1 a14568 1 pre-fetch d14571 1 a14572 1 print-plist d14575 1 a14576 1 privileged-install-hook d14579 1 a14580 1 python d14583 1 a14584 1 readme-all d14587 1 a14588 1 recv d14591 1 a14592 1 regcomp d14595 1 a14596 1 release-lock d14599 1 a14600 1 remove d14603 1 a14604 1 rename d14607 1 a14608 1 reorder d14611 1 a14612 1 replace_interpreter d14615 1 a14616 1 resolv d14619 1 a14620 1 ruby d14623 1 a14624 1 sendfile d14627 1 a14628 1 setenv d14631 1 a14632 1 setprogname d14635 1 a14636 1 sh d14639 1 a14640 1 show d14643 1 a14644 1 show-build-defs d14647 1 a14648 1 show-depends-dirs d14651 1 a14652 1 show-depends-recursive d14655 1 a14656 1 show-distfiles d14659 1 a14660 1 show-subdir-var d14663 1 a14664 1 show-var d14667 1 a14668 1 snprintf d14671 1 a14672 1 ssp d14675 1 a14676 1 stage-install d14679 1 a14680 1 strict d14683 1 a14684 1 strndup d14687 1 a14688 1 strsep d14691 1 a14692 1 substitutions d14695 1 a14696 1 sunpro d14699 1 a14700 1 symlink d14703 1 a14704 1 test-env d14707 1 a14708 1 texlive d14711 1 a14712 1 todo d14715 1 a14716 1 tools d14719 1 a14720 1 transitive d14723 1 a14724 1 ulimit d14727 1 a14728 1 undo-replace d14731 1 a14732 1 unprivileged d14735 1 a14736 1 unstripped d14739 1 a14740 1 updated d14743 1 a14744 1 upload-distfiles d14747 1 a14748 1 user d14751 1 a14752 1 vasprintf d14755 1 a14756 1 vsnprintf d14759 1 a14760 1 warning d14763 1 a14764 1 warnx d14767 1 a14768 1 wattr_on d14771 1 a14772 1 wrapper d14775 1 a14776 1   @ 1.349 log @doc/pkgsrc.*: regen @ text @d6326 1 a6326 2 BUILD_DEPENDS, TEST_DEPENDS, or d6331 1 a6331 2 to build, while setting it to test causes it to become a test dependency. By default, the full dependency is d9973 1 a9973 1 $ vi Makefile # add SUBDIRS+=pkgname line a11850 1 ALSA_PC d11852 1 a11854 1 AMANDA_TMP d11856 1 a11858 1 AMANDA_VAR d11860 1 a11862 1 APACHE_MODULE_NAME d11864 1 a11866 1 APACHE_MODULE_SRCDIR d11868 1 a11870 1 APACHE_SUEXEC_CONFIGURE_ARGS d11872 1 a11874 1 APACHE_USER d11876 1 a11878 1 APPEND_ELF d11880 1 a11882 1 AUDIT_PACKAGES_FLAGS d11884 1 a11886 1 AUTOMAKE_OVERRIDE d11888 1 a11890 1 AUTO_MKDIRS d11892 1 a11894 1 BDBBASE d11896 1 a11898 1 BDB_DEFAULT d11900 1 a11902 1 BDB_TYPE d11904 1 a11906 1 BINCIMAP_USER d11908 1 a11910 1 BIND_GROUP d11912 1 a11914 1 BINOWN d11916 1 a11918 1 BIN_INSTALL_FLAGS d11920 1 a11922 1 BLAS d11924 1 a11926 1 BLAS_C_INTERFACE d11928 1 a11930 1 BLAS_INDEX64 d11932 1 a11934 1 BLAS_PC d11936 1 a11938 1 BOOTSTRAP_DEPENDS d11940 1 a11942 1 BROKEN_EXCEPT_ON_PLATFORM d11944 1 a11946 1 BSDSRCDIR d11948 1 a11950 1 BSD_MAKE_ENV d11952 1 a11954 1 BUILDLINK_AUTO_VARS d11956 1 a11958 1 BUILDLINK_CONTENTS_FILTER a11959 3 BUILDLINK_DEPMETHOD a12054 1 CHECKOUT_DATE d12056 1 a12058 1 CHECK_FAKEHOME d12060 1 a12062 1 CHECK_FILES_SKIP d12064 1 a12066 1 CHECK_HEADERS d12068 1 a12070 1 CHECK_INTERPRETER d12072 1 a12074 1 CHECK_PERMS d12076 1 a12078 1 CHECK_PERMS_SKIP d12080 1 a12082 1 CHECK_PIE_SKIP d12084 1 a12086 1 CHECK_PORTABILITY d12088 1 a12090 1 CHECK_PORTABILITY_SKIP d12092 1 a12094 1 CHECK_RELRO_SKIP d12096 1 a12098 1 CHECK_SHLIBS d12100 1 a12102 1 CHECK_SHLIBS_SUPPORTED d12104 1 a12106 1 CHECK_SSP d12108 1 a12110 1 CHECK_SSP_SUPPORTED d12112 1 a12114 1 CHECK_STRIPPED_SKIP d12116 1 a12118 1 CHECK_WRKREF_EXTRA_DIRS d12120 1 a12122 1 CLAMAV_DBDIR d12124 1 a12126 1 CLAMAV_USER d12128 1 a12130 1 CLEANDEPENDS d12132 1 a12134 1 CMAKE_INSTALL_NAME_DIR d12136 1 a12138 1 CMAKE_MODULE_PATH_OVERRIDE d12140 1 a12142 1 CMAKE_PREFIX_PATH a12143 11 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12230 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12232 1 a12234 1 CYRUS_GROUP d12236 1 a12238 1 CYRUS_USER d12240 1 a12242 1 DAEMONTOOLS_LOG_USER d12244 1 a12246 1 DARWIN_REQUIRES_FILTER d12248 1 a12250 1 DBUS_USER d12252 1 a12254 1 DEFANG_USER d12256 1 a12258 1 DEFAULT_DISTFILES d12260 1 a12262 1 DEFAULT_SERIAL_DEVICE d12264 1 a12266 1 DEINSTALLDEPENDS d12268 1 a12270 1 DEINSTALL_TEMPLATES d12272 1 a12274 1 DELAYED_WARNING_MSG d12276 1 a12278 1 DEPENDS_TARGET d12280 1 a12282 1 DESTDIR d12284 1 a12286 1 DIALER_GROUP d12288 1 a12290 1 DISTDIR d12292 1 a12294 1 DISTINFO_FILE d12296 1 a12298 1 DIST_PATH d12300 1 a12302 1 DJBDNS_AXFR_USER d12304 1 a12306 1 DJBDNS_DJBDNS_GROUP d12308 1 a12310 1 DJBDNS_RBL_USER d12312 1 a12314 1 DLOPEN_REQUIRE_PTHREADS d12316 1 a12318 1 DL_CFLAGS d12320 1 a12322 1 DL_LIBS d12324 1 a12326 1 DOCOWN d12328 1 a12330 1 DQCACHE_GROUP d12332 1 a12334 1 DT_LAYOUT d12336 1 a12338 1 DYNAMIC_SITES_SCRIPT d12340 1 a12342 1 ECHO_N d12344 1 a12346 1 EMACS_TYPE d12348 1 a12350 1 EMULSUBDIR d12352 1 a12354 1 EMUL_ARCH d12356 1 a12358 1 EMUL_EXEC_FMT d12360 1 a12362 1 EMUL_MODULES d12364 1 a12366 1 EMUL_PKG_FMT d12368 1 a12370 1 EMUL_PLATFORMS d12372 1 a12374 1 EMUL_REQD d12376 1 a12378 1 ERROR_MSG d12380 1 a12382 1 EXIM_USER d12384 1 a12386 1 EXTRACTOR d12388 1 a12390 1 EXTRACT_CMD_DEFAULT d12392 1 a12394 1 EXTRACT_ELEMENTS d12396 1 a12398 1 EXTRACT_ONLY d12400 1 a12402 1 EXTRACT_SUFX d12404 1 a12406 1 FAIL d12408 1 a12410 1 FAIL_MSG d12412 1 a12414 1 FAM d12416 1 a12418 1 FAM_DEFAULT d12420 1 a12422 1 FCPATH d12424 1 a12426 1 FEATURE_LDFLAGS d12428 1 a12430 1 FETCH_AFTER_ARGS d12432 1 a12434 1 FETCH_CMD d12436 1 a12438 1 FETCH_PROXY d12440 1 a12442 1 FETCH_TIMEOUT d12444 1 a12446 1 FETCH_USING d12448 1 a12450 1 FILES_SUBST_SED a12451 3 FONTDIR a12458 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d12544 1 a12544 5 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR a12546 9 GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG GNU d12548 1 a12550 1 GNU_CONFIGURE_INFODIR d12552 1 a12554 1 GNU_CONFIGURE_QUIET d12556 1 a12558 1 GODEP_REDIRECTS d12560 1 a12562 1 GO_DEPS d12564 1 a12566 1 GO_EXTRA_MOD_DIRS d12568 1 a12570 1 GO_SRCPATH d12572 1 a12574 1 GRUB_NETWORK_CARDS d12576 1 a12578 1 GRUB_SCAN_ARGS a12579 3 HASKELL_COMPILER d12588 1 a12588 1 HASKELL_OPTIMIZATION_LEVEL d12591 1 a12592 1 HASKELL_UNRESTRICT_DEPENDENCIES d12595 1 a12595 1 HAS_CONFIGURE a12598 5 HG_REPO HG_REPOSITORIES HG_TAG d12600 1 a12602 1 HOST_PKGTOOLS_ARGS d12604 1 a12606 1 HOWL_GROUP d12608 1 a12610 1 ICCBASE d12612 1 a12614 1 ICON_THEMES d12616 1 a12618 1 IGNORE_CCACHE d12620 1 a12622 1 IGNORE_INTERACTIVE_FETCH d12624 1 a12626 1 IMAKEOPTS d12628 1 a12630 1 IMAKE_MANINSTALL d12632 1 a12634 1 IMDICTDIR d12636 1 a12638 1 INFO_DIR d12640 1 a12642 1 INFO_FILES_VERBOSE d12644 1 a12646 1 INIT_SYSTEM d12648 1 a12650 1 INN_GROUP d12652 1 a12654 1 INSTALLATION_DIRS d12656 1 a12658 1 INSTALL_ENV d12660 1 a12662 1 INSTALL_SRC d12664 1 a12666 1 INSTALL_UNSTRIPPED d12668 1 a12670 1 IRCD_HYBRID_IRC_USER d12672 1 a12674 1 IRCD_HYBRID_NICLEN d12676 1 a12678 1 IRCD_HYBRID_SYSLOG_FACILITY d12680 1 a12682 1 IRIX d12684 1 a12686 1 JABBERD_GROUP d12688 1 a12690 1 JABBERD_PIDDIR a12691 2 a12692 1 JAVA_APP_PATH a12694 1 JAVA_APP_TARGETS d12696 1 a12698 1 JAVA_CLASSPATH d12700 1 a12702 1 JAVA_LD_LIBRARY_PATH d12704 1 a12706 1 JAVA_UNLIMIT d12708 1 a12710 1 JPEG_ACCEPTED d12712 1 a12714 1 KERBEROS d12716 1 a12718 1 KJS_USE_PCRE a12719 2 a12720 1 KRB5_ACCEPTED d12723 1 a12724 1 LANGUAGES d12727 1 a12728 1 LAPACKE_PC d12731 1 a12732 1 LAPACK_PC d12735 1 a12736 1 LDCONFIG_ADD_CMD d12739 1 a12740 1 LDD d12743 1 a12744 1 LEAFNODE_GROUP d12747 1 a12748 1 LIBDVDCSS_HOMEPAGE d12751 1 a12752 1 LIBRSVG_TYPE d12755 1 a12756 1 LIBTOOLIZE_PLIST d12759 1 a12760 1 LIBUSB_TYPE d12763 1 a12764 1 LINKER_RPATH_FLAG d12767 1 a12768 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED a12834 1 MAJOR_OS_VERSION d12836 1 a12838 1 MAKE_DIRS d12840 1 a12842 1 MAKE_ENV d12844 1 a12846 1 MAKE_FLAGS d12848 1 a12850 1 MAKE_JOBS_SAFE d12852 1 a12854 1 MANCOMPRESSED_IF_MANZ d12856 1 a12858 1 MANZ d12860 1 a12862 1 MASTER_SITE_BACKUP d12864 1 a12866 1 MASTER_SITE_MOZILLA d12868 1 a12870 1 MASTER_SITE_PERL_CPAN d12872 1 a12874 1 MASTER_SORT_RANDOM d12876 1 a12878 1 MECAB_CHARSET d12880 1 a12882 1 MEDIATOMB_USER d12884 1 a12886 1 MIREDO_GROUP d12888 1 a12890 1 MISSING_FEATURES d12892 1 a12894 1 MKPIE_SUPPORTED d12896 1 a12898 1 MLDONKEY_HOME d12900 1 a12902 1 MONOTONE_GROUP d12904 1 a12906 1 MOTIFBASE d12908 1 a12910 1 MOTIF_TYPE_DEFAULT d12912 1 a12914 1 MSGFMT_STRIP_MSGCTXT a12915 2 a12916 1 MUST a12998 4 OASIS OASIS_BUILD_ARGS a13010 13 OCAML_TOPKG_DOCDIR OCAML_USE_DUNE OCAML_USE_FINDLIB OCAML_USE_OASIS OCAML_USE_OASIS_DYNRUN OCAML_USE_OPAM OCAML_USE_TOPKG d13012 1 a13014 1 ONLY_FOR_COMPILER d13016 1 a13018 1 OPENSSH_CHROOT d13020 1 a13022 1 OPENSSH_USER d13024 1 a13026 1 OPSYS_EMULDIR d13028 1 a13030 1 OS d13032 1 a13034 1 OSX d13036 1 a13038 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d13040 1 a13042 1 OTF_FONTS_DIR d13044 1 a13046 1 OVERRIDE_GEMSPEC a13047 3 OVERRIDE_ROCKSPEC a13094 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13490 4 RCD_DIR RCD_ORDER a13502 1 RCD_SUBR d13504 1 a13506 1 READLINE_DEFAULT d13508 1 a13510 1 REAL_ROOT_GROUP d13512 1 a13514 1 RECURSIVE_MAKE d13516 1 a13518 1 RELRO_SUPPORTED d13520 1 a13522 1 REPLACE_BASH d13524 1 a13526 1 REPLACE_KSH d13528 1 a13530 1 REPLACE_NODEJS d13532 1 a13534 1 REPLACE_PERL d13536 1 a13538 1 REPLACE_PHP d13540 1 a13542 1 REPLACE_QORE d13544 1 a13546 1 REPLACE_RUBY d13548 1 a13550 1 REPLACE_RUBY_PAT d13552 1 a13554 1 REPLACE_TEXLUA d13556 1 a13558 1 REQD_DIRS d13560 1 a13562 1 REQD_FILES d13564 1 a13566 1 REQD_FILES_PERMS d13568 1 a13570 1 RESOLV_LDFLAGS a13571 2 a13572 1 ROCKSPEC_NAME a13574 1 ROCKSPEC_SPECFILE d13576 1 a13578 1 ROOT_GROUP d13580 1 a13582 1 RPCGEN d13584 1 a13586 1 RPM2PKG_PLIST d13588 1 a13590 1 RPM2PKG_STAGE d13592 1 a13594 1 RPM2PKG_SUBPREFIX d13596 1 a13598 1 RPMIGNOREPATH d13600 1 a13602 1 RSSH_CVS_PATH d13604 1 a13606 1 RSSH_RSYNC_PATH d13608 1 a13610 1 RSSH_SFTP_SERVER_PATH d13612 1 a13614 1 RUBYGEM d13616 1 a13618 1 RUBYGEM_NAME d13620 1 a13622 1 RUBYGEM_USE_MANPAGES d13624 1 a13626 1 RUBY_ABI_VERSION d13628 1 a13630 1 RUBY_ARCHINC d13632 1 a13634 1 RUBY_BASE d13636 1 a13638 1 RUBY_BUILD_DOCUMENT d13640 1 a13642 1 RUBY_DOC d13644 1 a13646 1 RUBY_EG d13648 1 a13650 1 RUBY_EXTCONF d13652 1 a13654 1 RUBY_EXTCONF_DEBUG d13656 1 a13658 1 RUBY_GEM_ARCH d13660 1 a13662 1 RUBY_INC d13664 1 a13666 1 RUBY_LIB_BASE d13668 1 a13670 1 RUBY_NOVERSION d13672 1 a13674 1 RUBY_RAILS d13676 1 a13678 1 RUBY_RAILS60_VERSION d13680 1 a13682 1 RUBY_RAILS70_VERSION d13684 1 a13686 1 RUBY_RAILS_DEFAULT d13688 1 a13690 1 RUBY_RAILS_STRICT_DEP d13692 1 a13694 1 RUBY_SETUP d13696 1 a13698 1 RUBY_SHLIBALIAS d13700 1 a13702 1 RUBY_SIMPLE_INSTALL d13704 1 a13706 1 RUBY_SITELIB d13708 1 a13710 1 RUBY_SITERIDIR d13712 1 a13714 1 RUBY_SRCDIR d13716 1 a13718 1 RUBY_SUFFIX d13720 1 a13722 1 RUBY_USE_PTHREAD d13724 1 a13726 1 RUBY_VENDORLIB d13728 1 a13730 1 RUBY_VER d13732 1 a13734 1 RUBY_VERSIONS_ACCEPTED d13736 1 a13738 1 RUBY_VERSION_DEFAULT d13740 1 a13742 1 RUBY_VER_DIR d13744 1 a13746 1 RUN_LDCONFIG d13748 1 a13750 1 SCO d13752 1 a13754 1 SCREWS_USER d13756 1 a13758 1 SCROLLKEEPER_DATADIR d13760 1 a13762 1 SCROLLKEEPER_UPDATEDB d13764 1 a13766 1 SDL12_TYPE d13768 1 a13770 1 SETGIDGAME d13772 1 a13774 1 SETUID_ROOT_PERMS a13775 2 a13776 1 SHORTNAME a13862 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION d13948 1 a13948 1 TTF_FONTDIR a13950 1 TTF_FONTS_DIR d13952 1 a13954 1 UAC_REQD_EXECS d13956 1 a13958 1 UCSPI_SSL_USER d13960 1 a13962 1 UNPRIVILEGED a13963 2 a13964 1 UNPRIVILEGED_USER d13967 1 a13968 1 UNWRAP_PATTERNS d13971 1 a13972 1 UPDATE_TARGET d13975 1 a13976 1 USERGROUP_PHASE d13979 1 a13980 1 USER_SPECIFIC_PKGS d13983 1 a13984 1 USE_APR d13987 1 a13988 1 USE_BUILTIN d13991 1 a13992 1 USE_CURSES d13995 1 a13996 1 USE_DB185 d13999 1 a14000 1 USE_GAMESGROUP d14003 1 a14004 1 USE_IMAKE d14007 1 a14008 1 USE_JAVA2 d14011 1 a14012 1 USE_LIBTOOL d14015 1 a14016 1 USE_NETBSD_REPO d14019 1 a14020 1 USE_PKGSRC_GCC_RUNTIME d14023 1 a14024 1 USE_PKG_ADMIN_DIGEST d14027 1 a14028 1 USE_RUBY_INSTALL d14031 1 a14032 1 USE_RUBY_SETUP_PKG d14035 1 a14036 1 UUCP_GROUP d14039 1 a14040 1 VARBASE d14043 1 a14044 1 VIM_EXTRA_OPTS d14047 1 a14048 1 WCALC_CGIDIR d14051 1 a14052 1 WCALC_HTMLDIR d14055 1 a14056 1 WDM_MANAGERS d14059 1 a14060 1 WRAPPER_REORDER_CMDS d14063 1 a14064 1 WRKDIR_BASENAME d14067 1 a14068 1 WRKLOG d14071 1 a14072 1 WRKSRC d14075 1 a14076 1 X11 d14079 1 a14080 1 X11_PKGSRCDIR d14083 1 a14084 1 X509_CERTIFICATE d14087 1 a14088 1 XAW_TYPE d14091 1 a14092 1 XMKMF d14095 1 a14096 1 XXX d14099 1 a14099 1 XXXX d14244 1 a14244 1 cvs a14246 1 debug d14248 1 a14250 1 declare d14252 1 a14254 1 depend d14256 1 a14258 1 depends d14260 1 a14262 1 depends-fetch d14264 1 a14266 1 describe d14268 1 a14270 1 disable d14272 1 a14274 1 distinfo d14276 1 a14278 1 dlopen d14280 1 a14282 1 do-clean d14284 1 a14286 1 do-configure-post-hook d14288 1 a14290 1 do-fetch d14292 1 a14294 1 emul d14296 1 a14298 1 emul-fetch d14300 1 a14302 1 emulator a14303 2 a14304 1 endif a14342 1 fossil d14344 1 a14346 1 fts d14348 1 a14350 1 fts_open d14352 1 a14354 1 fts_set d14356 1 a14358 1 gethostbyaddr d14360 1 a14362 1 gethostbyname2 d14364 1 a14366 1 getprogname d14368 1 a14370 1 getservbyport a14371 2 a14372 1 git a14398 1 hg d14400 1 a14402 1 increment d14404 1 a14406 1 inet_aton d14408 1 a14410 1 interpreter d14412 1 a14414 1 ip4 d14416 1 a14418 1 ipv4 d14420 1 a14422 1 iso d14424 1 a14426 1 krb d14428 1 a14430 1 ksh d14432 1 a14434 1 latex d14436 1 a14438 1 libintl_gettext d14440 1 a14442 1 libnbcompat d14444 1 a14446 1 libtool d14448 1 a14450 1 license d14452 1 a14454 1 little-endian d14456 1 a14458 1 locking d14460 1 a14462 1 lvalue d14464 1 a14466 1 makesum a14467 3 mercurial d14564 1 a14564 1 pre-configure a14566 1 pre-configure-checks-hook d14568 1 a14570 1 pre-fetch d14572 1 a14574 1 print-plist d14576 1 a14578 1 privileged-install-hook d14580 1 a14582 1 python d14584 1 a14586 1 readme-all d14588 1 a14590 1 recv d14592 1 a14594 1 regcomp d14596 1 a14598 1 release-lock d14600 1 a14602 1 remove d14604 1 a14606 1 rename d14608 1 a14610 1 reorder d14612 1 a14614 1 replace_interpreter d14616 1 a14618 1 resolv d14620 1 a14622 1 ruby d14624 1 a14626 1 sendfile d14628 1 a14630 1 setenv d14632 1 a14634 1 setprogname d14636 1 a14638 1 sh d14640 1 a14642 1 show d14644 1 a14646 1 show-build-defs d14648 1 a14650 1 show-depends-dirs d14652 1 a14654 1 show-depends-recursive d14656 1 a14658 1 show-distfiles d14660 1 a14662 1 show-subdir-var d14664 1 a14666 1 show-var d14668 1 a14670 1 snprintf d14672 1 a14674 1 ssp d14676 1 a14678 1 stage-install d14680 1 a14682 1 strict d14684 1 a14686 1 strndup d14688 1 a14690 1 strsep a14691 2 a14692 1 subversion d14700 1 a14700 1 svn a14702 1 symlink d14704 1 a14706 1 test-env d14708 1 a14710 1 texlive d14712 1 a14714 1 todo d14716 1 a14718 1 tools d14720 1 a14722 1 transitive d14724 1 a14726 1 ulimit d14728 1 a14730 1 undo-replace d14732 1 a14734 1 unprivileged d14736 1 a14738 1 unstripped d14740 1 a14742 1 updated d14744 1 a14746 1 upload-distfiles d14748 1 a14750 1 user d14752 1 a14754 1 vasprintf d14756 1 a14758 1 vsnprintf d14760 1 a14762 1 warning d14764 1 a14766 1 warnx d14768 1 a14770 1 wattr_on d14772 1 a14774 1 wrapper d14776 1 @ 1.348 log @doc/pkgsrc.*: regen @ text @d6326 2 a6327 1 BUILD_DEPENDS or d6332 2 a6333 1 to build. By default, the full dependency is @ 1.347 log @doc/pkgsrc.*: regen @ text @d4581 1 a4581 1 setting USE_CMAKE to yes. d4585 8 a4592 3 The top directory argument is given by the CMAKE_ARG_PATH variable, that defaults to . (relative to CONFIGURE_DIRS)

    d11851 1 d11853 2 d11856 1 a11858 1 AMANDA_USER d11860 1 a11862 1 APACHE_GROUP d11864 1 a11866 1 APACHE_MODULE_SRC d11868 1 a11870 1 APACHE_PKG_PREFIX d11872 1 a11874 1 APACHE_SUEXEC_DOCROOT d11876 1 a11878 1 APPEND_ABI d11880 1 a11882 1 ARLA_CACHE d11884 1 a11886 1 AUTOCONF_REQD d11888 1 a11890 1 AUTOMAKE_REQD d11892 1 a11894 1 BDB185_DEFAULT d11896 1 a11898 1 BDB_ACCEPTED d11900 1 a11902 1 BDB_LIBS d11904 1 a11906 1 BINCIMAP_GROUP d11908 1 a11910 1 BIND_DIR d11912 1 a11914 1 BIND_USER d11916 1 a11918 1 BINPKG_SITES d11920 1 a11922 1 BISON_PKGDATADIR d11924 1 a11926 1 BLAS_ACCEPTED d11928 1 a11930 1 BLAS_INCLUDES d11932 1 a11934 1 BLAS_LIBS d11936 1 a11938 1 BLAS_TYPE d11940 1 a11942 1 BROKEN d11944 1 a11946 1 BROKEN_ON_PLATFORM d11948 1 a11950 1 BSDXSRCDIR d11952 1 a11954 1 BUILDLINK_AUTO_DIRS d11956 1 a11958 1 BUILDLINK_CFLAGS d11960 1 d11963 1 a11963 1 BUILDLINK_CPPFLAGS d12059 1 d12061 2 d12064 1 a12066 1 CHECK_FILES d12068 1 a12070 1 CHECK_FILES_STRICT d12072 1 a12074 1 CHECK_HEADERS_SKIP d12076 1 a12078 1 CHECK_INTERPRETER_SKIP d12080 1 a12082 1 CHECK_PERMS_AUTOFIX d12084 1 a12086 1 CHECK_PIE d12088 1 a12090 1 CHECK_PIE_SUPPORTED d12092 1 a12094 1 CHECK_PORTABILITY_EXPERIMENTAL d12096 1 a12098 1 CHECK_RELRO d12100 1 a12102 1 CHECK_RELRO_SUPPORTED d12104 1 a12106 1 CHECK_SHLIBS_SKIP d12108 1 a12110 1 CHECK_SHLIBS_TOXIC d12112 1 a12114 1 CHECK_SSP_SKIP d12116 1 a12118 1 CHECK_STRIPPED d12120 1 a12122 1 CHECK_WRKREF d12124 1 a12126 1 CHECK_WRKREF_SKIP d12128 1 a12130 1 CLAMAV_GROUP d12132 1 a12134 1 CLANGBASE d12136 1 a12138 1 CMAKE_DEPENDENCIES_REWRITE d12140 1 a12142 1 CMAKE_INSTALL_PREFIX d12144 1 a12146 1 CMAKE_PKGSRC_BUILD_FLAGS d12148 5 d12155 5 a12159 1 CMAKE_USE_GNU_INSTALL_DIRS d12247 17 d12265 2 d12268 1 a12270 1 CYRUS_IDLE d12272 1 a12274 1 DAEMONTOOLS_GROUP d12276 1 a12278 1 DARWIN_NO_SYSTEM_LIBS d12280 1 a12282 1 DBUS_GROUP d12284 1 a12286 1 DEFANG_GROUP d12288 1 a12290 1 DEFAULT_ACCEPTABLE_LICENSES d12292 1 a12294 1 DEFAULT_IRC_SERVER d12296 1 a12298 1 DEF_UMASK d12300 1 a12302 1 DEINSTALL_SRC d12304 1 a12306 1 DELAYED_ERROR_MSG d12308 1 a12310 1 DEPENDS d12312 1 a12314 1 DEPENDS_TYPE d12316 1 a12318 1 DESTDIR_VARNAME d12320 1 a12322 1 DIGEST_REQD d12324 1 a12326 1 DISTFILES d12328 1 a12330 1 DISTNAME d12332 1 a12334 1 DIST_SUBDIR d12336 1 a12338 1 DJBDNS_CACHE_USER d12340 1 a12342 1 DJBDNS_LOG_USER d12344 1 a12346 1 DJBDNS_TINY_USER d12348 1 a12350 1 DL_AUTO_VARS d12352 1 a12354 1 DL_LDFLAGS d12356 1 a12358 1 DNS d12360 1 a12362 1 DOWNLOADED_DISTFILE d12364 1 a12366 1 DQCACHE_USER d12368 1 a12370 1 DYNAMIC_SITES_CMD d12372 1 a12374 1 ECHO d12376 1 a12378 1 ELK_GUI d12380 1 a12382 1 EMULDIR d12384 1 a12386 1 EMULSUBDIRSLASH d12388 1 a12390 1 EMUL_DISTRO d12392 1 a12394 1 EMUL_IS_NATIVE d12396 1 a12398 1 EMUL_OPSYS d12400 1 a12402 1 EMUL_PLATFORM d12404 1 a12406 1 EMUL_PREFER d12408 1 a12410 1 EMUL_TYPE d12412 1 a12414 1 EXIM_GROUP d12416 1 a12418 1 EXPORT_SYMBOLS_LDFLAGS d12420 1 a12422 1 EXTRACT_CMD d12424 1 a12426 1 EXTRACT_DIR d12428 1 a12430 1 EXTRACT_ENV d12432 1 a12434 1 EXTRACT_OPTS d12436 1 a12438 1 EXTRACT_USING d12440 1 a12442 1 FAILOVER_FETCH d12444 1 a12446 1 FAKE_NCURSES d12448 1 a12450 1 FAM_ACCEPTED d12452 1 a12454 1 FAM_SERVER d12456 1 a12458 1 FEATURE_CPPFLAGS d12460 1 a12462 1 FEATURE_LIBS d12464 1 a12466 1 FETCH_BEFORE_ARGS d12468 1 a12470 1 FETCH_OUTPUT_ARGS d12472 1 a12474 1 FETCH_RESUME_ARGS d12476 1 a12478 1 FETCH_USE_IPV4_ONLY d12480 1 a12482 1 FILES_SUBST d12484 1 d12487 1 a12487 1 FIX_SYSTEM_HEADERS d12495 8 d12588 13 a12600 1 GNU d12603 1 a12604 1 GNU_CONFIGURE_INFODIR d12607 1 a12608 1 GNU_CONFIGURE_QUIET d12611 1 a12612 1 GODEP_REDIRECTS d12615 1 a12616 1 GO_DEPS d12619 1 a12620 1 GO_EXTRA_MOD_DIRS d12623 1 a12624 1 GO_SRCPATH d12627 1 a12628 1 GRUB_NETWORK_CARDS d12631 1 a12632 1 GRUB_SCAN_ARGS d12635 1 d12637 4 a12640 1 HASKELL_ENABLE_DYNAMIC_EXECUTABLE d12659 5 d12665 2 d12668 1 a12670 1 HOST_SPECIFIC_PKGS d12672 1 a12674 1 HOWL_USER d12676 1 a12678 1 ICECAST_CHROOTDIR d12680 1 a12682 1 IDOBASE d12684 1 a12686 1 IGNORE_INFO_DIRS d12688 1 a12690 1 IMAKE d12692 1 a12694 1 IMAKE_MAKE d12696 1 a12698 1 IMAP_UW_CCLIENT_MBOX_FMT d12700 1 a12702 1 INCOMPAT_CURSES d12704 1 a12706 1 INFO_FILES d12708 1 a12710 1 INFO_MSG d12712 1 a12714 1 INN_DATA_DIR d12716 1 a12718 1 INN_USER d12720 1 a12722 1 INSTALLATION_DIRS_FROM_PLIST d12724 1 a12726 1 INSTALL_SH_OVERRIDE d12728 1 a12730 1 INSTALL_TEMPLATES d12732 1 a12734 1 IRCD_HYBRID_IRC_GROUP d12736 1 a12738 1 IRCD_HYBRID_MAXCONN d12740 1 a12742 1 IRCD_HYBRID_SYSLOG_EVENTS d12744 1 a12746 1 IRCD_HYBRID_TOPICLEN d12748 1 a12750 1 IRRD_USE_PGP d12752 1 a12754 1 JABBERD_LOGDIR d12756 1 a12758 1 JABBERD_SPOOLDIR d12760 1 d12763 1 d12765 2 d12768 1 a12770 1 JAVA_HOME d12772 1 a12774 1 JAVA_NAME d12776 1 a12778 1 JAVA_WRAPPERS d12780 1 a12782 1 JPEG_DEFAULT d12784 1 a12786 1 KERMIT_SUID_UUCP d12788 1 a12790 1 KNEWS_DOMAIN_FILE d12792 1 a12794 1 KRB5_ACCEPTED d12796 1 a12798 1 LANGUAGES d12800 1 a12802 1 LAPACKE_PC d12804 1 a12806 1 LAPACK_PC d12808 1 a12810 1 LDCONFIG_ADD_CMD d12812 1 a12814 1 LDD d12816 1 a12818 1 LEAFNODE_GROUP d12820 1 a12822 1 LIBDVDCSS_HOMEPAGE d12824 1 a12826 1 LIBRSVG_TYPE d12828 1 a12830 1 LIBTOOLIZE_PLIST d12832 1 a12834 1 LIBUSB_TYPE d12836 1 a12838 1 LINKER_RPATH_FLAG d12840 5 d12911 1 d12913 2 d12916 1 a12918 1 MAKE_DIRS_PERMS d12920 1 a12922 1 MAKE_FILE d12924 1 a12926 1 MAKE_JOBS d12928 1 a12930 1 MAKE_PROGRAM d12932 1 a12934 1 MANINSTALL d12936 1 a12938 1 MASTER_SITES d12940 1 a12942 1 MASTER_SITE_LOCAL d12944 1 a12946 1 MASTER_SITE_OVERRIDE d12948 1 a12950 1 MASTER_SORT d12952 1 a12954 1 MASTER_SORT_REGEX d12956 1 a12958 1 MEDIATOMB_GROUP d12960 1 a12962 1 MIPSPROBASE d12964 1 a12966 1 MIREDO_USER d12968 1 a12970 1 MKDIR d12972 1 a12974 1 MLDONKEY_GROUP d12976 1 a12978 1 MLDONKEY_USER d12980 1 a12982 1 MONOTONE_USER d12984 1 a12986 1 MOTIF_TYPE d12988 1 a12990 1 MPI_TYPE d12992 1 a12994 1 MSGFMT_STRIP_MSGID_PLURAL d12996 1 d13135 4 d13151 1 d13153 2 d13156 1 a13158 1 P4GROUP d13160 1 a13162 1 P4ROOT d13164 1 a13166 1 PACKAGES d13168 1 a13170 1 PAMBASE d13172 1 a13174 1 PAPERSIZE d13176 1 a13178 1 PATCHDIR d13180 1 a13182 1 PATCH_ARGS d13184 1 a13186 1 PATCH_DIST_ARGS d13188 1 a13190 1 PATCH_DIST_STRIP d13192 1 a13194 1 PATCH_STRIP d13196 1 d13199 6 a13204 2 PCCBASE PEAR_CMD d13207 1 a13208 1 PEAR_PACKAGE_XML d13211 1 a13212 1 PERL5_CONFIGURE d13215 1 a13216 1 PERL5_LDFLAGS d13219 1 a13220 1 PERL5_MODULE_TYPE d13223 1 a13224 1 PERL5_PACKLIST_DIR d13227 1 a13228 1 PERL5_SITEBASE d13231 1 a13232 1 PERL5_VENDORBASE d13235 1 a13236 1 PFVAR_H d13239 1 a13240 1 PGGROUP d13243 1 a13244 1 PGPKGSRCDIR d13247 1 a13248 1 PGSQL_VERSION d13251 1 a13252 1 PGSQL_VERSION_DEFAULT d13255 1 a13256 1 PG_LIB_EXT d13259 1 a13260 1 PHPCOMMON_MK d13263 1 a13264 1 PHP_BASE_VERS d13267 1 a13268 1 PHP_EXTENSION_DIR d13271 1 a13272 1 PHP_PKG_PREFIX d13275 1 a13276 1 PHP_VERSIONS_ACCEPTED d13279 1 a13280 1 PHP_VERSION_DEFAULT d13283 1 a13284 1 PILRC_USE_GTK d13287 1 a13288 1 PKGCONFIG_FILE d13291 1 a13292 1 PKGCONFIG_OVERRIDE_STAGE d13295 1 a13296 1 PKGGNUDIR d13299 1 a13300 1 PKGLOCALEDIR d13303 1 a13304 1 PKGNAME d13307 1 a13308 1 PKGPATH d13311 1 a13312 1 PKGSRC_BLAS_TYPES d13315 1 a13316 1 PKGSRC_COMPILER d13319 1 a13320 1 PKGSRC_LOCKTYPE d13323 1 a13324 1 PKGSRC_MESSAGE_RECIPIENTS d13327 1 a13328 1 PKGSRC_MKREPRO d13331 1 a13332 1 PKGSRC_RUN_TEST d13335 1 a13336 1 PKGSRC_SLEEPSECS d13339 1 a13340 1 PKGSRC_USE_CTF d13343 1 a13344 1 PKGSRC_USE_MKTOOLS d13347 1 a13348 1 PKGSRC_USE_SSP d13351 1 a13352 1 PKGTASKS_DATAFILE d13355 1 a13356 1 PKGTOOLS_ENV d13359 1 a13360 1 PKG_APACHE d13363 1 a13364 1 PKG_APACHE_DEFAULT d13367 1 a13368 1 PKG_BUILD_OPTIONS d13371 1 a13372 1 PKG_CONFIG d13375 1 a13376 1 PKG_CREATE_USERGROUP d13379 1 a13380 1 PKG_DEBUG_LEVEL d13383 1 a13384 1 PKG_DESTDIR_SUPPORT d13387 1 a13388 1 PKG_DISABLED_OPTIONS d13391 1 d13393 2 d13396 1 a13398 1 PKG_FILELIST_CMD d13400 1 a13402 1 PKG_GID d13404 1 a13406 1 PKG_GROUPS_VARS d13408 1 a13410 1 PKG_INIT_SCRIPTS d13412 1 a13414 1 PKG_JVM d13416 1 a13418 1 PKG_JVM_DEFAULT d13420 1 a13422 1 PKG_LIBTOOL d13424 1 a13426 1 PKG_OPTIONS d13428 1 a13430 1 PKG_OPTIONS_LEGACY_OPTS d13432 1 a13434 1 PKG_OPTIONS_NONEMPTY_SETS d13436 1 a13438 1 PKG_OPTIONS_REQUIRED_GROUPS d13440 1 a13442 1 PKG_PHP d13444 1 a13446 1 PKG_PHP_VERSION d13448 1 a13450 1 PKG_REFCOUNT_DBDIR d13452 1 a13454 1 PKG_RESUME_TRANSFERS d13456 1 a13458 1 PKG_SUGGESTED_OPTIONS d13460 1 a13462 1 PKG_SYSCONFBASE d13464 1 a13466 1 PKG_SYSCONFDIR d13468 1 a13470 1 PKG_SYSCONFSUBDIR d13472 1 a13474 1 PKG_TOOLS_BIN d13476 1 a13478 1 PKG_UPDATE_FONTS_DB d13480 1 a13482 1 PKG_USERS_VARS d13484 1 a13486 1 PLEASE d13488 1 a13490 1 PLIST_AWK d13492 1 a13494 1 PLIST_SRC d13496 1 a13498 1 PLIST_TYPE d13500 1 a13502 1 POPTOP_USE_MPPE d13504 1 a13506 1 POST_FETCH_HOOK d13508 1 a13510 1 PREFER_NATIVE d13512 1 a13514 1 PREFER_PKGSRC d13516 1 a13518 1 PREPEND_PATH d13520 1 a13522 1 PRIVILEGED_STAGES d13524 1 a13526 1 PTHREAD_AUTO_VARS d13528 1 a13530 1 PTHREAD_LDFLAGS d13532 1 a13534 1 PTHREAD_OPTS d13536 1 a13538 1 PVM_SSH d13540 1 a13542 1 PYTHON_FOR_BUILD_ONLY d13544 1 a13546 1 PYTHON_VERSIONED_DEPENDENCIES d13548 1 a13550 1 PYTHON_VERSIONS_INCOMPATIBLE d13552 1 a13554 1 PYTHON_VERSION_REQD d13556 1 a13558 1 QMAILDIR d13560 1 a13562 1 QMAIL_DAEMON_USER d13564 1 a13566 1 QMAIL_NOFILES_GROUP d13568 1 a13570 1 QMAIL_QMAIL_GROUP d13572 1 a13574 1 QMAIL_QUEUE_EXTRA d13576 1 a13578 1 QMAIL_REMOTE_USER d13580 1 a13582 1 QMAIL_SEND_USER d13584 1 a13586 1 QORE_MODULE_API d13588 1 a13590 1 QORE_USER_MODULE_DIR d13592 1 a13594 1 QPOPPER_FAC d13596 1 a13598 1 QPOPPER_USER d13600 5 a13606 1 RASMOL_DEPTH d13608 1 a13610 1 RCD_SCRIPTS_DIR d13612 1 a13614 1 RCD_SCRIPTS_MODE d13616 1 d13619 1 a13619 1 RCD_SCRIPT_SRC d13692 4 d13900 3 d13904 1 a13906 1 SILC_CLIENT_WITH_PERL d13908 1 a13910 1 SKIP_DEPENDS d13912 1 a13914 1 SMF_MANIFEST d13916 1 a13918 1 SMF_METHOD_SHELL d13920 1 a13922 1 SMF_NAME d13924 1 a13926 1 SMF_SRCDIR d13928 1 a13930 1 SNIPROXY_USER d13932 1 a13934 1 SPECIAL_PERMS d13936 1 a13938 1 SSH_SUID d13940 1 a13942 1 SSYNC_PAWD d13944 1 a13946 1 STRIP d13948 1 a13950 1 STRIP_DEBUG d13952 1 a13954 1 STRIP_FILES_SKIP d13956 1 a13958 1 SUBDIR d13960 1 a13962 1 SUBST_CLASSES d13964 1 a13966 1 SUBST_FILTER_CMD d13968 1 a13970 1 SUBST_NOOP_OK d13972 1 a13974 1 SUBST_SHOW_DIFF d13976 1 a13978 1 SUBST_STAGE d13980 1 a13982 1 SUNWSPROBASE d13984 9 a13994 1 SU_CMD d13996 1 a13998 1 TARGET_ARCH d14000 1 a14002 1 TERMCAP_TYPE d14004 1 a14006 1 TERMINFO_TYPE d14008 1 a14010 1 TEST_DEPENDS d14012 1 a14014 1 TEST_ENV d14016 1 a14018 1 TEST_MAKE_CMD d14020 1 a14022 1 TEST_TARGET d14024 1 a14026 1 TEXLIVE_REV d14028 1 a14030 1 TEXMFSITE d14032 1 a14034 1 TEX_HYPHEN_DAT d14036 1 a14038 1 TEX_TEXMF_DIRS d14040 1 a14042 1 TINYDYN_USER d14044 1 a14046 1 TO d14048 1 a14050 1 TOOLS_ALWAYS_WRAP d14052 1 a14054 1 TOOLS_BROKEN d14056 1 a14058 1 TOOLS_CMDLINE_SED d14060 1 a14062 1 TOOLS_CROSS_DESTDIR d14064 1 a14066 1 TOOLS_FAIL d14068 1 a14070 1 TOOLS_LDCONFIG d14072 1 a14074 1 TOOLS_PATH d14076 1 a14078 1 TOOLS_USE_CROSS_COMPILE d14080 1 d14235 1 d14237 2 d14240 1 a14242 1 __stdc__ d14244 1 a14246 1 accept d14248 1 a14250 1 acquire-lock d14252 1 a14254 1 added d14256 1 a14258 1 alloca d14260 1 a14262 1 aslr d14264 1 a14266 1 atlas d14268 1 a14270 1 automake d14272 1 a14274 1 awk d14276 1 a14278 1 big-endian d14280 1 a14282 1 bind d14284 1 a14286 1 blas d14288 1 a14290 1 broken d14292 1 a14294 1 bsd d14296 1 a14298 1 build d14300 1 a14302 1 buildlink-directories d14304 1 a14306 1 c d14308 1 a14310 1 ccache d14312 1 a14314 1 cdefs d14316 1 a14318 1 changes d14320 1 a14322 1 changes-entry-noupdate d14324 1 a14326 1 check-clean d14328 1 a14330 1 check-files-clean d14332 1 a14334 1 checksum d14336 1 a14338 1 clean d14340 1 a14342 1 cleandir d14344 1 a14346 1 commit-changes-entry d14348 1 a14350 1 compiler d14352 1 a14354 1 config.guess d14356 1 a14358 1 configuration d14360 1 a14362 1 configure-env d14364 1 a14366 1 configure_args d14368 1 a14370 1 cos d14372 1 a14374 1 cputime d14376 1 a14378 1 csh d14380 1 d14444 3 d14448 1 a14450 1 ensurepip d14452 1 a14454 1 errx d14456 1 a14458 1 exp d14460 1 a14462 1 fabs d14464 1 a14466 1 features d14468 1 a14470 1 fetch-list d14472 1 a14474 1 forbids d14476 1 a14478 1 format d14480 1 d14483 1 a14483 1 fortify_source d14516 3 d14520 1 a14522 1 gitlab d14524 1 a14526 1 gnu d14528 1 a14530 1 go d14532 1 a14534 1 golang d14536 1 a14538 1 hashbang d14540 1 d14543 1 a14543 1 help d14615 1 d14617 2 d14620 1 a14622 1 meta_package d14624 1 a14626 1 mk.conf d14628 1 a14630 1 mount d14632 1 a14634 1 moved d14636 1 a14638 1 mremap d14640 1 a14642 1 nbcompat d14644 1 a14646 1 node d14648 1 a14650 1 nodejs d14652 1 a14654 1 obstack_ptr_grow d14656 1 a14658 1 only d14660 1 a14662 1 options d14664 1 a14666 1 order d14668 1 a14670 1 override-intltool d14672 1 a14674 1 package d14676 1 a14678 1 path d14680 1 a14682 1 paxctl d14684 1 a14686 1 pc d14688 1 a14690 1 perl5 d14692 1 a14694 1 php d14696 1 a14698 1 pkg-config d14700 1 a14702 1 platform d14704 1 a14706 1 post-extract d14708 1 a14710 1 post-wrapper d14712 1 a14714 1 pre-configure d14716 1 a14718 1 pre-extract d14720 1 a14722 1 print-go-deps d14724 1 a14726 1 print-summary-data d14728 1 a14730 1 pypi d14732 1 a14734 1 r d14736 1 a14738 1 recursive d14740 1 a14742 1 recvfrom d14744 1 a14746 1 release-localbase-lock d14748 1 a14750 1 relro d14752 1 a14754 1 removed d14756 1 a14758 1 renamed d14760 1 a14762 1 replace d14764 1 a14766 1 reproducible d14768 1 a14770 1 root d14772 1 a14774 1 send d14776 1 a14778 1 sendto d14780 1 a14782 1 setgid d14784 1 a14786 1 setuid d14788 1 a14790 1 shebang d14792 1 a14794 1 show-all d14796 1 a14798 1 show-depends d14800 1 a14802 1 show-depends-pkgpaths d14804 1 a14806 1 show-deps d14808 1 a14810 1 show-downlevel d14812 1 a14814 1 show-tools d14816 1 a14818 1 show-vars d14820 1 a14822 1 socket d14824 1 a14826 1 st_mode d14828 1 a14830 1 strcasestr d14832 1 a14834 1 strip d14836 1 a14838 1 strnlen d14840 1 a14842 1 subst d14844 1 d14852 1 a14852 1 symlink d14855 1 a14856 1 test-env d14859 1 a14860 1 texlive d14863 1 a14864 1 todo d14867 1 a14868 1 tools d14871 1 a14872 1 transitive d14875 1 a14876 1 ulimit d14879 1 a14880 1 undo-replace d14883 1 a14884 1 unprivileged d14887 1 a14888 1 unstripped d14891 1 a14892 1 updated d14895 1 a14896 1 upload-distfiles d14899 1 a14900 1 user d14903 1 a14904 1 vasprintf d14907 1 a14908 1 vsnprintf d14911 1 a14912 1 warning d14915 1 a14916 1 warnx d14919 1 a14920 1 wattr_on d14923 1 a14924 1 wrapper d14927 1 a14928 1   @ 1.346 log @doc/pkgsrc.*: regen @ text @d1968 2 a1969 2 Run some sanity checks that package developers want:

    d1972 1 a1972 1 fuzz

  • d1974 1 a1974 1 binaries will find their shared libs.

    a1975 2

    d1977 4 d1982 8 a1989 8 of debugging output which is displayed whilst making and installing the package. The default value for this is 0, which will not display the commands as they are executed (normal, default, quiet operation); the value 1 will display all shell commands before their invocation, and the value 2 will display both the shell commands before their invocation, as well as their actual execution progress with set -x.

    d12174 25 a12199 1 CPP_PRECOMP_FLAGS d12202 1 a12203 1 CROSSBASE d12206 1 a12207 1 CTF_FILES_SKIP d12210 1 a12211 1 CTYPE d12214 1 a12215 1 CUPS_SYSTEM_GROUPS d12218 1 a12219 1 CURSES_DEFAULT d12222 1 a12223 1 CXX d12226 1 a12227 1 CYRUS_IDLE d12230 1 a12231 1 DAEMONTOOLS_GROUP d12234 1 a12235 1 DARWIN_NO_SYSTEM_LIBS d12238 1 a12239 1 DBUS_GROUP d12242 1 a12243 1 DEFANG_GROUP d12246 1 a12247 1 DEFAULT_ACCEPTABLE_LICENSES d12250 1 a12251 1 DEFAULT_IRC_SERVER d12254 1 a12255 1 DEF_UMASK d12258 1 a12259 1 DEINSTALL_SRC d12262 1 a12263 1 DELAYED_ERROR_MSG d12266 1 a12267 1 DEPENDS d12270 1 a12271 1 DEPENDS_TYPE d12274 1 a12275 1 DESTDIR_VARNAME d12278 1 a12279 1 DIGEST_REQD d12282 1 a12283 1 DISTFILES d12286 1 a12287 1 DISTNAME d12290 1 a12291 1 DIST_SUBDIR d12294 1 a12295 1 DJBDNS_CACHE_USER d12298 1 a12299 1 DJBDNS_LOG_USER d12302 1 a12303 1 DJBDNS_TINY_USER d12306 1 a12307 1 DL_AUTO_VARS d12310 1 a12311 1 DL_LDFLAGS d12314 1 a12315 1 DNS d12318 1 a12319 1 DOWNLOADED_DISTFILE d12322 1 a12323 1 DQCACHE_USER d12326 1 a12327 1 DYNAMIC_SITES_CMD d12330 1 a12331 1 ECHO d12334 1 a12335 1 ELK_GUI d12338 1 a12339 1 EMULDIR d12342 1 a12343 1 EMULSUBDIRSLASH d12346 1 a12347 1 EMUL_DISTRO d12350 1 a12351 1 EMUL_IS_NATIVE d12354 1 a12355 1 EMUL_OPSYS d12358 1 a12359 1 EMUL_PLATFORM d12362 1 a12363 1 EMUL_PREFER d12366 1 a12367 1 EMUL_TYPE d12370 1 a12371 1 EXIM_GROUP d12374 1 a12375 1 EXPORT_SYMBOLS_LDFLAGS d12378 1 a12379 1 EXTRACT_CMD d12382 1 a12383 1 EXTRACT_DIR d12386 1 a12387 1 EXTRACT_ENV d12390 1 a12391 1 EXTRACT_OPTS d12394 1 a12395 1 EXTRACT_USING d12398 1 a12399 1 FAILOVER_FETCH d12402 1 a12403 1 FAKE_NCURSES d12406 1 a12407 1 FAM_ACCEPTED d12410 1 a12411 1 FAM_SERVER d12414 1 a12415 1 FEATURE_CPPFLAGS d12418 1 a12419 1 FEATURE_LIBS d12422 1 a12423 1 FETCH_BEFORE_ARGS d12426 1 a12427 1 FETCH_OUTPUT_ARGS d12430 1 a12431 1 FETCH_RESUME_ARGS d12434 1 a12435 1 FETCH_USE_IPV4_ONLY d12438 1 a12439 1 FILES_SUBST d12442 1 a12443 1 FIX_SYSTEM_HEADERS d12446 1 a12447 1 FONTS_VERBOSE d12450 1 a12451 1 FOX_USE_XUNICODE d12454 1 a12455 1 FREEWNN_USER d12458 1 a12459 1 FTP_PKG_URL_HOST d12462 1 a12463 1 GAMEDATA_PERMS d12466 1 a12467 1 GAMEDIR_PERMS d12470 1 a12471 1 GAMEMODE d12474 1 a12475 1 GAMES_GROUP d12478 1 a12479 1 GCC d12482 1 a12483 1 GCC_REQD d12486 1 a12487 1 GEM_BUILD d12490 1 a12491 1 GEM_CLEANBUILD_EXTENSIONS d12494 1 a12495 1 GEM_EXTSDIR d12498 1 a12499 1 GEM_KEEPBUILD d12502 1 a12503 1 GEM_NAME d12506 1 a12507 1 GEM_PLUGINSDIR d12510 1 a12511 1 GENERATE_PLIST d12514 1 a12515 1 GHOSTSCRIPT_REQD d12518 1 a12519 1 GITHUB_RELEASE d12522 1 a12523 1 GITHUB_TAG d12526 1 a12527 1 GITLAB_PROJECT d12530 1 a12531 1 GITLAB_SUBMODULES d12534 1 a12535 1 GITLAB_TYPE d12538 1 a12539 1 GNU_CONFIGURE d12542 1 a12543 1 GNU_CONFIGURE_MANDIR d12546 1 a12547 1 GNU_CONFIGURE_STRICT d12550 1 a12551 1 GO_BUILD_PATTERN d12554 1 a12555 1 GO_DIST_BASE d12558 1 a12559 1 GO_MODULE_FILES d12562 1 a12563 1 GROUP_SPECIFIC_PKGS d12566 1 a12567 1 GRUB_PRESET_COMMAND d12570 1 a12571 1 GZIP d12574 1 a12575 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12578 1 a12579 1 HASKELL_ENABLE_SHARED_LIBRARY d12582 1 a12583 1 HASKELL_PKG_NAME d12586 1 a12587 1 HAS_CONFIGURE d12590 1 a12591 1 HOMEPAGE d12594 1 a12595 1 HOST_SPECIFIC_PKGS d12598 1 a12599 1 HOWL_USER d12602 1 a12603 1 ICECAST_CHROOTDIR d12606 1 a12607 1 IDOBASE d12610 1 a12611 1 IGNORE_INFO_DIRS d12614 1 a12615 1 IMAKE d12618 1 a12619 1 IMAKE_MAKE d12622 1 a12623 1 IMAP_UW_CCLIENT_MBOX_FMT d12626 1 a12627 1 INCOMPAT_CURSES d12630 1 a12631 1 INFO_FILES d12634 1 a12635 1 INFO_MSG d12638 1 a12639 1 INN_DATA_DIR d12642 1 a12643 1 INN_USER d12646 1 a12647 1 INSTALLATION_DIRS_FROM_PLIST d12650 1 a12651 1 INSTALL_SH_OVERRIDE d12654 1 a12655 1 INSTALL_TEMPLATES d12658 1 a12659 1 IRCD_HYBRID_IRC_GROUP d12662 1 a12663 1 IRCD_HYBRID_MAXCONN d12666 1 a12667 1 IRCD_HYBRID_SYSLOG_EVENTS d12670 1 a12671 1 IRCD_HYBRID_TOPICLEN d12674 1 a12675 1 IRRD_USE_PGP d12678 1 a12679 1 JABBERD_LOGDIR d12682 1 d12684 2 d12687 1 a12689 1 JABBERD_USER d12691 1 a12693 1 JAVA_CLASSPATH d12695 1 a12697 1 JAVA_LD_LIBRARY_PATH d12699 1 a12701 1 JAVA_UNLIMIT d12703 1 a12705 1 JPEG_ACCEPTED d12707 1 a12709 1 KERBEROS d12711 1 a12713 1 KJS_USE_PCRE d12715 1 a12717 1 KNEWS_DOMAIN_NAME d12719 1 a12721 1 KRB5_DEFAULT d12723 1 a12725 1 LAPACKE_LIBS d12727 1 a12729 1 LAPACK_LIBS d12731 1 a12733 1 LATEX2HTML_ICONPATH d12735 1 a12737 1 LDCONFIG_REMOVE_CMD d12739 1 a12741 1 LEAFNODE_DATA_DIR d12743 1 a12745 1 LEAFNODE_USER d12747 1 a12749 1 LIBDVDCSS_MASTER_SITES d12751 1 a12753 1 LIBTOOL d12755 1 a12757 1 LIBTOOL_M4_OVERRIDE d12759 1 a12761 1 LICENSE d12763 1 a12765 1 LINK_RPATH_FLAG d12767 1 a12769 1 LOCALBASE d12771 1 a12773 1 LOCALPATCHES d12775 1 a12777 1 LOVE_GAME d12779 1 a12781 1 LP32PLATFORMS d12783 1 a12785 1 LUA_BUSTED_ARGS d12787 1 a12789 1 LUA_COMPILER d12791 1 a12793 1 LUA_EXAMPLESDIR d12795 1 a12797 1 LUA_INTERPRETER d12799 1 a12801 1 LUA_LINKER_MAGIC d12803 1 a12805 1 LUA_SELF_CONFLICT d12807 1 a12809 1 LUA_VERSIONS_ACCEPTED d12811 1 a12813 1 LUA_VERSION_DEFAULT d12815 1 a12817 1 Lua d12819 1 a12821 1 MAILAGENT_DOMAIN d12823 1 a12825 1 MAILAGENT_FQDN d12827 1 a12829 1 MAJORDOMO_HOMEDIR d12831 1 a12833 1 MAKE_DIRS d12835 1 a12837 1 MAKE_ENV d12839 1 a12841 1 MAKE_FLAGS d12843 1 a12845 1 MAKE_JOBS_SAFE d12847 1 a12849 1 MANCOMPRESSED_IF_MANZ d12851 1 a12853 1 MANZ d12855 1 a12857 1 MASTER_SITE_BACKUP d12859 1 a12861 1 MASTER_SITE_MOZILLA d12863 1 a12865 1 MASTER_SITE_PERL_CPAN d12867 1 a12869 1 MASTER_SORT_RANDOM d12871 1 a12873 1 MECAB_CHARSET d12875 1 a12877 1 MEDIATOMB_USER d12879 1 a12881 1 MIREDO_GROUP d12883 1 a12885 1 MISSING_FEATURES d12887 1 a12889 1 MKPIE_SUPPORTED d12891 1 a12893 1 MLDONKEY_HOME d12895 1 a12897 1 MONOTONE_GROUP d12899 1 a12901 1 MOTIFBASE d12903 1 a12905 1 MOTIF_TYPE_DEFAULT d12907 1 a12909 1 MSGFMT_STRIP_MSGCTXT d12911 1 a12913 1 MTOOLS_ENABLE_FLOPPYD d12915 1 a12917 1 MYSQL_CHARSET d12919 1 a12921 1 MYSQL_EXTRA_CHARSET d12923 1 a12925 1 MYSQL_USER d12927 1 a12929 1 MYSQL_VERSIONS_ACCEPTED d12931 1 a12933 1 MYSQL_VERSION_DEFAULT d12935 1 a12937 1 NAGIOSDIR d12939 1 a12941 1 NAGIOS_USER d12943 1 a12945 1 NATIVE_APPEND_ELF d12947 1 a12949 1 NATIVE_MACHINE_PLATFORM d12951 1 a12953 1 NBPAX_PROGRAM_PREFIX d12955 1 a12957 1 NMH_EDITOR d12959 1 a12961 1 NMH_PAGER d12963 1 a12965 1 NODE_VERSIONS_INCOMPATIBLE d12967 1 a12969 1 NODE_VERSION_REQD d12971 1 a12973 1 NOTE d12975 1 a12977 1 NOT_PAX_ASLR_SAFE d12979 1 a12981 1 NO_BUILD d12983 1 a12985 1 NO_CONFIGURE d12987 1 a12989 1 NS_PREFERRED d12991 1 a12993 1 NULLMAILER_USER d12995 1 a12997 1 OASIS_BUILD_ARGS d12999 1 a13001 1 OBJMACHINE d13003 1 a13005 1 OCAML_FINDLIB_REGISTER d13007 1 a13009 1 OCAML_SITELIBDIR d13011 1 a13013 1 OCAML_USE_DUNE d13015 1 a13017 1 OCAML_USE_OASIS d13019 1 a13021 1 OCAML_USE_OPAM d13023 1 a13025 1 OMF d13027 1 a13029 1 ONLY_FOR_PLATFORM d13031 1 a13033 1 OPENSSH_GROUP d13035 1 a13037 1 OPSYS d13039 1 a13041 1 OPSYS_VERSION d13043 1 a13045 1 OSS_TYPE d13047 1 a13049 1 OSX_TOLERATE_SDK_SKEW d13051 1 a13053 1 OS_VERSION d13055 1 a13057 1 OVERRIDE_DIRDEPTH d13059 1 a13061 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13063 1 a13065 1 OWN_DIRS_PERMS d13067 1 a13069 1 P4PORT d13071 1 a13073 1 P4USER d13075 1 a13077 1 PALMOS_DEFAULT_SDK d13079 1 a13081 1 PAM_DEFAULT d13083 1 a13085 1 PASSIVE_FETCH d13087 1 a13089 1 PATCHFILES d13091 1 a13093 1 PATCH_DEBUG d13095 1 a13097 1 PATCH_DIST_CAT d13099 1 a13101 1 PATCH_FUZZ_FACTOR d13103 1 a13105 1 PATH d13107 1 a13109 1 PEAR_CMD d13111 1 a13113 1 PEAR_PACKAGE_XML d13115 1 a13117 1 PERL5_CONFIGURE d13119 1 a13121 1 PERL5_LDFLAGS d13123 1 a13125 1 PERL5_MODULE_TYPE d13127 1 a13129 1 PERL5_PACKLIST_DIR d13131 1 a13133 1 PERL5_SITEBASE d13135 1 a13137 1 PERL5_VENDORBASE d13139 1 a13141 1 PFVAR_H d13143 1 a13145 1 PGGROUP d13147 1 a13149 1 PGPKGSRCDIR d13151 1 a13153 1 PGSQL_VERSION d13155 1 a13157 1 PGSQL_VERSION_DEFAULT d13159 1 a13161 1 PG_LIB_EXT d13163 1 a13165 1 PHPCOMMON_MK d13167 1 a13169 1 PHP_BASE_VERS d13171 1 a13173 1 PHP_EXTENSION_DIR d13175 1 a13177 1 PHP_PKG_PREFIX d13179 1 a13181 1 PHP_VERSIONS_ACCEPTED d13183 1 a13185 1 PHP_VERSION_DEFAULT d13187 1 a13189 1 PILRC_USE_GTK d13191 1 a13193 1 PKGCONFIG_FILE d13195 1 a13197 1 PKGCONFIG_OVERRIDE_STAGE d13199 1 a13201 1 PKGGNUDIR d13203 1 a13205 1 PKGLOCALEDIR d13207 1 a13209 1 PKGNAME d13211 1 a13213 1 PKGPATH d13215 1 a13217 1 PKGSRC_BLAS_TYPES d13219 1 a13221 1 PKGSRC_COMPILER d13223 1 a13225 1 PKGSRC_LOCKTYPE d13227 1 a13229 1 PKGSRC_MESSAGE_RECIPIENTS d13231 1 a13233 1 PKGSRC_MKREPRO d13235 1 a13237 1 PKGSRC_RUN_TEST d13239 1 a13241 1 PKGSRC_SLEEPSECS d13243 1 a13245 1 PKGSRC_USE_CTF d13247 1 a13249 1 PKGSRC_USE_MKTOOLS d13251 1 a13253 1 PKGSRC_USE_SSP d13255 1 a13257 1 PKGTASKS_DATAFILE d13259 1 a13261 1 PKGTOOLS_ENV d13263 1 a13265 1 PKG_APACHE d13267 1 a13269 1 PKG_APACHE_DEFAULT d13271 1 a13273 1 PKG_BUILD_OPTIONS d13275 1 a13277 1 PKG_CONFIG d13279 1 a13281 1 PKG_CREATE_USERGROUP d13283 1 a13285 1 PKG_DEBUG_LEVEL d13287 1 a13289 1 PKG_DESTDIR_SUPPORT d13291 1 a13293 1 PKG_DISABLED_OPTIONS d13295 1 a13297 1 PKG_FC d13299 1 a13301 1 PKG_GECOS d13303 1 a13305 1 PKG_GROUPS d13307 1 a13309 1 PKG_HOME d13311 1 a13313 1 PKG_JAVA_HOME d13315 1 a13317 1 PKG_JVMS_ACCEPTED d13319 1 a13321 1 PKG_LEGACY_OPTIONS d13323 1 a13325 1 PKG_MKSYMLINKS d13327 1 a13329 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13331 1 a13333 1 PKG_OPTIONS_LEGACY_VARS d13335 1 a13337 1 PKG_OPTIONS_OPTIONAL_GROUPS d13339 1 a13341 1 PKG_OPTIONS_VAR d13343 1 a13345 1 PKG_PHP_MAJOR_VERS d13347 1 a13349 1 PKG_RCD_SCRIPTS d13351 1 a13353 1 PKG_REGISTER_SHELLS d13355 1 a13357 1 PKG_SHELL d13359 1 a13361 1 PKG_SUPPORTED_OPTIONS d13363 1 a13365 1 PKG_SYSCONFBASEDIR d13367 1 a13369 1 PKG_SYSCONFDIR_PERMS d13371 1 a13373 1 PKG_SYSCONFVAR d13375 1 a13377 1 PKG_UID d13379 1 a13381 1 PKG_USERS d13383 1 a13385 1 PKG_VERBOSE d13387 1 a13389 1 PLIST d13391 1 a13393 1 PLIST_AWK_ENV d13395 1 a13397 1 PLIST_SUBST d13399 1 a13401 1 PLIST_VARS d13403 1 a13405 1 POSSIBLE_GFORTRAN_VERSION d13407 1 a13409 1 PREFER d13411 1 a13413 1 PREFER_NATIVE_PTHREADS d13415 1 a13417 1 PREFIX d13419 1 a13421 1 PRE_ROOT_CMD d13423 1 a13425 1 PS d13427 1 a13429 1 PTHREAD_CFLAGS d13431 1 a13433 1 PTHREAD_LIBS d13435 1 a13437 1 PTHREAD_TYPE d13439 1 a13441 1 PYPKGPREFIX d13443 1 a13445 1 PYTHON_SELF_CONFLICT d13447 1 a13449 1 PYTHON_VERSIONS_ACCEPTED d13451 1 a13453 1 PYTHON_VERSION_DEFAULT d13455 1 a13457 1 PYVERSSUFFIX d13459 1 a13461 1 QMAIL_ALIAS_USER d13463 1 a13465 1 QMAIL_LOG_USER d13467 1 a13469 1 QMAIL_PASSWD_USER d13471 1 a13473 1 QMAIL_QUEUE_DIR d13475 1 a13477 1 QMAIL_QUEUE_USER d13479 1 a13481 1 QMAIL_ROOT_USER d13483 1 a13485 1 QORE_LATEST_MODULE_API d13487 1 a13489 1 QORE_MODULE_DIR d13491 1 a13493 1 QORE_VERSION d13495 1 a13497 1 QPOPPER_SPOOL_DIR d13499 1 a13501 1 RAKE_NAME d13503 1 a13505 1 RCD_SCRIPTS d13507 1 a13509 1 RCD_SCRIPTS_EXAMPLEDIR d13511 1 a13513 1 RCD_SCRIPTS_SHELL d13515 1 a13517 1 RDOC d13519 1 a13521 1 READLINE_TYPE d13523 1 a13525 1 REAL_ROOT_USER d13527 1 a13529 1 RELAY_CTRL_DIR d13531 1 a13533 1 REPLACE_AWK d13535 1 a13537 1 REPLACE_CSH d13539 1 a13541 1 REPLACE_LUA d13543 1 a13545 1 REPLACE_OCTAVE d13547 1 a13549 1 REPLACE_PERL6 d13551 1 a13553 1 REPLACE_PYTHON d13555 1 a13557 1 REPLACE_R d13559 1 a13561 1 REPLACE_RUBY_DIRS d13563 1 a13565 1 REPLACE_SH d13567 1 a13569 1 REPLACE_WISH d13571 1 a13573 1 REQD_DIRS_PERMS d13575 1 a13577 1 REQD_FILES_MODE d13579 1 a13581 1 RESOLV_AUTO_VARS d13583 1 a13585 1 RESOLV_LIBS d13587 1 a13589 1 ROOT_CMD d13591 1 a13593 1 ROOT_USER d13595 1 a13597 1 RPM d13599 1 a13601 1 RPM2PKG_PREFIX d13603 1 a13605 1 RPM2PKG_STRIP d13607 1 a13609 1 RPMFILES d13611 1 a13613 1 RPM_DB_PREFIX d13615 1 a13617 1 RSSH_RDIST_PATH d13619 1 a13621 1 RSSH_SCP_PATH d13623 1 a13625 1 RUBY d13627 1 a13629 1 RUBYGEM_MANPAGES d13631 1 a13633 1 RUBYGEM_OPTIONS d13635 1 a13637 1 RUBYGEM_VERBOSE d13639 1 a13641 1 RUBY_ARCH d13643 1 a13645 1 RUBY_ARCHLIB d13647 1 a13649 1 RUBY_BASERIDIR d13651 1 a13653 1 RUBY_DLEXT d13655 1 a13657 1 RUBY_DYNAMIC_DIRS d13659 1 a13661 1 RUBY_ENCODING_ARG d13663 1 a13665 1 RUBY_EXTCONF_CHECK d13667 1 a13669 1 RUBY_EXTCONF_MAKEFILE d13671 1 a13673 1 RUBY_GEM_BASE d13675 1 a13677 1 RUBY_LIB d13679 1 a13681 1 RUBY_NAME d13683 1 a13685 1 RUBY_PKGPREFIX d13687 1 a13689 1 RUBY_RAILS52_VERSION d13691 1 a13693 1 RUBY_RAILS61_VERSION d13695 1 a13697 1 RUBY_RAILS_ACCEPTED d13699 1 a13701 1 RUBY_RAILS_REQD d13703 1 a13705 1 RUBY_RIDIR d13707 1 a13709 1 RUBY_SHLIB d13711 1 a13713 1 RUBY_SHLIBVER d13715 1 a13717 1 RUBY_SITEARCHLIB d13719 1 a13721 1 RUBY_SITELIB_BASE d13723 1 a13725 1 RUBY_SLEXT d13727 1 a13729 1 RUBY_STATICLIB d13731 1 a13733 1 RUBY_SYSRIDIR d13735 1 a13737 1 RUBY_VENDORARCHLIB d13739 1 a13741 1 RUBY_VENDORLIB_BASE d13743 1 a13745 1 RUBY_VERSION d13747 1 a13749 1 RUBY_VERSIONS_INCOMPATIBLE d13751 1 a13753 1 RUBY_VERSION_REQD d13755 1 a13757 1 RUN d13759 1 a13761 1 RUST_TYPE d13763 1 a13765 1 SCREWS_GROUP d13767 1 a13769 1 SCRIPTS_ENV d13771 1 a13773 1 SCROLLKEEPER_REBUILDDB d13775 1 a13777 1 SDIST_PAWD d13779 1 a13781 1 SERIAL_DEVICES d13783 1 a13785 1 SETGID_GAMES_PERMS d13787 1 a13789 1 SH d13791 1 a13793 1 SIGN_PACKAGES d13795 1 a13797 1 SITE_SPECIFIC_PKGS d13799 1 a13801 1 SMF_INSTANCES d13803 1 a13805 1 SMF_METHODS d13807 1 a13809 1 SMF_METHOD_SRC d13811 1 a13813 1 SMF_PREFIX d13815 1 a13817 1 SNIPROXY_GROUP d13819 1 a13821 1 SOURCE_BUFFSIZE d13823 1 a13825 1 SPECIFIC_PKGS d13827 1 a13829 1 SSP_SUPPORTED d13831 1 a13833 1 STEP_MSG d13835 1 a13837 1 STRIP_DBG d13839 1 a13841 1 STRIP_DEBUG_SUPPORTED d13843 1 a13845 1 SU d13847 1 a13849 1 SUBST d13851 1 a13853 1 SUBST_FILES d13855 1 a13857 1 SUBST_MESSAGE d13859 1 a13861 1 SUBST_SED d13863 1 a13865 1 SUBST_SKIP_TEXT_CHECK d13867 1 a13869 1 SUBST_VARS d13871 1 a13873 1 SUSE_PREFER d13875 1 a13877 1 SYSCONFBASE d13879 1 a13881 1 TBL d13883 1 a13885 1 TERMINFO_DEFAULT d13887 1 a13889 1 TEST d13891 1 a13893 1 TEST_DIRS d13895 1 a13897 1 TEST_ENV_SHELL d13899 1 a13901 1 TEST_MAKE_FLAGS d13903 1 a13905 1 TEXLIVE_IGNORE_PATTERNS d13907 1 a13909 1 TEXLIVE_UNVERSIONED d13911 1 a13913 1 TEX_FORMATS d13915 1 a13917 1 TEX_HYPHEN_DEF d13919 1 a13921 1 THTTPD_LOG_FACILITY d13923 1 a13925 1 TLSWRAPPER_CHROOT d13927 1 a13929 1 TOOLS_ALIASES d13931 1 a13933 1 TOOLS_ARGS d13935 1 a13937 1 TOOLS_CMD d13939 1 a13941 1 TOOLS_CREATE d13943 1 a13945 1 TOOLS_DIR d13947 1 a13949 1 TOOLS_GNU_MISSING d13951 1 a13953 1 TOOLS_NOOP d13955 1 a13957 1 TOOLS_SCRIPT d13959 1 a13961 1 TOOL_DEPENDS d13963 1 a13965 1 TYPE d13967 1 a13969 1 UCSPI_SSL_GROUP d13971 1 a13973 1 UNLIMIT_RESOURCES d13975 1 a13977 1 UNPRIVILEGED_GROUP d13979 1 a13981 1 UNPRIVILEGED_USER d13983 1 a13985 1 UNWRAP_PATTERNS d13987 1 a13989 1 UPDATE_TARGET d13991 1 a13993 1 USERGROUP_PHASE d13995 1 a13997 1 USER_SPECIFIC_PKGS d13999 1 a14001 1 USE_APR d14003 1 a14005 1 USE_BUILTIN d14007 1 a14009 1 USE_CURSES d14011 1 a14013 1 USE_DB185 d14015 1 a14017 1 USE_GAMESGROUP d14019 1 a14021 1 USE_IMAKE d14023 1 a14025 1 USE_JAVA2 d14027 1 a14029 1 USE_LIBTOOL d14031 1 a14033 1 USE_NETBSD_REPO d14035 1 a14037 1 USE_PKGSRC_GCC_RUNTIME d14039 1 a14041 1 USE_PKG_ADMIN_DIGEST d14043 1 a14045 1 USE_RUBY_INSTALL d14047 1 a14049 1 USE_RUBY_SETUP_PKG d14051 1 a14053 1 UUCP_GROUP d14055 1 a14057 1 VARBASE d14059 1 a14061 1 VIM_EXTRA_OPTS d14063 1 a14065 1 WCALC_CGIDIR d14067 1 a14069 1 WCALC_HTMLDIR d14071 1 a14073 1 WDM_MANAGERS d14075 1 a14077 1 WRAPPER_REORDER_CMDS d14079 1 a14081 1 WRKDIR_BASENAME d14083 1 a14085 1 WRKLOG d14087 1 a14089 1 WRKSRC d14091 1 a14093 1 X11 d14095 1 a14097 1 X11_PKGSRCDIR d14099 1 a14101 1 X509_CERTIFICATE d14103 1 a14105 1 XAW_TYPE d14107 1 a14109 1 XMKMF d14111 1 a14113 1 XXX d14115 1 a14117 1 ZSH_STATIC d14119 1 a14121 1 _vargroups d14123 1 a14125 1 acquire-localbase-lock d14127 1 a14129 1 add d14131 1 a14133 1 administrator d14135 1 a14137 1 alternatives d14139 1 a14141 1 asprintf d14143 1 a14145 1 autoconf d14147 1 a14149 1 autoreconf d14151 1 a14153 1 bash d14155 1 a14157 1 bin-install d14159 1 a14161 1 binpkg-list d14163 1 a14165 1 bootstrap-depends d14167 1 a14169 1 broken_on_platform d14171 1 a14173 1 bsd.prog.mk d14175 1 a14177 1 build-env d14179 1 a14181 1 buildlink-oss-soundcard-h d14183 1 a14185 1 c++ d14187 1 a14189 1 cce d14191 1 a14193 1 ceil d14195 1 a14197 1 changes-entry d14199 1 a14201 1 check d14203 1 a14205 1 check-files d14207 1 a14209 1 check-vulnerable d14211 1 a14213 1 checksum-phase d14215 1 a14217 1 clean-depends d14219 1 a14221 1 commit d14223 1 a14225 1 compact d14227 1 a14229 1 conf d14231 1 a14233 1 config.sub d14235 1 a14237 1 configure d14239 1 a14241 1 configure-help d14243 1 a14245 1 connect d14247 1 @ 1.345 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.41 2022/01/01 06:45:38 jnemeth Exp $

    d13600 1 d13602 2 d13605 1 @ 1.344 log @doc/pkgsrc.*: regen @ text @a6282 2 # $NetBSD: buildlink3.mk,v 1.16 2009/03/20 19:24:45 joerg Exp $ d8237 3 @ 1.343 log @doc/pkgsrc.*: regen @ text @d242 1 a656 1 README.IRIX5.3 d720 1 a720 1 README.Bitrig d833 1 a833 1 bourne shell and derivatives.

    d3212 1 d5577 1 d5760 1 a5760 1 EMPTY= # empty d5783 17 d11924 3 d11928 1 a11930 1 BOOTSTRAP_DEPENDS d11932 1 a11934 1 BROKEN_EXCEPT_ON_PLATFORM d11936 1 a11938 1 BSDSRCDIR d11940 1 a11942 1 BSD_MAKE_ENV d11944 1 a11946 1 BUILDLINK_AUTO_VARS d11948 1 a11950 1 BUILDLINK_CONTENTS_FILTER d11952 1 a11954 1 BUILDLINK_FILES d11956 1 a11958 1 BUILDLINK_FNAME_TRANSFORM d11960 1 a11962 1 BUILDLINK_LIBS d11964 1 a11966 1 BUILDLINK_PKGNAME d11968 1 a11970 1 BUILDLINK_RPATHDIRS d11972 1 a11974 1 BUILD_DEFS d11976 1 a11978 1 BUILD_DEPENDS d11980 1 a11982 1 BUILD_ENV_SHELL d11984 1 a11986 1 BUILD_MAKE_FLAGS d11988 1 a11990 1 BUILTIN_FIND_FILES d11992 1 a11994 1 BUILTIN_FIND_GREP d11996 1 a11998 1 BUILTIN_FIND_HEADERS_VAR d12000 1 a12002 1 BUILTIN_FIND_PKGCONFIG_VAR d12004 1 a12006 1 BUILTIN_TEST_CURSES_DEFINES d12008 1 a12010 1 BUILTIN_VERSION_SCRIPT d12012 1 a12014 1 BUILTIN_X11_VERSION d12016 1 a12018 1 CACTI_USER d12020 1 a12022 1 CANNA_USER d12024 1 d12027 1 a12027 1 CBLAS_LIBS d12536 1 a12536 1 GO_VERSION_DEFAULT a12538 1 GROUP_SPECIFIC_PKGS d12540 1 a12542 1 GRUB_PRESET_COMMAND d12544 1 a12546 1 GZIP d12548 1 a12550 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12552 1 a12554 1 HASKELL_ENABLE_SHARED_LIBRARY d12556 1 d12559 1 d12561 2 d12564 1 a12566 1 HOMEPAGE d12568 1 a12570 1 HOST_SPECIFIC_PKGS d12572 1 a12574 1 HOWL_USER d12576 1 a12578 1 ICECAST_CHROOTDIR d12580 1 a12582 1 IDOBASE d12584 1 a12586 1 IGNORE_INFO_DIRS d12588 1 a12590 1 IMAKE d12592 1 a12594 1 IMAKE_MAKE d12596 1 a12598 1 IMAP_UW_CCLIENT_MBOX_FMT d12600 1 a12602 1 INCOMPAT_CURSES d12604 1 a12606 1 INFO_FILES d12608 1 a12610 1 INFO_MSG d12612 1 a12614 1 INN_DATA_DIR d12616 1 a12618 1 INN_USER d12620 1 a12622 1 INSTALLATION_DIRS_FROM_PLIST d12624 1 a12626 1 INSTALL_SH_OVERRIDE d12628 1 a12630 1 INSTALL_TEMPLATES d12632 1 a12634 1 IRCD_HYBRID_IRC_GROUP d12636 1 a12638 1 IRCD_HYBRID_MAXCONN d12640 1 a12642 1 IRCD_HYBRID_SYSLOG_EVENTS d12644 1 a12646 1 IRCD_HYBRID_TOPICLEN d12648 1 a12650 1 IRRD_USE_PGP d12652 1 a12654 1 JABBERD_LOGDIR d12656 1 a12658 1 JABBERD_SPOOLDIR d12660 1 a12662 1 JAVA_BINPREFIX d12664 1 a12666 1 JAVA_HOME d12668 1 a12670 1 JAVA_NAME d12672 1 a12674 1 JAVA_WRAPPERS d12676 1 a12678 1 JPEG_DEFAULT d12680 1 a12682 1 KERMIT_SUID_UUCP d12684 1 a12686 1 KNEWS_DOMAIN_FILE d12688 1 a12690 1 KRB5_ACCEPTED d12692 1 a12694 1 LANGUAGES d12696 1 d12700 1 a12700 1 LATEX2HTML_ICONPATH d12703 1 a12704 1 LDCONFIG_REMOVE_CMD d12707 1 a12708 1 LEAFNODE_DATA_DIR d12711 1 a12712 1 LEAFNODE_USER d12715 1 a12716 1 LIBDVDCSS_MASTER_SITES d12719 1 a12720 1 LIBTOOL d12723 1 a12724 1 LIBTOOL_M4_OVERRIDE d12727 1 a12728 1 LICENSE d12731 1 a12732 1 LINK_RPATH_FLAG d12735 1 a12736 1 LOCALBASE d12739 1 a12740 1 LOCALPATCHES d12743 1 a12744 1 LOVE_GAME d12747 1 a12748 1 LP32PLATFORMS d12751 1 a12752 1 LUA_BUSTED_ARGS d12755 1 a12756 1 LUA_COMPILER d12759 1 a12760 1 LUA_EXAMPLESDIR d12763 1 a12764 1 LUA_INTERPRETER d12767 1 a12768 1 LUA_LINKER_MAGIC d12771 1 a12772 1 LUA_SELF_CONFLICT d12775 1 a12776 1 LUA_VERSIONS_ACCEPTED d12779 1 a12780 1 LUA_VERSION_DEFAULT d12783 1 a12784 1 Lua d12787 1 a12788 1 MAILAGENT_DOMAIN d12791 1 a12792 1 MAILAGENT_FQDN d12795 1 a12796 1 MAJORDOMO_HOMEDIR d12799 1 a12800 1 MAKE_DIRS d12803 1 a12804 1 MAKE_ENV d12807 1 a12808 1 MAKE_FLAGS d12811 1 a12812 1 MAKE_JOBS_SAFE d12815 1 a12816 1 MANCOMPRESSED_IF_MANZ d12819 1 a12820 1 MANZ d12823 1 a12824 1 MASTER_SITE_BACKUP d12827 1 a12828 1 MASTER_SITE_MOZILLA d12831 1 a12832 1 MASTER_SITE_PERL_CPAN d12835 1 a12836 1 MASTER_SORT_RANDOM d12839 1 a12840 1 MECAB_CHARSET d12843 1 a12844 1 MEDIATOMB_USER d12847 1 a12848 1 MIREDO_GROUP d12851 1 a12852 1 MISSING_FEATURES d12855 1 a12856 1 MKPIE_SUPPORTED d12859 1 a12860 1 MLDONKEY_HOME d12863 1 a12864 1 MONOTONE_GROUP d12867 1 a12868 1 MOTIFBASE d12871 1 a12872 1 MOTIF_TYPE_DEFAULT d12875 1 a12876 1 MSGFMT_STRIP_MSGCTXT d12879 1 a12880 1 MTOOLS_ENABLE_FLOPPYD d12883 1 a12884 1 MYSQL_CHARSET d12887 1 a12888 1 MYSQL_EXTRA_CHARSET d12891 1 a12892 1 MYSQL_USER d12895 1 a12896 1 MYSQL_VERSIONS_ACCEPTED d12899 1 a12900 1 MYSQL_VERSION_DEFAULT d12903 1 a12904 1 NAGIOSDIR d12907 1 a12908 1 NAGIOS_USER d12911 1 a12912 1 NATIVE_APPEND_ELF d12915 1 a12916 1 NATIVE_MACHINE_PLATFORM d12919 1 a12920 1 NBPAX_PROGRAM_PREFIX d12923 1 a12924 1 NMH_EDITOR d12927 1 a12928 1 NMH_PAGER d12931 1 a12932 1 NODE_VERSIONS_INCOMPATIBLE d12935 1 a12936 1 NODE_VERSION_REQD d12939 1 d12941 2 d12944 1 a12946 1 NOT_FOR_PLATFORM d12948 1 a12950 1 NOT_PAX_MPROTECT_SAFE d12952 1 a12954 1 NO_CHECKSUM d12956 1 a12958 1 NO_SKIP d12960 1 a12962 1 NULLMAILER_GROUP d12964 1 a12966 1 OASIS d12968 1 a12970 1 OBJHOSTNAME d12972 1 a12974 1 OCAML_FINDLIB_DIRS d12976 1 a12978 1 OCAML_FINDLIB_REGISTER_VERBOSE d12980 1 a12982 1 OCAML_TOPKG_DOCDIR d12984 1 a12986 1 OCAML_USE_FINDLIB d12988 1 a12990 1 OCAML_USE_OASIS_DYNRUN d12992 1 a12994 1 OCAML_USE_TOPKG d12996 1 a12998 1 ONLY_FOR_COMPILER d13000 1 a13002 1 OPENSSH_CHROOT d13004 1 a13006 1 OPENSSH_USER d13008 1 a13010 1 OPSYS_EMULDIR d13012 1 a13014 1 OS d13016 1 a13018 1 OSX d13020 1 a13022 1 OS_VARIANT d13024 1 a13026 1 OTF_FONTS_DIR d13028 1 a13030 1 OVERRIDE_GEMSPEC d13032 1 a13034 1 OWN_DIRS d13036 1 a13038 1 P4GROUP d13040 1 a13042 1 P4ROOT d13044 1 a13046 1 PACKAGES d13048 1 a13050 1 PAMBASE d13052 1 a13054 1 PAPERSIZE d13056 1 a13058 1 PATCHDIR d13060 1 a13062 1 PATCH_ARGS d13064 1 a13066 1 PATCH_DIST_ARGS d13068 1 a13070 1 PATCH_DIST_STRIP d13072 1 a13074 1 PATCH_STRIP d13076 1 a13078 1 PCCBASE d13080 1 a13082 1 PEAR_LIB d13084 1 a13086 1 PERL5 d13088 1 a13090 1 PERL5_CONFIGURE_DIRS d13092 1 a13094 1 PERL5_LICENSE d13096 1 a13098 1 PERL5_PACKLIST d13100 1 a13102 1 PERL5_PERLBASE d13104 1 a13106 1 PERL5_USE_PACKLIST d13108 1 a13110 1 PFCTL d13112 1 a13114 1 PF_VERSION d13116 1 a13118 1 PGHOME d13120 1 a13122 1 PGSQL_TYPE d13124 1 a13126 1 PGSQL_VERSIONS_ACCEPTED d13128 1 a13130 1 PGUSER d13132 1 a13134 1 PHP d13136 1 a13138 1 PHPPKGSRCDIR d13140 1 a13142 1 PHP_CHECK_INSTALLED d13144 1 a13146 1 PHP_INITIAL_TEENY d13148 1 a13150 1 PHP_VERSION d13152 1 a13154 1 PHP_VERSIONS_INCOMPATIBLE d13156 1 a13158 1 PHP_VERSION_REQD d13160 1 a13162 1 PKGCONFIG_BASE d13164 1 a13166 1 PKGCONFIG_OVERRIDE d13168 1 a13170 1 PKGDIR d13172 1 a13174 1 PKGINFODIR d13176 1 a13178 1 PKGMANDIR d13180 1 a13182 1 PKGNAME_REQD d13184 1 a13186 1 PKGREVISION d13188 1 a13190 1 PKGSRC_CHANGES d13192 1 a13194 1 PKGSRC_KEEP_BIN_PKGS d13196 1 a13198 1 PKGSRC_MAKE_ENV d13200 1 a13202 1 PKGSRC_MKPIE d13204 1 a13206 1 PKGSRC_OVERRIDE_MKPIE d13208 1 a13210 1 PKGSRC_SETENV d13212 1 a13214 1 PKGSRC_TODO d13216 1 a13218 1 PKGSRC_USE_FORTIFY d13220 1 a13222 1 PKGSRC_USE_RELRO d13224 1 a13226 1 PKGSRC_USE_STACK_CHECK d13228 1 a13230 1 PKGTOOLS_ARGS d13232 1 a13234 1 PKG_ALTERNATIVES d13236 1 a13238 1 PKG_APACHE_ACCEPTED d13240 1 a13242 1 PKG_BEST_EXISTS d13244 1 a13246 1 PKG_COMPRESSION d13248 1 a13250 1 PKG_CONFIG_PERMS d13252 1 a13254 1 PKG_DB_TMPDIR d13256 1 a13258 1 PKG_DEFAULT_OPTIONS d13260 1 a13262 1 PKG_DEVELOPER d13264 1 a13266 1 PKG_FATAL_ERRORS d13268 1 a13270 1 PKG_FILELIST_CMD d13272 1 a13274 1 PKG_GID d13276 1 a13278 1 PKG_GROUPS_VARS d13280 1 a13282 1 PKG_INIT_SCRIPTS d13284 1 a13286 1 PKG_JVM d13288 1 a13290 1 PKG_JVM_DEFAULT d13292 1 a13294 1 PKG_LIBTOOL d13296 1 a13298 1 PKG_OPTIONS d13300 1 a13302 1 PKG_OPTIONS_LEGACY_OPTS d13304 1 a13306 1 PKG_OPTIONS_NONEMPTY_SETS d13308 1 a13310 1 PKG_OPTIONS_REQUIRED_GROUPS d13312 1 a13314 1 PKG_PHP d13316 1 a13318 1 PKG_PHP_VERSION d13320 1 a13322 1 PKG_REFCOUNT_DBDIR d13324 1 a13326 1 PKG_RESUME_TRANSFERS d13328 1 a13330 1 PKG_SUGGESTED_OPTIONS d13332 1 a13334 1 PKG_SYSCONFBASE d13336 1 a13338 1 PKG_SYSCONFDIR d13340 1 a13342 1 PKG_SYSCONFSUBDIR d13344 1 a13346 1 PKG_TOOLS_BIN d13348 1 a13350 1 PKG_UPDATE_FONTS_DB d13352 1 a13354 1 PKG_USERS_VARS d13356 1 a13358 1 PLEASE d13360 1 a13362 1 PLIST_AWK d13364 1 a13366 1 PLIST_SRC d13368 1 a13370 1 PLIST_TYPE d13372 1 a13374 1 POPTOP_USE_MPPE d13376 1 a13378 1 POST_FETCH_HOOK d13380 1 a13382 1 PREFER_NATIVE d13384 1 a13386 1 PREFER_PKGSRC d13388 1 a13390 1 PREPEND_PATH d13392 1 a13394 1 PRIVILEGED_STAGES d13396 1 a13398 1 PTHREAD_AUTO_VARS d13400 1 a13402 1 PTHREAD_LDFLAGS d13404 1 a13406 1 PTHREAD_OPTS d13408 1 a13410 1 PVM_SSH d13412 1 a13414 1 PYTHON_FOR_BUILD_ONLY d13416 1 a13418 1 PYTHON_VERSIONED_DEPENDENCIES d13420 1 a13422 1 PYTHON_VERSIONS_INCOMPATIBLE d13424 1 a13426 1 PYTHON_VERSION_REQD d13428 1 a13430 1 QMAILDIR d13432 1 a13434 1 QMAIL_DAEMON_USER d13436 1 a13438 1 QMAIL_NOFILES_GROUP d13440 1 a13442 1 QMAIL_QMAIL_GROUP d13444 1 a13446 1 QMAIL_QUEUE_EXTRA d13448 1 a13450 1 QMAIL_REMOTE_USER d13452 1 a13454 1 QMAIL_SEND_USER d13456 1 a13458 1 QORE_MODULE_API d13460 1 a13462 1 QORE_USER_MODULE_DIR d13464 1 a13466 1 QPOPPER_FAC d13468 1 a13470 1 QPOPPER_USER d13472 1 a13474 1 RASMOL_DEPTH d13476 1 a13478 1 RCD_SCRIPTS_DIR d13480 1 a13482 1 RCD_SCRIPTS_MODE d13484 1 a13486 1 RCD_SCRIPT_SRC d13488 1 a13490 1 READLINE_DEFAULT d13492 1 a13494 1 REAL_ROOT_GROUP d13496 1 a13498 1 RECURSIVE_MAKE d13500 1 a13502 1 RELRO_SUPPORTED d13504 1 a13506 1 REPLACE_BASH d13508 1 a13510 1 REPLACE_KSH d13512 1 a13514 1 REPLACE_NODEJS d13516 1 a13518 1 REPLACE_PERL d13520 1 a13522 1 REPLACE_PHP d13524 1 a13526 1 REPLACE_QORE d13528 1 a13530 1 REPLACE_RUBY d13532 1 a13534 1 REPLACE_RUBY_PAT d13536 1 a13538 1 REPLACE_TEXLUA d13540 1 a13542 1 REQD_DIRS d13544 1 a13546 1 REQD_FILES d13548 1 a13550 1 REQD_FILES_PERMS d13552 1 a13554 1 RESOLV_LDFLAGS d13556 1 a13558 1 RM d13560 1 a13562 1 ROOT_GROUP d13564 1 a13566 1 RPCGEN d13568 1 a13570 1 RPM2PKG_PLIST d13572 1 a13574 1 RPM2PKG_STAGE d13576 1 a13578 1 RPM2PKG_SUBPREFIX d13580 1 a13582 1 RPMIGNOREPATH d13584 1 a13586 1 RSSH_CVS_PATH d13588 1 a13590 1 RSSH_RSYNC_PATH d13592 1 a13594 1 RSSH_SFTP_SERVER_PATH d13596 1 a13598 1 RUBYGEM d13600 1 a13602 1 RUBYGEM_OPTIONS d13604 1 a13606 1 RUBY_ABI_VERSION d13608 1 a13610 1 RUBY_ARCHINC d13612 1 a13614 1 RUBY_BASE d13616 1 a13618 1 RUBY_BUILD_DOCUMENT d13620 1 a13622 1 RUBY_DOC d13624 1 a13626 1 RUBY_EG d13628 1 a13630 1 RUBY_EXTCONF d13632 1 a13634 1 RUBY_EXTCONF_DEBUG d13636 1 a13638 1 RUBY_GEM_ARCH d13640 1 a13642 1 RUBY_INC d13644 1 a13646 1 RUBY_LIB_BASE d13648 1 a13650 1 RUBY_NOVERSION d13652 1 a13654 1 RUBY_RAILS d13656 1 a13658 1 RUBY_RAILS60_VERSION d13660 1 a13662 1 RUBY_RAILS70_VERSION d13664 1 a13666 1 RUBY_RAILS_DEFAULT d13668 1 a13670 1 RUBY_RAILS_STRICT_DEP d13672 1 a13674 1 RUBY_SETUP d13676 1 a13678 1 RUBY_SHLIBALIAS d13680 1 a13682 1 RUBY_SIMPLE_INSTALL d13684 1 a13686 1 RUBY_SITELIB d13688 1 a13690 1 RUBY_SITERIDIR d13692 1 a13694 1 RUBY_SRCDIR d13696 1 a13698 1 RUBY_SUFFIX d13700 1 a13702 1 RUBY_USE_PTHREAD d13704 1 a13706 1 RUBY_VENDORLIB d13708 1 a13710 1 RUBY_VER d13712 1 a13714 1 RUBY_VERSIONS_ACCEPTED d13716 1 a13718 1 RUBY_VERSION_DEFAULT d13720 1 a13722 1 RUBY_VER_DIR d13724 1 a13726 1 RUN_LDCONFIG d13728 1 a13730 1 SCO d13732 1 a13734 1 SCREWS_USER d13736 1 a13738 1 SCROLLKEEPER_DATADIR d13740 1 a13742 1 SCROLLKEEPER_UPDATEDB d13744 1 a13746 1 SDL12_TYPE d13748 1 a13750 1 SETGIDGAME d13752 1 a13754 1 SETUID_ROOT_PERMS d13756 1 a13758 1 SHLIB d13760 1 a13762 1 SILC_CLIENT_WITH_PERL d13764 1 a13766 1 SKIP_DEPENDS d13768 1 a13770 1 SMF_MANIFEST d13772 1 a13774 1 SMF_METHOD_SHELL d13776 1 a13778 1 SMF_NAME d13780 1 a13782 1 SMF_SRCDIR d13784 1 a13786 1 SNIPROXY_USER d13788 1 a13790 1 SPECIAL_PERMS d13792 1 a13794 1 SSH_SUID d13796 1 a13798 1 SSYNC_PAWD d13800 1 a13802 1 STRIP d13804 1 a13806 1 STRIP_DEBUG d13808 1 a13810 1 STRIP_FILES_SKIP d13812 1 a13814 1 SUBDIR d13816 1 a13818 1 SUBST_CLASSES d13820 1 a13822 1 SUBST_FILTER_CMD d13824 1 a13826 1 SUBST_NOOP_OK d13828 1 a13830 1 SUBST_SHOW_DIFF d13832 1 a13834 1 SUBST_STAGE d13836 1 a13838 1 SUNWSPROBASE d13840 1 a13842 1 SU_CMD d13844 1 a13846 1 TARGET_ARCH d13848 1 a13850 1 TERMCAP_TYPE d13852 1 a13854 1 TERMINFO_TYPE d13856 1 a13858 1 TEST_DEPENDS d13860 1 a13862 1 TEST_ENV d13864 1 a13866 1 TEST_MAKE_CMD d13868 1 a13870 1 TEST_TARGET d13872 1 a13874 1 TEXLIVE_REV d13876 1 a13878 1 TEXMFSITE d13880 1 a13882 1 TEX_HYPHEN_DAT d13884 1 a13886 1 TEX_TEXMF_DIRS d13888 1 a13890 1 TINYDYN_USER d13892 1 a13894 1 TO d13896 1 a13898 1 TOOLS_ALWAYS_WRAP d13900 1 a13902 1 TOOLS_BROKEN d13904 1 a13906 1 TOOLS_CMDLINE_SED d13908 1 a13910 1 TOOLS_CROSS_DESTDIR d13912 1 a13914 1 TOOLS_FAIL d13916 1 a13918 1 TOOLS_LDCONFIG d13920 1 a13922 1 TOOLS_PATH d13924 1 a13926 1 TOOLS_USE_CROSS_COMPILE d13928 1 a13930 1 TTF_FONTS_DIR d13932 1 a13934 1 UAC_REQD_EXECS d13936 1 a13938 1 UCSPI_SSL_USER d13940 1 a13942 1 UNPRIVILEGED d13944 1 a13946 1 UNPRIVILEGED_GROUPS d13948 1 a13950 1 UNWRAP_FILES d13952 1 a13954 1 UPDATE_GEMSPEC d13956 1 a13958 1 URI d13960 1 a13962 1 USERPPP_GROUP d13964 1 a13966 1 USE_ABI_DEPENDS d13968 1 a13970 1 USE_BSD_MAKEFILE d13972 1 a13974 1 USE_CROSS_COMPILE d13976 1 a13978 1 USE_CWRAPPERS d13980 1 a13982 1 USE_FEATURES d13984 1 a13986 1 USE_GCC_RUNTIME d13988 1 a13990 1 USE_JAVA d13992 1 a13994 1 USE_LANGUAGES d13996 1 a13998 1 USE_NATIVE_GCC d14000 1 a14002 1 USE_PKGSRC_GCC d14004 1 a14006 1 USE_PKGTASKS d14008 1 a14010 1 USE_RUBY_EXTCONF d14012 1 a14014 1 USE_RUBY_SETUP d14016 1 a14018 1 USE_TOOLS d14020 1 a14022 1 UUCP_USER d14024 1 a14026 1 VARNAME d14028 1 a14030 1 WARNING_MSG d14032 1 a14034 1 WCALC_CGIPATH d14036 1 a14038 1 WCALC_HTMLPATH d14040 1 a14042 1 WRAPPER_CC d14044 1 a14046 1 WRKDIR d14048 1 a14050 1 WRKDIR_LOCKTYPE d14052 1 a14054 1 WRKOBJDIR d14056 1 a14058 1 X10_PORT d14060 1 a14062 1 X11BASE d14064 1 a14066 1 X11_TYPE d14068 1 a14070 1 X509_KEY d14072 1 a14074 1 XLOCK_DEFAULT_MODE d14076 1 a14078 1 XMKMF_FLAGS d14080 1 a14082 1 YES d14084 1 a14086 1 __stdc__ d14088 1 a14090 1 accept d14092 1 a14094 1 acquire-lock d14096 1 a14098 1 added d14100 1 a14102 1 alloca d14104 1 a14106 1 aslr d14108 1 a14110 1 atlas d14112 1 a14114 1 automake d14116 1 a14118 1 awk d14120 1 a14122 1 big-endian d14124 1 a14126 1 bind d14128 1 a14130 1 blas d14132 1 a14134 1 broken d14136 1 a14138 1 bsd d14140 1 a14142 1 build d14144 1 a14146 1 buildlink-directories d14148 1 a14150 1 c d14152 1 a14154 1 ccache d14156 1 a14158 1 cdefs d14160 1 a14162 1 changes d14164 1 a14166 1 changes-entry-noupdate d14168 1 a14170 1 check-clean d14172 1 a14174 1 check-files-clean d14176 1 a14178 1 checksum d14180 1 a14182 1 clean d14184 1 a14186 1 cleandir d14188 1 a14190 1 commit-changes-entry d14192 1 a14194 1 compiler d14196 1 a14198 1 config.guess d14200 1 a14202 1 configuration d14204 1 a14206 1 configure-env d14208 1 a14210 1 configure_args d14212 1 a14214 1 cos d14216 1 a14218 1 create-usergroup d14220 1 a14222 1 ctf d14224 1 a14226 1 declaration d14228 1 a14230 1 defined d14232 1 a14234 1 dependencies d14236 1 a14238 1 depends-checksum d14240 1 a14242 1 deps d14244 1 a14246 1 destdir d14248 1 a14250 1 distclean d14252 1 a14254 1 dl d14256 1 a14258 1 do-buildlink d14260 1 a14262 1 do-configure d14264 1 a14266 1 do-extract d14268 1 a14270 1 do-install d14272 1 a14274 1 emul-distinfo d14276 1 a14278 1 emulation d14280 1 a14282 1 enable d14284 1 a14286 1 enomem d14288 1 a14290 1 err d14292 1 a14294 1 etc d14296 1 a14298 1 extract-rpm d14300 1 a14302 1 feature d14304 1 a14306 1 fetch d14308 1 a14310 1 follows d14312 1 a14314 1 form d14316 1 a14318 1 fortify d14320 1 a14322 1 friend d14324 1 a14326 1 fts_close d14328 1 a14330 1 fts_read d14332 1 a14334 1 gcc d14336 1 a14338 1 gethostbyname d14340 1 a14342 1 getopt_long d14344 1 a14346 1 getservbyname d14348 1 a14350 1 getservent d14352 1 a14354 1 github d14356 1 a14358 1 glob d14360 1 a14362 1 gnu_configure_strict d14364 1 a14366 1 go-deps d14368 1 a14370 1 guess-license d14372 1 a14374 1 heimdal d14376 1 a14378 1 imake d14380 1 a14382 1 indirect d14384 1 a14386 1 interp d14388 1 a14390 1 intl d14392 1 a14394 1 ip6 d14396 1 a14398 1 ipv6 d14400 1 a14402 1 kerberos d14404 1 a14406 1 krb5 d14408 1 a14410 1 lapack d14412 1 a14414 1 libintl_bindtextdomain d14416 1 a14418 1 libintl_textdomain d14420 1 a14422 1 libs d14424 1 a14426 1 licence d14428 1 a14430 1 lintl d14432 1 a14434 1 lock d14436 1 a14438 1 lua d14440 1 a14442 1 make d14444 1 a14446 1 memory d14448 1 a14450 1 meta-package d14452 1 a14454 1 mit-krb5 d14456 1 a14458 1 mkl d14460 1 a14462 1 move d14464 1 a14466 1 mprotect d14468 1 a14470 1 nb d14472 1 a14474 1 netlib d14476 1 a14478 1 node.js d14480 1 a14482 1 obstack d14484 1 a14486 1 occurs d14488 1 a14490 1 openblas d14492 1 a14494 1 options.mk d14496 1 a14498 1 override d14500 1 a14502 1 override-message-intltool d14504 1 a14506 1 parallel d14508 1 a14510 1 pax d14512 1 a14514 1 pbulk-index d14516 1 a14518 1 perl d14520 1 a14522 1 perms d14524 1 a14526 1 pkg-build-options d14528 1 a14530 1 pkg_build_options d14532 1 a14534 1 plist d14536 1 a14538 1 post-fetch d14540 1 a14542 1 pre-build-checks-hook d14544 1 a14546 1 pre-configure-checks-hook d14548 1 a14550 1 pre-fetch d14552 1 a14554 1 print-plist d14556 1 a14558 1 privileged-install-hook d14560 1 a14562 1 python d14564 1 a14566 1 readme-all d14568 1 a14570 1 recv d14572 1 a14574 1 regcomp d14576 1 a14578 1 release-lock d14580 1 a14582 1 remove d14584 1 a14586 1 rename d14588 1 a14590 1 reorder d14592 1 a14594 1 replace_interpreter d14596 1 a14598 1 resolv d14600 1 a14602 1 ruby d14604 1 a14606 1 sendfile d14608 1 a14610 1 setenv d14612 1 a14614 1 setprogname d14616 1 a14618 1 sh d14620 1 a14622 1 show d14624 1 a14626 1 show-build-defs d14628 1 a14630 1 show-depends-dirs d14632 1 a14634 1 show-depends-recursive d14636 1 a14638 1 show-distfiles d14640 1 a14642 1 show-subdir-var d14644 1 a14646 1 show-var d14648 1 a14650 1 snprintf d14652 1 a14654 1 ssp d14656 1 a14658 1 stage-install d14660 1 a14662 1 strict d14664 1 a14666 1 strndup d14668 1 a14670 1 strsep d14672 1 a14674 1 substitutions d14676 1 a14678 1 sunpro d14680 1 a14682 1 symlink d14684 1 a14686 1 test-env d14688 1 a14690 1 texlive d14692 1 a14694 1 todo d14696 1 a14698 1 tools d14700 1 a14702 1 transitive d14704 1 a14706 1 ulimit d14708 1 a14710 1 undo-replace d14712 1 a14714 1 unprivileged d14716 1 a14718 1 unstripped d14720 1 a14722 1 updated d14724 1 a14726 1 upload-distfiles d14728 1 a14730 1 user d14732 1 a14734 1 vasprintf d14736 1 a14738 1 vsnprintf d14740 1 a14742 1 warning d14744 1 a14746 1 warnx d14748 1 a14750 1 wattr_on d14752 1 a14754 1 wrapper d14756 1 @ 1.342 log @doc/pkgsrc.*: regen @ text @d4168 15 a4182 3

    This is a pathname relative to PKGSRCDIR that points to the current package.

    d4209 5 a4213 4 phase
    , where phase is the name of the phase. This will automatically run all phases that are required for this phase. The default phase is build, that is, when you run make without parameters in a package directory, d9010 9 a11823 1 ALSA_PC d11825 1 a11827 1 AMANDA_TMP d11829 1 a11831 1 AMANDA_VAR d11833 1 a11835 1 APACHE_MODULE_NAME d11837 1 a11839 1 APACHE_MODULE_SRCDIR d11841 1 a11843 1 APACHE_SUEXEC_CONFIGURE_ARGS d11845 1 a11847 1 APACHE_USER d11849 1 a11851 1 APPEND_ELF d11853 1 a11855 1 AUDIT_PACKAGES_FLAGS d11857 1 a11859 1 AUTOMAKE_OVERRIDE d11861 1 a11863 1 AUTO_MKDIRS d11865 1 a11867 1 BDBBASE d11869 1 a11871 1 BDB_DEFAULT d11873 1 a11875 1 BDB_TYPE d11877 1 a11879 1 BINCIMAP_USER d11881 1 a11883 1 BIND_GROUP d11885 1 a11887 1 BINOWN d11889 1 a11891 1 BIN_INSTALL_FLAGS d11893 1 a11895 1 BLAS d11897 1 a11899 1 BLAS_C_INTERFACE d11901 1 a11903 1 BLAS_INDEX64 d11905 1 a11907 1 BLAS_TYPE d11909 1 a11911 1 BROKEN d11913 1 a11915 1 BROKEN_ON_PLATFORM d11917 1 a11919 1 BSDXSRCDIR d11921 1 a11923 1 BUILDLINK_AUTO_DIRS d11925 1 a11927 1 BUILDLINK_CFLAGS a11928 2 a11929 1 BUILDLINK_DEPMETHOD a12023 1 CHECKOUT_DATE d12025 1 a12027 1 CHECK_FAKEHOME d12029 1 a12031 1 CHECK_FILES_SKIP d12033 1 a12035 1 CHECK_HEADERS d12037 1 a12039 1 CHECK_INTERPRETER d12041 1 a12043 1 CHECK_PERMS d12045 1 a12047 1 CHECK_PERMS_SKIP d12049 1 a12051 1 CHECK_PIE_SKIP d12053 1 a12055 1 CHECK_PORTABILITY d12057 1 a12059 1 CHECK_PORTABILITY_SKIP d12061 1 a12063 1 CHECK_RELRO_SKIP d12065 1 a12067 1 CHECK_SHLIBS d12069 1 a12071 1 CHECK_SHLIBS_SUPPORTED d12073 1 a12075 1 CHECK_SSP d12077 1 a12079 1 CHECK_SSP_SUPPORTED d12081 1 a12083 1 CHECK_STRIPPED_SKIP d12085 1 a12087 1 CHECK_WRKREF_EXTRA_DIRS d12089 1 a12091 1 CLAMAV_DBDIR d12093 1 a12095 1 CLAMAV_USER d12097 1 a12099 1 CLEANDEPENDS d12101 1 a12103 1 CMAKE_INSTALL_NAME_DIR d12105 1 a12107 1 CMAKE_MODULE_PATH_OVERRIDE d12109 1 a12111 1 CMAKE_PREFIX_PATH a12112 11 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM d12173 1 a12173 5 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT a12175 13 CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG CXX d12177 1 a12179 1 CYRUS_IDLE d12181 1 a12183 1 DAEMONTOOLS_GROUP d12185 1 a12187 1 DARWIN_NO_SYSTEM_LIBS d12189 1 a12191 1 DBUS_GROUP d12193 1 a12195 1 DEFANG_GROUP d12197 1 a12199 1 DEFAULT_ACCEPTABLE_LICENSES d12201 1 a12203 1 DEFAULT_IRC_SERVER d12205 1 a12207 1 DEF_UMASK d12209 1 a12211 1 DEINSTALL_SRC d12213 1 a12215 1 DELAYED_ERROR_MSG d12217 1 a12219 1 DEPENDS d12221 1 a12223 1 DEPENDS_TYPE d12225 1 a12227 1 DESTDIR_VARNAME d12229 1 a12231 1 DIGEST_REQD d12233 1 a12235 1 DISTFILES d12237 1 a12239 1 DISTNAME d12241 1 a12243 1 DIST_SUBDIR d12245 1 a12247 1 DJBDNS_CACHE_USER d12249 1 a12251 1 DJBDNS_LOG_USER d12253 1 a12255 1 DJBDNS_TINY_USER d12257 1 a12259 1 DL_AUTO_VARS d12261 1 a12263 1 DL_LDFLAGS d12265 1 a12267 1 DNS d12269 1 a12271 1 DOWNLOADED_DISTFILE d12273 1 a12275 1 DQCACHE_USER d12277 1 a12279 1 DYNAMIC_SITES_CMD d12281 1 a12283 1 ECHO d12285 1 a12287 1 ELK_GUI d12289 1 a12291 1 EMULDIR d12293 1 a12295 1 EMULSUBDIRSLASH d12297 1 a12299 1 EMUL_DISTRO d12301 1 a12303 1 EMUL_IS_NATIVE d12305 1 a12307 1 EMUL_OPSYS d12309 1 a12311 1 EMUL_PLATFORM d12313 1 a12315 1 EMUL_PREFER d12317 1 a12319 1 EMUL_TYPE d12321 1 a12323 1 EXIM_GROUP d12325 1 a12327 1 EXPORT_SYMBOLS_LDFLAGS d12329 1 a12331 1 EXTRACT_CMD d12333 1 a12335 1 EXTRACT_DIR d12337 1 a12339 1 EXTRACT_ENV d12341 1 a12343 1 EXTRACT_OPTS d12345 1 a12347 1 EXTRACT_USING d12349 1 a12351 1 FAILOVER_FETCH d12353 1 a12355 1 FAKE_NCURSES d12357 1 a12359 1 FAM_ACCEPTED d12361 1 a12363 1 FAM_SERVER d12365 1 a12367 1 FEATURE_CPPFLAGS d12369 1 a12371 1 FEATURE_LIBS d12373 1 a12375 1 FETCH_BEFORE_ARGS d12377 1 a12379 1 FETCH_OUTPUT_ARGS d12381 1 a12383 1 FETCH_RESUME_ARGS d12385 1 a12387 1 FETCH_USE_IPV4_ONLY d12389 1 a12391 1 FILES_SUBST a12392 2 a12393 1 FONTDIR a12400 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12487 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12489 1 a12491 1 GNU_CONFIGURE d12493 1 a12495 1 GNU_CONFIGURE_MANDIR d12497 1 a12499 1 GNU_CONFIGURE_STRICT d12501 1 a12503 1 GO_BUILD_PATTERN d12505 1 a12507 1 GO_DIST_BASE d12509 1 a12511 1 GO_MODULE_FILES d12513 1 a12515 1 GO_VERSION_DEFAULT d12517 1 a12519 1 GRUB_NETWORK_CARDS d12521 1 a12523 1 GRUB_SCAN_ARGS a12524 3 HASKELL_COMPILER a12539 5 HG_REPO HG_REPOSITORIES HG_TAG d12541 1 a12543 1 HOST_PKGTOOLS_ARGS d12545 1 a12547 1 HOWL_GROUP d12549 1 a12551 1 ICCBASE d12553 1 a12555 1 ICON_THEMES d12557 1 a12559 1 IGNORE_CCACHE d12561 1 a12563 1 IGNORE_INTERACTIVE_FETCH d12565 1 a12567 1 IMAKEOPTS d12569 1 a12571 1 IMAKE_MANINSTALL d12573 1 a12575 1 IMDICTDIR d12577 1 a12579 1 INFO_DIR d12581 1 a12583 1 INFO_FILES_VERBOSE d12585 1 a12587 1 INIT_SYSTEM d12589 1 a12591 1 INN_GROUP d12593 1 a12595 1 INSTALLATION_DIRS d12597 1 a12599 1 INSTALL_ENV d12601 1 a12603 1 INSTALL_SRC d12605 1 a12607 1 INSTALL_UNSTRIPPED d12609 1 a12611 1 IRCD_HYBRID_IRC_USER d12613 1 a12615 1 IRCD_HYBRID_NICLEN d12617 1 a12619 1 IRCD_HYBRID_SYSLOG_FACILITY d12621 1 a12623 1 IRIX d12625 1 a12627 1 JABBERD_GROUP d12629 1 a12631 1 JABBERD_PIDDIR a12632 2 a12633 1 JAVA_APP_PATH a12635 1 JAVA_APP_TARGETS d12637 1 a12639 1 JAVA_CLASSPATH d12641 1 a12643 1 JAVA_LD_LIBRARY_PATH d12645 1 a12647 1 JAVA_UNLIMIT d12649 1 a12651 1 JPEG_ACCEPTED d12653 1 a12655 1 KERBEROS d12657 1 a12659 1 KJS_USE_PCRE d12661 1 a12663 1 KNEWS_DOMAIN_NAME d12665 1 a12667 1 KRB5_DEFAULT d12669 1 a12671 1 LAPACKE_LIBS d12673 1 a12675 1 LATEX2HTML_ICONPATH d12677 1 a12679 1 LDCONFIG_REMOVE_CMD d12681 1 a12683 1 LEAFNODE_DATA_DIR d12685 1 a12687 1 LEAFNODE_USER d12689 1 a12691 1 LIBDVDCSS_MASTER_SITES d12693 1 a12695 1 LIBTOOL d12697 1 a12699 1 LIBTOOL_M4_OVERRIDE d12701 1 a12703 1 LICENSE a12704 2 a12705 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED a12771 1 MAJOR_OS_VERSION d12773 1 a12775 1 MAKE_DIRS d12777 1 a12779 1 MAKE_ENV d12781 1 a12783 1 MAKE_FLAGS d12785 1 a12787 1 MAKE_JOBS_SAFE d12789 1 a12791 1 MANCOMPRESSED_IF_MANZ d12793 1 a12795 1 MANZ d12797 1 a12799 1 MASTER_SITE_BACKUP d12801 1 a12803 1 MASTER_SITE_MOZILLA d12805 1 a12807 1 MASTER_SITE_PERL_CPAN d12809 1 a12811 1 MASTER_SORT_RANDOM d12813 1 a12815 1 MECAB_CHARSET d12817 1 a12819 1 MEDIATOMB_USER d12821 1 a12823 1 MIREDO_GROUP d12825 1 a12827 1 MISSING_FEATURES d12829 1 a12831 1 MKPIE_SUPPORTED d12833 1 a12835 1 MLDONKEY_HOME d12837 1 a12839 1 MONOTONE_GROUP d12841 1 a12843 1 MOTIFBASE d12845 1 a12847 1 MOTIF_TYPE_DEFAULT d12849 1 a12851 1 MSGFMT_STRIP_MSGCTXT a12852 2 a12853 1 MUST a12991 4 OS_HAVE_ALSA OS_HAVE_RCD a13003 1 OVERRIDE_ROCKSPEC d13005 1 a13007 1 OWN_DIRS_PERMS d13009 1 a13011 1 P4PORT d13013 1 a13015 1 P4USER d13017 1 a13019 1 PALMOS_DEFAULT_SDK d13021 1 a13023 1 PAM_DEFAULT d13025 1 a13027 1 PASSIVE_FETCH d13029 1 a13031 1 PATCHFILES d13033 1 a13035 1 PATCH_DEBUG d13037 1 a13039 1 PATCH_DIST_CAT d13041 1 a13043 1 PATCH_FUZZ_FACTOR d13045 1 a13047 1 PATH d13049 1 a13051 9 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION PEAR_CMD d13053 1 a13055 1 PEAR_PACKAGE_XML d13057 1 a13059 1 PERL5_CONFIGURE d13061 1 a13063 1 PERL5_LDFLAGS d13065 1 a13067 1 PERL5_MODULE_TYPE d13069 1 a13071 1 PERL5_PACKLIST_DIR d13073 1 a13075 1 PERL5_SITEBASE d13077 1 a13079 1 PERL5_VENDORBASE d13081 1 a13083 1 PFVAR_H d13085 1 a13087 1 PGGROUP d13089 1 a13091 1 PGPKGSRCDIR d13093 1 a13095 1 PGSQL_VERSION d13097 1 a13099 1 PGSQL_VERSION_DEFAULT d13101 1 a13103 1 PG_LIB_EXT d13105 1 a13107 1 PHPCOMMON_MK d13109 1 a13111 1 PHP_BASE_VERS d13113 1 a13115 1 PHP_EXTENSION_DIR d13117 1 a13119 1 PHP_PKG_PREFIX d13121 1 a13123 1 PHP_VERSIONS_ACCEPTED d13125 1 a13127 1 PHP_VERSION_DEFAULT d13129 1 a13131 1 PILRC_USE_GTK d13133 1 a13135 1 PKGCONFIG_FILE d13137 1 a13139 1 PKGCONFIG_OVERRIDE_STAGE d13141 1 a13143 1 PKGGNUDIR d13145 1 a13147 1 PKGLOCALEDIR d13149 1 a13151 1 PKGNAME d13153 1 a13155 1 PKGPATH d13157 1 a13159 1 PKGSRC_BLAS_TYPES d13161 1 a13163 1 PKGSRC_COMPILER d13165 1 a13167 1 PKGSRC_LOCKTYPE d13169 1 a13171 1 PKGSRC_MESSAGE_RECIPIENTS d13173 1 a13175 1 PKGSRC_MKREPRO d13177 1 a13179 1 PKGSRC_RUN_TEST d13181 1 a13183 1 PKGSRC_SLEEPSECS d13185 1 a13187 1 PKGSRC_USE_CTF d13189 1 a13191 1 PKGSRC_USE_MKTOOLS d13193 1 a13195 1 PKGSRC_USE_SSP d13197 1 a13199 1 PKGTASKS_DATAFILE d13201 1 a13203 1 PKGTOOLS_ENV d13205 1 a13207 1 PKG_APACHE d13209 1 a13211 1 PKG_APACHE_DEFAULT d13213 1 a13215 1 PKG_BUILD_OPTIONS d13217 1 a13219 1 PKG_CONFIG d13221 1 a13223 1 PKG_CREATE_USERGROUP d13225 1 a13227 1 PKG_DEBUG_LEVEL d13229 1 a13231 1 PKG_DESTDIR_SUPPORT d13233 1 a13235 1 PKG_DISABLED_OPTIONS d13237 1 a13239 1 PKG_FC d13241 1 a13243 1 PKG_GECOS d13245 1 a13247 1 PKG_GROUPS d13249 1 a13251 1 PKG_HOME d13253 1 a13255 1 PKG_JAVA_HOME d13257 1 a13259 1 PKG_JVMS_ACCEPTED d13261 1 a13263 1 PKG_LEGACY_OPTIONS d13265 1 a13267 1 PKG_MKSYMLINKS d13269 1 a13271 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13273 1 a13275 1 PKG_OPTIONS_LEGACY_VARS d13277 1 a13279 1 PKG_OPTIONS_OPTIONAL_GROUPS d13281 1 a13283 1 PKG_OPTIONS_VAR d13285 1 a13287 1 PKG_PHP_MAJOR_VERS d13289 1 a13291 1 PKG_RCD_SCRIPTS d13293 1 a13295 1 PKG_REGISTER_SHELLS d13297 1 a13299 1 PKG_SHELL d13301 1 a13303 1 PKG_SUPPORTED_OPTIONS d13305 1 a13307 1 PKG_SYSCONFBASEDIR d13309 1 a13311 1 PKG_SYSCONFDIR_PERMS d13313 1 a13315 1 PKG_SYSCONFVAR d13317 1 a13319 1 PKG_UID d13321 1 a13323 1 PKG_USERS d13325 1 a13327 1 PKG_VERBOSE d13329 1 a13331 1 PLIST d13333 1 a13335 1 PLIST_AWK_ENV d13337 1 a13339 1 PLIST_SUBST d13341 1 a13343 1 PLIST_VARS d13345 1 a13347 1 POSSIBLE_GFORTRAN_VERSION d13349 1 a13351 1 PREFER d13353 1 a13355 1 PREFER_NATIVE_PTHREADS d13357 1 a13359 1 PREFIX d13361 1 a13363 1 PRE_ROOT_CMD d13365 1 a13367 1 PS d13369 1 a13371 1 PTHREAD_CFLAGS d13373 1 a13375 1 PTHREAD_LIBS d13377 1 a13379 1 PTHREAD_TYPE d13381 1 a13383 1 PYPKGPREFIX d13385 1 a13387 1 PYTHON_SELF_CONFLICT d13389 1 a13391 1 PYTHON_VERSIONS_ACCEPTED d13393 1 a13395 1 PYTHON_VERSION_DEFAULT d13397 1 a13399 1 PYVERSSUFFIX d13401 1 a13403 1 QMAIL_ALIAS_USER d13405 1 a13407 1 QMAIL_LOG_USER d13409 1 a13411 1 QMAIL_PASSWD_USER d13413 1 a13415 1 QMAIL_QUEUE_DIR d13417 1 a13419 1 QMAIL_QUEUE_USER d13421 1 a13423 1 QMAIL_ROOT_USER d13425 1 a13427 1 QORE_LATEST_MODULE_API d13429 1 a13431 1 QORE_MODULE_DIR d13433 1 a13435 1 QORE_VERSION d13437 1 a13439 1 QPOPPER_SPOOL_DIR d13441 1 a13443 1 RAKE_NAME d13445 1 a13447 5 RCD_DIR RCD_ORDER RCD_SCRIPTS d13449 1 a13451 1 RCD_SCRIPTS_EXAMPLEDIR d13453 1 a13455 1 RCD_SCRIPTS_SHELL a13456 3 RCD_SUBR a13528 4 ROCKSPEC_NAME ROCKSPEC_SPECFILE d13729 1 a13729 1 SHORTNAME a13731 1 SIGN_PACKAGES d13733 1 a13735 1 SITE_SPECIFIC_PKGS d13737 1 a13739 1 SMF_INSTANCES d13741 1 a13743 1 SMF_METHODS d13745 1 a13747 1 SMF_METHOD_SRC d13749 1 a13751 1 SMF_PREFIX d13753 1 a13755 1 SNIPROXY_GROUP d13757 1 a13759 1 SOURCE_BUFFSIZE d13761 1 a13763 1 SPECIFIC_PKGS d13765 1 a13767 1 SSP_SUPPORTED d13769 1 a13771 1 STEP_MSG d13773 1 a13775 1 STRIP_DBG d13777 1 a13779 1 STRIP_DEBUG_SUPPORTED d13781 1 a13783 1 SU d13785 1 a13787 1 SUBST d13789 1 a13791 1 SUBST_FILES d13793 1 a13795 1 SUBST_MESSAGE d13797 1 a13799 1 SUBST_SED d13801 1 a13803 1 SUBST_SKIP_TEXT_CHECK d13805 1 a13807 1 SUBST_VARS d13809 1 a13811 1 SUSE_PREFER d13813 1 a13815 9 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION SYSCONFBASE d13817 1 a13819 1 TBL d13821 1 a13823 1 TERMINFO_DEFAULT d13825 1 a13827 1 TEST d13829 1 a13831 1 TEST_DIRS d13833 1 a13835 1 TEST_ENV_SHELL d13837 1 a13839 1 TEST_MAKE_FLAGS d13841 1 a13843 1 TEXLIVE_IGNORE_PATTERNS d13845 1 a13847 1 TEXLIVE_UNVERSIONED d13849 1 a13851 1 TEX_FORMATS d13853 1 a13855 1 TEX_HYPHEN_DEF d13857 1 a13859 1 THTTPD_LOG_FACILITY d13861 1 a13863 1 TLSWRAPPER_CHROOT d13865 1 a13867 1 TOOLS_ALIASES d13869 1 a13871 1 TOOLS_ARGS d13873 1 a13875 1 TOOLS_CMD d13877 1 a13879 1 TOOLS_CREATE d13881 1 a13883 1 TOOLS_DIR d13885 1 a13887 1 TOOLS_GNU_MISSING d13889 1 a13891 1 TOOLS_NOOP d13893 1 a13895 1 TOOLS_SCRIPT a13896 2 a13897 1 TTF_FONTDIR a14051 1 XXXX d14053 1 a14055 1 ZSH_STATIC d14057 1 a14059 1 _vargroups d14061 1 a14063 1 acquire-localbase-lock d14065 1 a14067 1 add d14069 1 a14071 1 administrator d14073 1 a14075 1 alternatives d14077 1 a14079 1 asprintf d14081 1 a14083 1 autoconf d14085 1 a14087 1 autoreconf d14089 1 a14091 1 bash d14093 1 a14095 1 bin-install d14097 1 a14099 1 binpkg-list d14101 1 a14103 1 bootstrap-depends d14105 1 a14107 1 broken_on_platform d14109 1 a14111 1 bsd.prog.mk d14113 1 a14115 1 build-env d14117 1 a14119 1 buildlink-oss-soundcard-h d14121 1 a14123 1 c++ d14125 1 a14127 1 cce d14129 1 a14131 1 ceil d14133 1 a14135 1 changes-entry d14137 1 a14139 1 check d14141 1 a14143 1 check-files d14145 1 a14147 1 check-vulnerable d14149 1 a14151 1 checksum-phase d14153 1 a14155 1 clean-depends d14157 1 a14159 1 commit d14161 1 a14163 1 compact d14165 1 a14167 1 conf d14169 1 a14171 1 config.sub d14173 1 a14175 1 configure d14177 1 a14179 1 configure-help d14181 1 a14183 1 connect d14185 1 a14187 1 cputime d14189 1 a14191 1 csh a14192 3 cvs a14255 1 endif d14257 1 a14259 1 ensurepip d14261 1 a14263 1 errx d14265 1 a14267 1 exp d14269 1 a14271 1 fabs d14273 1 a14275 1 features d14277 1 a14279 1 fetch-list d14281 1 a14283 1 forbids d14285 1 a14287 1 format a14288 2 a14289 1 fossil a14323 1 git d14325 1 a14327 1 gitlab d14329 1 a14331 1 gnu d14333 1 a14335 1 go d14337 1 a14339 1 golang d14341 1 a14343 1 hashbang a14344 2 a14345 1 hg d14417 1 a14417 1 mercurial a14419 1 meta d14421 1 a14423 1 meta_package d14425 1 a14427 1 mk.conf d14429 1 a14431 1 mount d14433 1 a14435 1 moved d14437 1 a14439 1 mremap d14441 1 a14443 1 nbcompat d14445 1 a14447 1 node d14449 1 a14451 1 nodejs d14453 1 a14455 1 obstack_ptr_grow d14457 1 a14459 1 only d14461 1 a14463 1 options d14465 1 a14467 1 order d14469 1 a14471 1 override-intltool d14473 1 a14475 1 package d14477 1 a14479 1 path d14481 1 a14483 1 paxctl d14485 1 a14487 1 pc d14489 1 a14491 1 perl5 d14493 1 a14495 1 php d14497 1 a14499 1 pkg-config d14501 1 a14503 1 platform d14505 1 a14507 1 post-extract d14509 1 a14511 1 post-wrapper d14513 1 a14515 1 pre-configure d14517 1 a14519 1 pre-extract d14521 1 a14523 1 print-go-deps d14525 1 a14527 1 print-summary-data d14529 1 a14531 1 pypi d14533 1 a14535 1 r d14537 1 a14539 1 recursive d14541 1 a14543 1 recvfrom d14545 1 a14547 1 release-localbase-lock d14549 1 a14551 1 relro d14553 1 a14555 1 removed d14557 1 a14559 1 renamed d14561 1 a14563 1 replace d14565 1 a14567 1 reproducible d14569 1 a14571 1 root d14573 1 a14575 1 send d14577 1 a14579 1 sendto d14581 1 a14583 1 setgid d14585 1 a14587 1 setuid d14589 1 a14591 1 shebang d14593 1 a14595 1 show-all d14597 1 a14599 1 show-depends d14601 1 a14603 1 show-depends-pkgpaths d14605 1 a14607 1 show-deps d14609 1 a14611 1 show-downlevel d14613 1 a14615 1 show-tools d14617 1 a14619 1 show-vars d14621 1 a14623 1 socket d14625 1 a14627 1 st_mode d14629 1 a14631 1 strcasestr d14633 1 a14635 1 strip d14637 1 a14639 1 strnlen d14641 1 a14643 1 subst a14644 3 subversion a14651 1 svn d14653 1 a14655 1 test d14657 1 a14659 1 tex d14661 1 a14663 1 tmp d14665 1 a14667 1 tool d14669 1 a14671 1 tools-libtool-m4-override d14673 1 a14675 1 type d14677 1 a14679 1 undefined d14681 1 a14683 1 unlimit d14685 1 a14687 1 unprivileged-install-hook d14689 1 a14691 1 update d14693 1 a14695 1 upload d14697 1 a14699 1 use_tools d14701 1 a14703 1 utimes d14705 1 a14707 1 verbose d14709 1 a14711 1 warn d14713 1 a14715 1 warnings d14717 1 a14719 1 wattr_off d14721 1 a14723 1 work a14724 2 a14725 1   @ 1.341 log @doc/pkgsrc.*: regen @ text @d7721 1 a7721 2 tree or has the same PKGNAME (though, the latter would arguably be a bug in itself).

    d11802 1 d11804 2 d11807 1 a11809 1 AMANDA_USER d11811 1 a11813 1 APACHE_GROUP d11815 1 a11817 1 APACHE_MODULE_SRC d11819 1 a11821 1 APACHE_PKG_PREFIX d11823 1 a11825 1 APACHE_SUEXEC_DOCROOT d11827 1 a11829 1 APPEND_ABI d11831 1 a11833 1 ARLA_CACHE d11835 1 a11837 1 AUTOCONF_REQD d11839 1 a11841 1 AUTOMAKE_REQD d11843 1 a11845 1 BDB185_DEFAULT d11847 1 a11849 1 BDB_ACCEPTED d11851 1 a11853 1 BDB_LIBS d11855 1 a11857 1 BINCIMAP_GROUP d11859 1 a11861 1 BIND_DIR d11863 1 a11865 1 BIND_USER d11867 1 a11869 1 BINPKG_SITES d11871 1 a11873 1 BISON_PKGDATADIR d11875 1 a11877 1 BLAS_ACCEPTED d11879 1 a11881 1 BLAS_INCLUDES d11883 1 a11885 1 BLAS_LIBS d11887 1 a11889 1 BOOTSTRAP_DEPENDS d11891 1 a11893 1 BROKEN_EXCEPT_ON_PLATFORM d11895 1 a11897 1 BSDSRCDIR d11899 1 a11901 1 BSD_MAKE_ENV d11903 1 a11905 1 BUILDLINK_AUTO_VARS d11907 1 a11909 1 BUILDLINK_CONTENTS_FILTER d11911 1 d12006 1 d12008 2 d12011 1 a12013 1 CHECK_FILES d12015 1 a12017 1 CHECK_FILES_STRICT d12019 1 a12021 1 CHECK_HEADERS_SKIP d12023 1 a12025 1 CHECK_INTERPRETER_SKIP d12027 1 a12029 1 CHECK_PERMS_AUTOFIX d12031 1 a12033 1 CHECK_PIE d12035 1 a12037 1 CHECK_PIE_SUPPORTED d12039 1 a12041 1 CHECK_PORTABILITY_EXPERIMENTAL d12043 1 a12045 1 CHECK_RELRO d12047 1 a12049 1 CHECK_RELRO_SUPPORTED d12051 1 a12053 1 CHECK_SHLIBS_SKIP d12055 1 a12057 1 CHECK_SHLIBS_TOXIC d12059 1 a12061 1 CHECK_SSP_SKIP d12063 1 a12065 1 CHECK_STRIPPED d12067 1 a12069 1 CHECK_WRKREF d12071 1 a12073 1 CHECK_WRKREF_SKIP d12075 1 a12077 1 CLAMAV_GROUP d12079 1 a12081 1 CLANGBASE d12083 1 a12085 1 CMAKE_DEPENDENCIES_REWRITE d12087 1 a12089 1 CMAKE_INSTALL_PREFIX d12091 1 a12093 1 CMAKE_PKGSRC_BUILD_FLAGS d12095 9 d12106 1 a12106 1 CMAKE_USE_GNU_INSTALL_DIRS d12167 19 d12187 1 a12189 1 CYRUS_GROUP d12191 1 a12193 1 CYRUS_USER d12195 1 a12197 1 DAEMONTOOLS_LOG_USER d12199 1 a12201 1 DARWIN_REQUIRES_FILTER d12203 1 a12205 1 DBUS_USER d12207 1 a12209 1 DEFANG_USER d12211 1 a12213 1 DEFAULT_DISTFILES d12215 1 a12217 1 DEFAULT_SERIAL_DEVICE d12219 1 a12221 1 DEINSTALLDEPENDS d12223 1 a12225 1 DEINSTALL_TEMPLATES d12227 1 a12229 1 DELAYED_WARNING_MSG d12231 1 a12233 1 DEPENDS_TARGET d12235 1 a12237 1 DESTDIR d12239 1 a12241 1 DIALER_GROUP d12243 1 a12245 1 DISTDIR d12247 1 a12249 1 DISTINFO_FILE d12251 1 a12253 1 DIST_PATH d12255 1 a12257 1 DJBDNS_AXFR_USER d12259 1 a12261 1 DJBDNS_DJBDNS_GROUP d12263 1 a12265 1 DJBDNS_RBL_USER d12267 1 a12269 1 DLOPEN_REQUIRE_PTHREADS d12271 1 a12273 1 DL_CFLAGS d12275 1 a12277 1 DL_LIBS d12279 1 a12281 1 DOCOWN d12283 1 a12285 1 DQCACHE_GROUP d12287 1 a12289 1 DT_LAYOUT d12291 1 a12293 1 DYNAMIC_SITES_SCRIPT d12295 1 a12297 1 ECHO_N d12299 1 a12301 1 EMACS_TYPE d12303 1 a12305 1 EMULSUBDIR d12307 1 a12309 1 EMUL_ARCH d12311 1 a12313 1 EMUL_EXEC_FMT d12315 1 a12317 1 EMUL_MODULES d12319 1 a12321 1 EMUL_PKG_FMT d12323 1 a12325 1 EMUL_PLATFORMS d12327 1 a12329 1 EMUL_REQD d12331 1 a12333 1 ERROR_MSG d12335 1 a12337 1 EXIM_USER d12339 1 a12341 1 EXTRACTOR d12343 1 a12345 1 EXTRACT_CMD_DEFAULT d12347 1 a12349 1 EXTRACT_ELEMENTS d12351 1 a12353 1 EXTRACT_ONLY d12355 1 a12357 1 EXTRACT_SUFX d12359 1 a12361 1 FAIL d12363 1 a12365 1 FAIL_MSG d12367 1 a12369 1 FAM d12371 1 a12373 1 FAM_DEFAULT d12375 1 a12377 1 FCPATH d12379 1 a12381 1 FEATURE_LDFLAGS d12383 1 a12385 1 FETCH_AFTER_ARGS d12387 1 a12389 1 FETCH_CMD d12391 1 a12393 1 FETCH_PROXY d12395 1 a12397 1 FETCH_TIMEOUT d12399 1 a12401 1 FETCH_USING d12403 1 a12405 1 FILES_SUBST_SED d12407 1 d12415 8 d12510 13 d12524 2 d12527 1 a12529 1 GNU_CONFIGURE_INFODIR d12531 1 a12533 1 GNU_CONFIGURE_QUIET d12535 1 a12537 1 GODEP_REDIRECTS d12539 1 a12541 1 GO_DEPS d12543 1 a12545 1 GO_EXTRA_MOD_DIRS d12547 1 a12549 1 GO_SRCPATH d12551 1 a12553 1 GROUP_SPECIFIC_PKGS d12555 1 a12557 1 GRUB_PRESET_COMMAND d12559 1 d12562 1 a12562 1 GZIP d12578 5 d12584 2 d12587 1 a12589 1 HOST_SPECIFIC_PKGS d12591 1 a12593 1 HOWL_USER d12595 1 a12597 1 ICECAST_CHROOTDIR d12599 1 a12601 1 IDOBASE d12603 1 a12605 1 IGNORE_INFO_DIRS d12607 1 a12609 1 IMAKE d12611 1 a12613 1 IMAKE_MAKE d12615 1 a12617 1 IMAP_UW_CCLIENT_MBOX_FMT d12619 1 a12621 1 INCOMPAT_CURSES d12623 1 a12625 1 INFO_FILES d12627 1 a12629 1 INFO_MSG d12631 1 a12633 1 INN_DATA_DIR d12635 1 a12637 1 INN_USER d12639 1 a12641 1 INSTALLATION_DIRS_FROM_PLIST d12643 1 a12645 1 INSTALL_SH_OVERRIDE d12647 1 a12649 1 INSTALL_TEMPLATES d12651 1 a12653 1 IRCD_HYBRID_IRC_GROUP d12655 1 a12657 1 IRCD_HYBRID_MAXCONN d12659 1 a12661 1 IRCD_HYBRID_SYSLOG_EVENTS d12663 1 a12665 1 IRCD_HYBRID_TOPICLEN d12667 1 a12669 1 IRRD_USE_PGP d12671 1 a12673 1 JABBERD_LOGDIR d12675 1 a12677 1 JABBERD_SPOOLDIR d12679 1 d12682 1 d12684 2 d12687 1 a12689 1 JAVA_HOME d12691 1 a12693 1 JAVA_NAME d12695 1 a12697 1 JAVA_WRAPPERS d12699 1 a12701 1 JPEG_DEFAULT d12703 1 a12705 1 KERMIT_SUID_UUCP d12707 1 a12709 1 KNEWS_DOMAIN_FILE d12711 1 a12713 1 KRB5_ACCEPTED d12715 1 a12717 1 LANGUAGES d12719 1 a12721 1 LAPACK_LIBS d12723 1 a12725 1 LDCONFIG_ADD_CMD d12727 1 a12729 1 LDD d12731 1 a12733 1 LEAFNODE_GROUP d12735 1 a12737 1 LIBDVDCSS_HOMEPAGE d12739 1 a12741 1 LIBRSVG_TYPE d12743 1 a12745 1 LIBTOOLIZE_PLIST d12747 1 a12749 1 LIBUSB_TYPE d12751 1 a12753 1 LINKER_RPATH_FLAG d12755 5 d12826 1 d12828 2 d12831 1 a12833 1 MAKE_DIRS_PERMS d12835 1 a12837 1 MAKE_FILE d12839 1 a12841 1 MAKE_JOBS d12843 1 a12845 1 MAKE_PROGRAM d12847 1 a12849 1 MANINSTALL d12851 1 a12853 1 MASTER_SITES d12855 1 a12857 1 MASTER_SITE_LOCAL d12859 1 a12861 1 MASTER_SITE_OVERRIDE d12863 1 a12865 1 MASTER_SORT d12867 1 a12869 1 MASTER_SORT_REGEX d12871 1 a12873 1 MEDIATOMB_GROUP d12875 1 a12877 1 MIPSPROBASE d12879 1 a12881 1 MIREDO_USER d12883 1 a12885 1 MKDIR d12887 1 a12889 1 MLDONKEY_GROUP d12891 1 a12893 1 MLDONKEY_USER d12895 1 a12897 1 MONOTONE_USER d12899 1 a12901 1 MOTIF_TYPE d12903 1 a12905 1 MPI_TYPE d12907 1 a12909 1 MSGFMT_STRIP_MSGID_PLURAL d12911 1 d13050 4 d13066 1 d13068 2 d13071 1 a13073 1 P4GROUP d13075 1 a13077 1 P4ROOT d13079 1 a13081 1 PACKAGES d13083 1 a13085 1 PAMBASE d13087 1 a13089 1 PAPERSIZE d13091 1 a13093 1 PATCHDIR d13095 1 a13097 1 PATCH_ARGS d13099 1 a13101 1 PATCH_DIST_ARGS d13103 1 a13105 1 PATCH_DIST_STRIP d13107 1 a13109 1 PATCH_STRIP d13111 9 a13121 1 PCCBASE d13123 1 a13125 1 PEAR_LIB d13127 1 a13129 1 PERL5 d13131 1 a13133 1 PERL5_CONFIGURE_DIRS d13135 1 a13137 1 PERL5_LICENSE d13139 1 a13141 1 PERL5_PACKLIST d13143 1 a13145 1 PERL5_PERLBASE d13147 1 a13149 1 PERL5_USE_PACKLIST d13151 1 a13153 1 PFCTL d13155 1 a13157 1 PF_VERSION d13159 1 a13161 1 PGHOME d13163 1 a13165 1 PGSQL_TYPE d13167 1 a13169 1 PGSQL_VERSIONS_ACCEPTED d13171 1 a13173 1 PGUSER d13175 1 a13177 1 PHP d13179 1 a13181 1 PHPPKGSRCDIR d13183 1 a13185 1 PHP_CHECK_INSTALLED d13187 1 a13189 1 PHP_INITIAL_TEENY d13191 1 a13193 1 PHP_VERSION d13195 1 a13197 1 PHP_VERSIONS_INCOMPATIBLE d13199 1 a13201 1 PHP_VERSION_REQD d13203 1 a13205 1 PKGCONFIG_BASE d13207 1 a13209 1 PKGCONFIG_OVERRIDE d13211 1 a13213 1 PKGDIR d13215 1 a13217 1 PKGINFODIR d13219 1 a13221 1 PKGMANDIR d13223 1 a13225 1 PKGNAME_REQD d13227 1 a13229 1 PKGREVISION d13231 1 a13233 1 PKGSRC_CHANGES d13235 1 a13237 1 PKGSRC_KEEP_BIN_PKGS d13239 1 a13241 1 PKGSRC_MAKE_ENV d13243 1 a13245 1 PKGSRC_MKPIE d13247 1 a13249 1 PKGSRC_OVERRIDE_MKPIE d13251 1 a13253 1 PKGSRC_SETENV d13255 1 a13257 1 PKGSRC_TODO d13259 1 a13261 1 PKGSRC_USE_FORTIFY d13263 1 a13265 1 PKGSRC_USE_RELRO d13267 1 a13269 1 PKGSRC_USE_STACK_CHECK d13271 1 a13273 1 PKGTOOLS_ARGS d13275 1 a13277 1 PKG_ALTERNATIVES d13279 1 a13281 1 PKG_APACHE_ACCEPTED d13283 1 a13285 1 PKG_BEST_EXISTS d13287 1 a13289 1 PKG_COMPRESSION d13291 1 a13293 1 PKG_CONFIG_PERMS d13295 1 a13297 1 PKG_DB_TMPDIR d13299 1 a13301 1 PKG_DEFAULT_OPTIONS d13303 1 a13305 1 PKG_DEVELOPER d13307 1 a13309 1 PKG_FATAL_ERRORS d13311 1 a13313 1 PKG_FILELIST_CMD d13315 1 a13317 1 PKG_GID d13319 1 a13321 1 PKG_GROUPS_VARS d13323 1 a13325 1 PKG_INIT_SCRIPTS d13327 1 a13329 1 PKG_JVM d13331 1 a13333 1 PKG_JVM_DEFAULT d13335 1 a13337 1 PKG_LIBTOOL d13339 1 a13341 1 PKG_OPTIONS d13343 1 a13345 1 PKG_OPTIONS_LEGACY_OPTS d13347 1 a13349 1 PKG_OPTIONS_NONEMPTY_SETS d13351 1 a13353 1 PKG_OPTIONS_REQUIRED_GROUPS d13355 1 a13357 1 PKG_PHP d13359 1 a13361 1 PKG_PHP_VERSION d13363 1 a13365 1 PKG_REFCOUNT_DBDIR d13367 1 a13369 1 PKG_RESUME_TRANSFERS d13371 1 a13373 1 PKG_SUGGESTED_OPTIONS d13375 1 a13377 1 PKG_SYSCONFBASE d13379 1 a13381 1 PKG_SYSCONFDIR d13383 1 a13385 1 PKG_SYSCONFSUBDIR d13387 1 a13389 1 PKG_TOOLS_BIN d13391 1 a13393 1 PKG_UPDATE_FONTS_DB d13395 1 a13397 1 PKG_USERS_VARS d13399 1 a13401 1 PLEASE d13403 1 a13405 1 PLIST_AWK d13407 1 a13409 1 PLIST_SRC d13411 1 a13413 1 PLIST_TYPE d13415 1 a13417 1 POPTOP_USE_MPPE d13419 1 a13421 1 POST_FETCH_HOOK d13423 1 a13425 1 PREFER_NATIVE d13427 1 a13429 1 PREFER_PKGSRC d13431 1 a13433 1 PREPEND_PATH d13435 1 a13437 1 PRIVILEGED_STAGES d13439 1 a13441 1 PTHREAD_AUTO_VARS d13443 1 a13445 1 PTHREAD_LDFLAGS d13447 1 a13449 1 PTHREAD_OPTS d13451 1 a13453 1 PVM_SSH d13455 1 a13457 1 PYTHON_FOR_BUILD_ONLY d13459 1 a13461 1 PYTHON_VERSIONED_DEPENDENCIES d13463 1 a13465 1 PYTHON_VERSIONS_INCOMPATIBLE d13467 1 a13469 1 PYTHON_VERSION_REQD d13471 1 a13473 1 QMAILDIR d13475 1 a13477 1 QMAIL_DAEMON_USER d13479 1 a13481 1 QMAIL_NOFILES_GROUP d13483 1 a13485 1 QMAIL_QMAIL_GROUP d13487 1 a13489 1 QMAIL_QUEUE_EXTRA d13491 1 a13493 1 QMAIL_REMOTE_USER d13495 1 a13497 1 QMAIL_SEND_USER d13499 1 a13501 1 QORE_MODULE_API d13503 1 a13505 1 QORE_USER_MODULE_DIR d13507 1 a13509 1 QPOPPER_FAC d13511 1 a13513 1 QPOPPER_USER d13515 5 a13521 1 RASMOL_DEPTH d13523 1 a13525 1 RCD_SCRIPTS_DIR d13527 1 a13529 1 RCD_SCRIPTS_MODE d13531 1 d13534 1 a13534 1 RCD_SCRIPT_SRC d13607 4 d13811 3 d13815 1 a13817 1 SILC_CLIENT_WITH_PERL d13819 1 a13821 1 SKIP_DEPENDS d13823 1 a13825 1 SMF_MANIFEST d13827 1 a13829 1 SMF_METHOD_SHELL d13831 1 a13833 1 SMF_NAME d13835 1 a13837 1 SMF_SRCDIR d13839 1 a13841 1 SNIPROXY_USER d13843 1 a13845 1 SPECIAL_PERMS d13847 1 a13849 1 SSH_SUID d13851 1 a13853 1 SSYNC_PAWD d13855 1 a13857 1 STRIP d13859 1 a13861 1 STRIP_DEBUG d13863 1 a13865 1 STRIP_FILES_SKIP d13867 1 a13869 1 SUBDIR d13871 1 a13873 1 SUBST_CLASSES d13875 1 a13877 1 SUBST_FILTER_CMD d13879 1 a13881 1 SUBST_NOOP_OK d13883 1 a13885 1 SUBST_SHOW_DIFF d13887 1 a13889 1 SUBST_STAGE d13891 1 a13893 1 SUNWSPROBASE d13895 9 a13905 1 SU_CMD d13907 1 a13909 1 TARGET_ARCH d13911 1 a13913 1 TERMCAP_TYPE d13915 1 a13917 1 TERMINFO_TYPE d13919 1 a13921 1 TEST_DEPENDS d13923 1 a13925 1 TEST_ENV d13927 1 a13929 1 TEST_MAKE_CMD d13931 1 a13933 1 TEST_TARGET d13935 1 a13937 1 TEXLIVE_REV d13939 1 a13941 1 TEXMFSITE d13943 1 a13945 1 TEX_HYPHEN_DAT d13947 1 a13949 1 TEX_TEXMF_DIRS d13951 1 a13953 1 TINYDYN_USER d13955 1 a13957 1 TO d13959 1 a13961 1 TOOLS_ALWAYS_WRAP d13963 1 a13965 1 TOOLS_BROKEN d13967 1 a13969 1 TOOLS_CMDLINE_SED d13971 1 a13973 1 TOOLS_CROSS_DESTDIR d13975 1 a13977 1 TOOLS_FAIL d13979 1 a13981 1 TOOLS_LDCONFIG d13983 1 a13985 1 TOOLS_PATH d13987 1 a13989 1 TOOLS_USE_CROSS_COMPILE d13991 1 d14146 1 d14148 2 d14151 1 a14153 1 __stdc__ d14155 1 a14157 1 accept d14159 1 a14161 1 acquire-lock d14163 1 a14165 1 added d14167 1 a14169 1 alloca d14171 1 a14173 1 aslr d14175 1 a14177 1 atlas d14179 1 a14181 1 automake d14183 1 a14185 1 awk d14187 1 a14189 1 big-endian d14191 1 a14193 1 bind d14195 1 a14197 1 blas d14199 1 a14201 1 broken d14203 1 a14205 1 bsd d14207 1 a14209 1 build d14211 1 a14213 1 buildlink-directories d14215 1 a14217 1 c d14219 1 a14221 1 ccache d14223 1 a14225 1 cdefs d14227 1 a14229 1 changes d14231 1 a14233 1 changes-entry-noupdate d14235 1 a14237 1 check-clean d14239 1 a14241 1 check-files-clean d14243 1 a14245 1 checksum d14247 1 a14249 1 clean d14251 1 a14253 1 cleandir d14255 1 a14257 1 commit-changes-entry d14259 1 a14261 1 compiler d14263 1 a14265 1 config.guess d14267 1 a14269 1 configuration d14271 1 a14273 1 configure-env d14275 1 a14277 1 configure_args d14279 1 a14281 1 cos d14283 1 a14285 1 create-usergroup d14287 1 d14290 1 a14290 1 ctf d14354 1 d14356 2 d14359 1 a14361 1 err d14363 1 a14365 1 etc d14367 1 a14369 1 extract-rpm d14371 1 a14373 1 feature d14375 1 a14377 1 fetch d14379 1 a14381 1 follows d14383 1 a14385 1 form d14387 1 a14389 1 fortify d14391 1 d14426 1 d14428 2 d14431 1 a14433 1 glob d14435 1 a14437 1 gnu_configure_strict d14439 1 a14441 1 go-deps d14443 1 a14445 1 guess-license d14447 1 a14449 1 heimdal d14451 1 d14523 3 d14527 1 a14529 1 meta-package d14531 1 a14533 1 mit-krb5 d14535 1 a14537 1 mkl d14539 1 a14541 1 move d14543 1 a14545 1 mprotect d14547 1 a14549 1 nb d14551 1 a14553 1 netlib d14555 1 a14557 1 node.js d14559 1 a14561 1 obstack d14563 1 a14565 1 occurs d14567 1 a14569 1 openblas d14571 1 a14573 1 options.mk d14575 1 a14577 1 override d14579 1 a14581 1 override-message-intltool d14583 1 a14585 1 parallel d14587 1 a14589 1 pax d14591 1 a14593 1 pbulk-index d14595 1 a14597 1 perl d14599 1 a14601 1 perms d14603 1 a14605 1 pkg-build-options d14607 1 a14609 1 pkg_build_options d14611 1 a14613 1 plist d14615 1 a14617 1 post-fetch d14619 1 a14621 1 pre-build-checks-hook d14623 1 a14625 1 pre-configure-checks-hook d14627 1 a14629 1 pre-fetch d14631 1 a14633 1 print-plist d14635 1 a14637 1 privileged-install-hook d14639 1 a14641 1 python d14643 1 a14645 1 readme-all d14647 1 a14649 1 recv d14651 1 a14653 1 regcomp d14655 1 a14657 1 release-lock d14659 1 a14661 1 remove d14663 1 a14665 1 rename d14667 1 a14669 1 reorder d14671 1 a14673 1 replace_interpreter d14675 1 a14677 1 resolv d14679 1 a14681 1 ruby d14683 1 a14685 1 sendfile d14687 1 a14689 1 setenv d14691 1 a14693 1 setprogname d14695 1 a14697 1 sh d14699 1 a14701 1 show d14703 1 a14705 1 show-build-defs d14707 1 a14709 1 show-depends-dirs d14711 1 a14713 1 show-depends-recursive d14715 1 a14717 1 show-distfiles d14719 1 a14721 1 show-subdir-var d14723 1 a14725 1 show-var d14727 1 a14729 1 snprintf d14731 1 a14733 1 ssp d14735 1 a14737 1 stage-install d14739 1 a14741 1 strict d14743 1 a14745 1 strndup d14747 1 a14749 1 strsep d14751 1 d14754 1 a14754 1 substitutions d14762 1 d14764 2 d14767 1 a14769 1 test-env d14771 1 a14773 1 texlive d14775 1 a14777 1 todo d14779 1 a14781 1 tools d14783 1 a14785 1 transitive d14787 1 a14789 1 ulimit d14791 1 a14793 1 undo-replace d14795 1 a14797 1 unprivileged d14799 1 a14801 1 unstripped d14803 1 a14805 1 updated d14807 1 a14809 1 upload-distfiles d14811 1 a14813 1 user d14815 1 a14817 1 vasprintf d14819 1 a14821 1 vsnprintf d14823 1 a14825 1 warning d14827 1 a14829 1 warnx d14831 1 a14833 1 wattr_on d14835 1 a14837 1 wrapper d14839 1 @ 1.340 log @doc/pkgsrc.*: regen @ text @d1291 4 a1294 5 platforms. First, select your operating system. (Ignore the directories with version numbers attached to it, they just exist for legacy reasons.) Then, select your hardware architecture, and in the third step, the OS version and the version of pkgsrc.

    In this directory, you often find a file called d5244 4 d7718 2 a7719 2

    Your package may conflict with other packages a user might already have installed on his system, e.g. if your package d7721 2 a7722 1 tree or has the same PKGNAME.

    d12000 1 a12000 1 CHECK_COMPILER d12003 1 a12004 1 CHECK_FILES d12007 1 a12008 1 CHECK_FILES_STRICT d12011 1 a12012 1 CHECK_HEADERS_SKIP d12015 1 a12016 1 CHECK_INTERPRETER_SKIP d12019 1 a12020 1 CHECK_PERMS_AUTOFIX d12023 1 a12024 1 CHECK_PIE d12027 1 a12028 1 CHECK_PIE_SUPPORTED d12031 1 a12032 1 CHECK_PORTABILITY_EXPERIMENTAL d12035 1 a12036 1 CHECK_RELRO d12039 1 a12040 1 CHECK_RELRO_SUPPORTED d12043 1 a12044 1 CHECK_SHLIBS_SKIP d12047 1 a12048 1 CHECK_SHLIBS_TOXIC d12051 1 a12052 1 CHECK_SSP_SKIP d12055 1 a12056 1 CHECK_STRIPPED d12059 1 a12060 1 CHECK_WRKREF d12063 1 a12064 1 CHECK_WRKREF_SKIP d12067 1 a12068 1 CLAMAV_GROUP d12071 1 a12072 1 CLANGBASE d12075 1 a12076 1 CMAKE_DEPENDENCIES_REWRITE d12079 1 a12080 1 CMAKE_INSTALL_PREFIX d12083 1 a12084 1 CMAKE_PKGSRC_BUILD_FLAGS d12087 1 a12088 1 CMAKE_USE_GNU_INSTALL_DIRS d12091 1 a12092 1 COMPILER_USE_SYMLINKS d12095 1 a12096 1 CONFIGURE_DIRS d12099 1 a12100 1 CONFIGURE_ENV_SHELL d12103 1 a12104 1 CONFIGURE_HAS_MANDIR d12107 1 a12108 1 CONFIG_SHELL d12111 1 a12112 1 CONF_FILES d12115 1 a12116 1 CONF_FILES_PERMS d12119 1 a12120 1 CONSERVER_DEFAULTPORT d12123 1 a12124 1 CPP d12127 1 a12128 1 CREATE_WRKDIR_SYMLINK d12131 1 a12132 1 CTFCONVERT d12135 1 a12136 1 CTF_SUPPORTED d12139 1 a12140 1 CUPS_GROUP d12143 1 a12144 1 CUPS_USER d12147 1 a12148 1 CURSES_TYPE d12151 1 a12152 1 CYRUS_GROUP d12155 1 a12156 1 CYRUS_USER d12159 1 a12160 1 DAEMONTOOLS_LOG_USER d12163 1 a12164 1 DARWIN_REQUIRES_FILTER d12167 1 a12168 1 DBUS_USER d12171 1 a12172 1 DEFANG_USER d12175 1 a12176 1 DEFAULT_DISTFILES d12179 1 a12180 1 DEFAULT_SERIAL_DEVICE d12183 1 a12184 1 DEINSTALLDEPENDS d12187 1 a12188 1 DEINSTALL_TEMPLATES d12191 1 a12192 1 DELAYED_WARNING_MSG d12195 1 a12196 1 DEPENDS_TARGET d12199 1 a12200 1 DESTDIR d12203 1 a12204 1 DIALER_GROUP d12207 1 a12208 1 DISTDIR d12211 1 a12212 1 DISTINFO_FILE d12215 1 a12216 1 DIST_PATH d12219 1 a12220 1 DJBDNS_AXFR_USER d12223 1 a12224 1 DJBDNS_DJBDNS_GROUP d12227 1 a12228 1 DJBDNS_RBL_USER d12231 1 a12232 1 DLOPEN_REQUIRE_PTHREADS d12235 1 a12236 1 DL_CFLAGS d12239 1 a12240 1 DL_LIBS d12243 1 a12244 1 DOCOWN d12247 1 a12248 1 DQCACHE_GROUP d12251 1 a12252 1 DT_LAYOUT d12255 1 a12256 1 DYNAMIC_SITES_SCRIPT d12259 1 a12260 1 ECHO_N d12263 1 a12264 1 EMACS_TYPE d12267 1 a12268 1 EMULSUBDIR d12271 1 a12272 1 EMUL_ARCH d12275 1 a12276 1 EMUL_EXEC_FMT d12279 1 a12280 1 EMUL_MODULES d12283 1 a12284 1 EMUL_PKG_FMT d12287 1 a12288 1 EMUL_PLATFORMS d12291 1 a12292 1 EMUL_REQD d12295 1 a12296 1 ERROR_MSG d12299 1 a12300 1 EXIM_USER d12303 1 a12304 1 EXTRACTOR d12307 1 a12308 1 EXTRACT_CMD_DEFAULT d12311 1 a12312 1 EXTRACT_ELEMENTS d12315 1 a12316 1 EXTRACT_ONLY d12319 1 a12320 1 EXTRACT_SUFX d12323 1 a12324 1 FAIL d12327 1 a12328 1 FAIL_MSG d12331 1 a12332 1 FAM d12335 1 a12336 1 FAM_DEFAULT d12339 1 a12340 1 FCPATH d12343 1 a12344 1 FEATURE_LDFLAGS d12347 1 a12348 1 FETCH_AFTER_ARGS d12351 1 a12352 1 FETCH_CMD d12355 1 a12356 1 FETCH_PROXY d12359 1 a12360 1 FETCH_TIMEOUT d12363 1 a12364 1 FETCH_USING d12367 1 a12368 1 FILES_SUBST_SED d12371 1 a12372 1 FONTS_DIRS d12375 1 a12376 1 FOO_HACKS_MK d12379 1 a12380 1 FREEWNN_GROUP d12383 1 a12384 1 FTP_PKG_URL_DIR d12387 1 a12388 1 GAMEDATAMODE d12391 1 a12392 1 GAMEDIRMODE d12395 1 a12396 1 GAMEGRP d12399 1 a12400 1 GAMEOWN d12403 1 a12404 1 GAMES_USER d12407 1 a12408 1 GCCBASE d12411 1 a12412 1 GCC_VERSION_SUFFIX d12415 1 a12416 1 GEM_CLEANBUILD d12419 1 a12420 1 GEM_DOCDIR d12423 1 a12424 1 GEM_HOME d12427 1 a12428 1 GEM_LIBDIR d12431 1 a12432 1 GEM_PATH d12435 1 a12436 1 GEM_SPECFILE d12439 1 a12440 1 GHC d12443 1 a12444 1 GITHUB_PROJECT d12447 1 a12448 1 GITHUB_SUBMODULES d12451 1 a12452 1 GITHUB_TYPE d12455 1 a12456 1 GITLAB_RELEASE d12459 1 a12460 1 GITLAB_TAG d12463 1 a12464 1 GNU d12467 1 a12468 1 GNU_CONFIGURE_INFODIR d12471 1 a12472 1 GNU_CONFIGURE_QUIET d12475 1 a12476 1 GODEP_REDIRECTS d12479 1 a12480 1 GO_DEPS d12483 1 a12484 1 GO_EXTRA_MOD_DIRS d12487 1 a12488 1 GO_SRCPATH d12491 1 a12492 1 GROUP_SPECIFIC_PKGS d12495 1 a12496 1 GRUB_PRESET_COMMAND d12499 1 a12500 1 GZIP d12503 1 a12504 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12507 1 d12509 2 d12512 1 a12514 1 HASKELL_OPTIMIZATION_LEVEL d12516 1 a12518 1 HEADER_TEMPLATES d12520 1 a12522 1 HOST_PKGTOOLS_ARGS d12524 1 a12526 1 HOWL_GROUP d12528 1 a12530 1 ICCBASE d12532 1 a12534 1 ICON_THEMES d12536 1 a12538 1 IGNORE_CCACHE d12540 1 a12542 1 IGNORE_INTERACTIVE_FETCH d12544 1 a12546 1 IMAKEOPTS d12548 1 a12550 1 IMAKE_MANINSTALL d12552 1 a12554 1 IMDICTDIR d12556 1 a12558 1 INFO_DIR d12560 1 a12562 1 INFO_FILES_VERBOSE d12564 1 a12566 1 INIT_SYSTEM d12568 1 a12570 1 INN_GROUP d12572 1 a12574 1 INSTALLATION_DIRS d12576 1 a12578 1 INSTALL_ENV d12580 1 a12582 1 INSTALL_SRC d12584 1 a12586 1 INSTALL_UNSTRIPPED d12588 1 a12590 1 IRCD_HYBRID_IRC_USER d12592 1 a12594 1 IRCD_HYBRID_NICLEN d12596 1 a12598 1 IRCD_HYBRID_SYSLOG_FACILITY d12600 1 a12602 1 IRIX d12604 1 a12606 1 JABBERD_GROUP d12608 1 a12610 1 JABBERD_PIDDIR d12612 1 a12614 1 JABBERD_USER d12616 1 a12618 1 JAVA_CLASSPATH d12620 1 a12622 1 JAVA_LD_LIBRARY_PATH d12624 1 a12626 1 JAVA_UNLIMIT d12628 1 a12630 1 JPEG_ACCEPTED d12632 1 a12634 1 KERBEROS d12636 1 a12638 1 KJS_USE_PCRE d12640 1 a12642 1 KNEWS_DOMAIN_NAME d12644 1 a12646 1 KRB5_DEFAULT d12648 1 a12650 1 LAPACKE_LIBS d12652 1 a12654 1 LATEX2HTML_ICONPATH d12656 1 a12658 1 LDCONFIG_REMOVE_CMD d12660 1 a12662 1 LEAFNODE_DATA_DIR d12664 1 a12666 1 LEAFNODE_USER d12668 1 a12670 1 LIBDVDCSS_MASTER_SITES d12672 1 a12674 1 LIBTOOL d12676 1 a12678 1 LIBTOOL_M4_OVERRIDE d12680 1 a12682 1 LICENSE d12684 1 a12686 1 LINK_RPATH_FLAG d12688 1 a12690 1 LOCALBASE d12692 1 a12694 1 LOCALPATCHES d12696 1 a12698 1 LOVE_GAME d12700 1 a12702 1 LP32PLATFORMS d12704 1 a12706 1 LUA_BUSTED_ARGS d12708 1 a12710 1 LUA_COMPILER d12712 1 a12714 1 LUA_EXAMPLESDIR d12716 1 a12718 1 LUA_INTERPRETER d12720 1 a12722 1 LUA_LINKER_MAGIC d12724 1 a12726 1 LUA_SELF_CONFLICT d12728 1 a12730 1 LUA_VERSIONS_ACCEPTED d12732 1 a12734 1 LUA_VERSION_DEFAULT d12736 1 a12738 1 Lua d12740 1 a12742 1 MAILAGENT_DOMAIN d12744 1 a12746 1 MAILAGENT_FQDN d12748 1 a12750 1 MAJORDOMO_HOMEDIR d12752 1 a12754 1 MAKE_DIRS d12756 1 a12758 1 MAKE_ENV d12760 1 a12762 1 MAKE_FLAGS d12764 1 a12766 1 MAKE_JOBS_SAFE d12768 1 a12770 1 MANCOMPRESSED_IF_MANZ d12772 1 a12774 1 MANZ d12776 1 a12778 1 MASTER_SITE_BACKUP d12780 1 a12782 1 MASTER_SITE_MOZILLA d12784 1 a12786 1 MASTER_SITE_PERL_CPAN d12788 1 a12790 1 MASTER_SORT_RANDOM d12792 1 a12794 1 MECAB_CHARSET d12796 1 a12798 1 MEDIATOMB_USER d12800 1 a12802 1 MIREDO_GROUP d12804 1 a12806 1 MISSING_FEATURES d12808 1 a12810 1 MKPIE_SUPPORTED d12812 1 a12814 1 MLDONKEY_HOME d12816 1 a12818 1 MONOTONE_GROUP d12820 1 a12822 1 MOTIFBASE d12824 1 a12826 1 MOTIF_TYPE_DEFAULT d12828 1 a12830 1 MSGFMT_STRIP_MSGCTXT d12832 1 a12834 1 MTOOLS_ENABLE_FLOPPYD d12836 1 a12838 1 MYSQL_CHARSET d12840 1 a12842 1 MYSQL_EXTRA_CHARSET d12844 1 a12846 1 MYSQL_USER d12848 1 a12850 1 MYSQL_VERSIONS_ACCEPTED d12852 1 a12854 1 MYSQL_VERSION_DEFAULT d12856 1 a12858 1 NAGIOSDIR d12860 1 a12862 1 NAGIOS_USER d12864 1 a12866 1 NATIVE_APPEND_ELF d12868 1 a12870 1 NATIVE_MACHINE_PLATFORM d12872 1 a12874 1 NBPAX_PROGRAM_PREFIX d12876 1 a12878 1 NMH_EDITOR d12880 1 a12882 1 NMH_PAGER d12884 1 a12886 1 NODE_VERSIONS_INCOMPATIBLE d12888 1 a12890 1 NODE_VERSION_REQD d12892 1 a12894 1 NOTE d12896 1 a12898 1 NOT_PAX_ASLR_SAFE d12900 1 a12902 1 NO_BUILD d12904 1 a12906 1 NO_CONFIGURE d12908 1 a12910 1 NS_PREFERRED d12912 1 a12914 1 NULLMAILER_USER d12916 1 a12918 1 OASIS_BUILD_ARGS d12920 1 a12922 1 OBJMACHINE d12924 1 a12926 1 OCAML_FINDLIB_REGISTER d12928 1 a12930 1 OCAML_SITELIBDIR d12932 1 a12934 1 OCAML_USE_DUNE d12936 1 a12938 1 OCAML_USE_OASIS d12940 1 a12942 1 OCAML_USE_OPAM d12944 1 a12946 1 OMF d12948 1 a12950 1 ONLY_FOR_PLATFORM d12952 1 a12954 1 OPENSSH_GROUP d12956 1 a12958 1 OPSYS d12960 1 a12962 1 OPSYS_VERSION d12964 1 a12966 1 OSS_TYPE d12968 1 a12970 1 OSX_TOLERATE_SDK_SKEW d12972 1 a12974 1 OS_VERSION d12976 1 a12978 1 OVERRIDE_DIRDEPTH d12980 1 a12982 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12984 1 a12986 1 OWN_DIRS_PERMS d12988 1 a12990 1 P4PORT d12992 1 a12994 1 P4USER d12996 1 a12998 1 PALMOS_DEFAULT_SDK d13000 1 a13002 1 PAM_DEFAULT d13004 1 a13006 1 PASSIVE_FETCH d13008 1 a13010 1 PATCHFILES d13012 1 a13014 1 PATCH_DEBUG d13016 1 a13018 1 PATCH_DIST_CAT d13020 1 a13022 1 PATCH_FUZZ_FACTOR d13024 1 a13026 1 PATH d13028 1 a13030 1 PEAR_CMD d13032 1 a13034 1 PEAR_PACKAGE_XML d13036 1 a13038 1 PERL5_CONFIGURE d13040 1 a13042 1 PERL5_LDFLAGS d13044 1 a13046 1 PERL5_MODULE_TYPE d13048 1 a13050 1 PERL5_PACKLIST_DIR d13052 1 a13054 1 PERL5_SITEBASE d13056 1 a13058 1 PERL5_VENDORBASE d13060 1 a13062 1 PFVAR_H d13064 1 a13066 1 PGGROUP d13068 1 a13070 1 PGPKGSRCDIR d13072 1 a13074 1 PGSQL_VERSION d13076 1 a13078 1 PGSQL_VERSION_DEFAULT d13080 1 a13082 1 PG_LIB_EXT d13084 1 a13086 1 PHPCOMMON_MK d13088 1 a13090 1 PHP_BASE_VERS d13092 1 a13094 1 PHP_EXTENSION_DIR d13096 1 a13098 1 PHP_PKG_PREFIX d13100 1 a13102 1 PHP_VERSIONS_ACCEPTED d13104 1 a13106 1 PHP_VERSION_DEFAULT d13108 1 a13110 1 PILRC_USE_GTK d13112 1 a13114 1 PKGCONFIG_FILE d13116 1 a13118 1 PKGCONFIG_OVERRIDE_STAGE d13120 1 a13122 1 PKGGNUDIR d13124 1 a13126 1 PKGLOCALEDIR d13128 1 a13130 1 PKGNAME d13132 1 a13134 1 PKGPATH d13136 1 a13138 1 PKGSRC_BLAS_TYPES d13140 1 a13142 1 PKGSRC_COMPILER d13144 1 a13146 1 PKGSRC_LOCKTYPE d13148 1 a13150 1 PKGSRC_MESSAGE_RECIPIENTS d13152 1 a13154 1 PKGSRC_MKREPRO d13156 1 a13158 1 PKGSRC_RUN_TEST d13160 1 a13162 1 PKGSRC_SLEEPSECS d13164 1 a13166 1 PKGSRC_USE_CTF d13168 1 d13244 3 d13248 1 a13250 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13252 1 a13254 1 PKG_OPTIONS_LEGACY_VARS d13256 1 a13258 1 PKG_OPTIONS_OPTIONAL_GROUPS d13260 1 a13262 1 PKG_OPTIONS_VAR d13264 1 a13266 1 PKG_PHP_MAJOR_VERS d13268 1 a13270 1 PKG_RCD_SCRIPTS d13272 1 a13274 1 PKG_REGISTER_SHELLS d13276 1 a13278 1 PKG_SHELL d13280 1 a13282 1 PKG_SUPPORTED_OPTIONS d13284 1 a13286 1 PKG_SYSCONFBASEDIR d13288 1 a13290 1 PKG_SYSCONFDIR_PERMS d13292 1 a13294 1 PKG_SYSCONFVAR d13296 1 a13298 1 PKG_UID d13300 1 a13302 1 PKG_USERS d13304 1 a13306 1 PKG_VERBOSE d13308 1 a13310 1 PLIST d13312 1 a13314 1 PLIST_AWK_ENV d13316 1 a13318 1 PLIST_SUBST d13320 1 a13322 1 PLIST_VARS d13324 1 a13326 1 POSSIBLE_GFORTRAN_VERSION d13328 1 a13330 1 PREFER d13332 1 a13334 1 PREFER_NATIVE_PTHREADS d13336 1 a13338 1 PREFIX d13340 1 a13342 1 PRE_ROOT_CMD d13344 1 a13346 1 PS d13348 1 a13350 1 PTHREAD_CFLAGS d13352 1 a13354 1 PTHREAD_LIBS d13356 1 a13358 1 PTHREAD_TYPE d13360 1 a13362 1 PYPKGPREFIX d13364 1 a13366 1 PYTHON_SELF_CONFLICT d13368 1 a13370 1 PYTHON_VERSIONS_ACCEPTED d13372 1 a13374 1 PYTHON_VERSION_DEFAULT d13376 1 a13378 1 PYVERSSUFFIX d13380 1 a13382 1 QMAIL_ALIAS_USER d13384 1 a13386 1 QMAIL_LOG_USER d13388 1 a13390 1 QMAIL_PASSWD_USER d13392 1 a13394 1 QMAIL_QUEUE_DIR d13396 1 a13398 1 QMAIL_QUEUE_USER d13400 1 a13402 1 QMAIL_ROOT_USER d13404 1 a13406 1 QORE_LATEST_MODULE_API d13408 1 a13410 1 QORE_MODULE_DIR d13412 1 a13414 1 QORE_VERSION d13416 1 a13418 1 QPOPPER_SPOOL_DIR d13420 1 a13422 1 RAKE_NAME d13424 1 a13426 1 RCD_SCRIPTS d13428 1 a13430 1 RCD_SCRIPTS_EXAMPLEDIR d13432 1 a13434 1 RCD_SCRIPTS_SHELL d13436 1 a13438 1 RDOC d13440 1 a13442 1 READLINE_TYPE d13444 1 a13446 1 REAL_ROOT_USER d13448 1 a13450 1 RELAY_CTRL_DIR d13452 1 a13454 1 REPLACE_AWK d13456 1 a13458 1 REPLACE_CSH d13460 1 a13462 1 REPLACE_LUA d13464 1 a13466 1 REPLACE_OCTAVE d13468 1 a13470 1 REPLACE_PERL6 d13472 1 a13474 1 REPLACE_PYTHON d13476 1 a13478 1 REPLACE_R d13480 1 a13482 1 REPLACE_RUBY_DIRS d13484 1 a13486 1 REPLACE_SH d13488 1 a13490 1 REPLACE_WISH d13492 1 a13494 1 REQD_DIRS_PERMS d13496 1 a13498 1 REQD_FILES_MODE d13500 1 a13502 1 RESOLV_AUTO_VARS d13504 1 a13506 1 RESOLV_LIBS d13508 1 a13510 1 ROOT_CMD d13512 1 a13514 1 ROOT_USER d13516 1 a13518 1 RPM d13520 1 a13522 1 RPM2PKG_PREFIX d13524 1 a13526 1 RPM2PKG_STRIP d13528 1 a13530 1 RPMFILES d13532 1 a13534 1 RPM_DB_PREFIX d13536 1 a13538 1 RSSH_RDIST_PATH d13540 1 a13542 1 RSSH_SCP_PATH d13544 1 a13546 1 RUBY d13548 1 a13550 1 RUBYGEM_NAME d13552 1 a13554 1 RUBYGEM_VERBOSE d13556 1 a13558 1 RUBY_ARCH d13560 1 a13562 1 RUBY_ARCHLIB d13564 1 a13566 1 RUBY_BASERIDIR d13568 1 a13570 1 RUBY_DLEXT d13572 1 a13574 1 RUBY_DYNAMIC_DIRS d13576 1 a13578 1 RUBY_ENCODING_ARG d13580 1 a13582 1 RUBY_EXTCONF_CHECK d13584 1 a13586 1 RUBY_EXTCONF_MAKEFILE d13588 1 a13590 1 RUBY_GEM_BASE d13592 1 a13594 1 RUBY_LIB d13596 1 a13598 1 RUBY_NAME d13600 1 a13602 1 RUBY_PKGPREFIX d13604 1 a13606 1 RUBY_RAILS52_VERSION d13608 1 a13610 1 RUBY_RAILS61_VERSION d13612 1 a13614 1 RUBY_RAILS_ACCEPTED d13616 1 a13618 1 RUBY_RAILS_REQD d13620 1 a13622 1 RUBY_RIDIR d13624 1 a13626 1 RUBY_SHLIB d13628 1 a13630 1 RUBY_SHLIBVER d13632 1 a13634 1 RUBY_SITEARCHLIB d13636 1 a13638 1 RUBY_SITELIB_BASE d13640 1 a13642 1 RUBY_SLEXT d13644 1 a13646 1 RUBY_STATICLIB d13648 1 a13650 1 RUBY_SYSRIDIR d13652 1 a13654 1 RUBY_VENDORARCHLIB d13656 1 a13658 1 RUBY_VENDORLIB_BASE d13660 1 a13662 1 RUBY_VERSION d13664 1 a13666 1 RUBY_VERSIONS_INCOMPATIBLE d13668 1 a13670 1 RUBY_VERSION_REQD d13672 1 a13674 1 RUN d13676 1 a13678 1 RUST_TYPE d13680 1 a13682 1 SCREWS_GROUP d13684 1 a13686 1 SCRIPTS_ENV d13688 1 a13690 1 SCROLLKEEPER_REBUILDDB d13692 1 a13694 1 SDIST_PAWD d13696 1 a13698 1 SERIAL_DEVICES d13700 1 a13702 1 SETGID_GAMES_PERMS d13704 1 a13706 1 SH d13708 1 a13710 1 SIGN_PACKAGES d13712 1 a13714 1 SITE_SPECIFIC_PKGS d13716 1 a13718 1 SMF_INSTANCES d13720 1 a13722 1 SMF_METHODS d13724 1 a13726 1 SMF_METHOD_SRC d13728 1 a13730 1 SMF_PREFIX d13732 1 a13734 1 SNIPROXY_GROUP d13736 1 a13738 1 SOURCE_BUFFSIZE d13740 1 a13742 1 SPECIFIC_PKGS d13744 1 a13746 1 SSP_SUPPORTED d13748 1 a13750 1 STEP_MSG d13752 1 a13754 1 STRIP_DBG d13756 1 a13758 1 STRIP_DEBUG_SUPPORTED d13760 1 a13762 1 SU d13764 1 a13766 1 SUBST d13768 1 a13770 1 SUBST_FILES d13772 1 a13774 1 SUBST_MESSAGE d13776 1 a13778 1 SUBST_SED d13780 1 a13782 1 SUBST_SKIP_TEXT_CHECK d13784 1 a13786 1 SUBST_VARS d13788 1 a13790 1 SUSE_PREFER d13792 1 a13794 1 SYSCONFBASE d13796 1 a13798 1 TBL d13800 1 a13802 1 TERMINFO_DEFAULT d13804 1 a13806 1 TEST d13808 1 a13810 1 TEST_DIRS d13812 1 a13814 1 TEST_ENV_SHELL d13816 1 a13818 1 TEST_MAKE_FLAGS d13820 1 a13822 1 TEXLIVE_IGNORE_PATTERNS d13824 1 a13826 1 TEXLIVE_UNVERSIONED d13828 1 a13830 1 TEX_FORMATS d13832 1 a13834 1 TEX_HYPHEN_DEF d13836 1 a13838 1 THTTPD_LOG_FACILITY d13840 1 a13842 1 TLSWRAPPER_CHROOT d13844 1 a13846 1 TOOLS_ALIASES d13848 1 a13850 1 TOOLS_ARGS d13852 1 a13854 1 TOOLS_CMD d13856 1 a13858 1 TOOLS_CREATE d13860 1 a13862 1 TOOLS_DIR d13864 1 a13866 1 TOOLS_GNU_MISSING d13868 1 a13870 1 TOOLS_NOOP d13872 1 a13874 1 TOOLS_SCRIPT d13876 1 a13878 1 TOOL_DEPENDS d13880 1 a13882 1 TYPE d13884 1 a13886 1 UCSPI_SSL_GROUP d13888 1 a13890 1 UNLIMIT_RESOURCES d13892 1 a13894 1 UNPRIVILEGED_GROUP d13896 1 a13898 1 UNPRIVILEGED_USER d13900 1 a13902 1 UNWRAP_PATTERNS d13904 1 a13906 1 UPDATE_TARGET d13908 1 a13910 1 USERGROUP_PHASE d13912 1 a13914 1 USER_SPECIFIC_PKGS d13916 1 a13918 1 USE_APR d13920 1 a13922 1 USE_BUILTIN d13924 1 a13926 1 USE_CURSES d13928 1 a13930 1 USE_DB185 d13932 1 a13934 1 USE_GAMESGROUP d13936 1 a13938 1 USE_IMAKE d13940 1 a13942 1 USE_JAVA2 d13944 1 a13946 1 USE_LIBTOOL d13948 1 a13950 1 USE_NETBSD_REPO d13952 1 a13954 1 USE_PKGSRC_GCC_RUNTIME d13956 1 a13958 1 USE_PKG_ADMIN_DIGEST d13960 1 a13962 1 USE_RUBY_INSTALL d13964 1 a13966 1 USE_RUBY_SETUP_PKG d13968 1 a13970 1 UUCP_GROUP d13972 1 a13974 1 VARBASE d13976 1 a13978 1 VIM_EXTRA_OPTS d13980 1 a13982 1 WCALC_CGIDIR d13984 1 a13986 1 WCALC_HTMLDIR d13988 1 a13990 1 WDM_MANAGERS d13992 1 a13994 1 WRAPPER_REORDER_CMDS d13996 1 a13998 1 WRKDIR_BASENAME d14000 1 a14002 1 WRKLOG d14004 1 a14006 1 WRKSRC d14008 1 a14010 1 X11 d14012 1 a14014 1 X11_PKGSRCDIR d14016 1 a14018 1 X509_CERTIFICATE d14020 1 a14022 1 XAW_TYPE d14024 1 a14026 1 XMKMF d14028 1 a14030 1 XXX d14032 1 a14034 1 ZSH_STATIC d14036 1 a14038 1 _vargroups d14040 1 a14042 1 acquire-localbase-lock d14044 1 d14047 1 a14047 1 add d14411 4 d14531 4 d14536 3 d14540 1 a14542 1 replace d14544 1 a14546 1 reproducible d14548 1 a14550 1 root d14552 1 a14554 1 send d14556 1 a14558 1 sendto d14560 1 a14562 1 setgid d14564 1 a14566 1 setuid d14568 1 a14570 1 shebang d14572 1 a14574 1 show-all d14576 1 a14578 1 show-depends d14580 1 a14582 1 show-depends-pkgpaths d14584 1 a14586 1 show-deps d14588 1 a14590 1 show-downlevel d14592 1 a14594 1 show-tools d14596 1 a14598 1 show-vars d14600 1 a14602 1 socket d14604 1 a14606 1 st_mode d14608 1 a14610 1 strcasestr d14612 1 a14614 1 strip d14616 1 a14618 1 strnlen d14620 1 a14622 1 subst d14624 1 a14626 1 sun d14628 1 a14630 1 sunwspro d14632 1 a14634 1 test d14636 1 a14638 1 tex d14640 1 d14643 1 a14643 1 tmp d14671 1 a14672 1 upload-distfiles d14675 1 a14676 1 user d14679 1 a14680 1 vasprintf d14683 1 a14684 1 vsnprintf d14687 1 a14688 1 warning d14691 1 a14692 1 warnx d14695 1 a14696 1 wattr_on d14699 1 a14700 1 wrapper d14703 1 a14704 1   @ 1.339 log @doc/pkgsrc.*: regen @ text @d4298 3 d4302 1 a4304 1 MASTER_SITE_GNU d4306 1 a4308 1 MASTER_SITE_HASKELL_HACKAGE d4310 1 a4312 1 MASTER_SITE_KDE d4314 1 a4316 1 MASTER_SITE_MOZILLA_ALL d4318 1 a4320 1 MASTER_SITE_NETLIB d4322 1 a4324 1 MASTER_SITE_OPENOFFICE d4326 1 a4328 1 MASTER_SITE_PERL_CPAN d4330 1 a4332 1 MASTER_SITE_PYPI d4334 1 a4336 1 MASTER_SITE_R_CRAN d4338 1 a4340 1 MASTER_SITE_SUNSITE d4342 1 a4344 1 MASTER_SITE_TEX_CTAN d4346 1 a4348 1 MASTER_SITE_XEMACS d4350 1 d8627 2 a8628 2 hash bangs in files. Please use the appropriate one, preferring REPLACE_SH in case this shell is sufficient. a11798 1 ALSA_PC d11800 1 a11802 1 AMANDA_TMP d11804 1 a11806 1 AMANDA_VAR d11808 1 a11810 1 APACHE_MODULE_NAME d11812 1 a11814 1 APACHE_MODULE_SRCDIR d11816 1 a11818 1 APACHE_SUEXEC_CONFIGURE_ARGS d11820 1 a11822 1 APACHE_USER d11824 1 a11826 1 APPEND_ELF d11828 1 a11830 1 AUDIT_PACKAGES_FLAGS d11832 1 a11834 1 AUTOMAKE_OVERRIDE d11836 1 a11838 1 AUTO_MKDIRS d11840 1 a11842 1 BDBBASE d11844 1 a11846 1 BDB_DEFAULT d11848 1 a11850 1 BDB_TYPE d11852 1 a11854 1 BINCIMAP_USER d11856 1 a11858 1 BIND_GROUP d11860 1 a11862 1 BINOWN d11864 1 a11866 1 BIN_INSTALL_FLAGS d11868 1 a11870 1 BLAS d11872 1 a11874 1 BLAS_C_INTERFACE d11876 1 a11878 1 BLAS_INDEX64 d11880 1 a11882 1 BLAS_TYPE d11884 1 a11886 1 BROKEN d11888 1 a11890 1 BROKEN_ON_PLATFORM d11892 1 a11894 1 BSDXSRCDIR d11896 1 a11898 1 BUILDLINK_AUTO_DIRS d11900 1 a11902 1 BUILDLINK_CFLAGS a11903 2 a11904 1 BUILDLINK_DEPMETHOD d11996 1 a11996 1 CHECKOUT_DATE a11998 1 CHECK_COMPILER d12000 1 a12002 1 CHECK_FILES d12004 1 a12006 1 CHECK_FILES_STRICT d12008 1 a12010 1 CHECK_HEADERS_SKIP d12012 1 a12014 1 CHECK_INTERPRETER_SKIP d12016 1 a12018 1 CHECK_PERMS_AUTOFIX d12020 1 a12022 1 CHECK_PIE d12024 1 a12026 1 CHECK_PIE_SUPPORTED d12028 1 a12030 1 CHECK_PORTABILITY_EXPERIMENTAL d12032 1 a12034 1 CHECK_RELRO d12036 1 a12038 1 CHECK_RELRO_SUPPORTED d12040 1 a12042 1 CHECK_SHLIBS_SKIP d12044 1 a12046 1 CHECK_SHLIBS_TOXIC d12048 1 a12050 1 CHECK_SSP_SKIP d12052 1 a12054 1 CHECK_STRIPPED d12056 1 a12058 1 CHECK_WRKREF d12060 1 a12062 1 CHECK_WRKREF_SKIP d12064 1 a12066 1 CLAMAV_GROUP d12068 1 a12070 1 CLANGBASE d12072 1 a12074 1 CMAKE_DEPENDENCIES_REWRITE d12076 1 a12078 1 CMAKE_INSTALL_PREFIX d12080 1 a12082 1 CMAKE_PKGSRC_BUILD_FLAGS a12083 2 a12084 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12146 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12148 1 a12150 1 CYRUS_GROUP d12152 1 a12154 1 CYRUS_USER d12156 1 a12158 1 DAEMONTOOLS_LOG_USER d12160 1 a12162 1 DARWIN_REQUIRES_FILTER d12164 1 a12166 1 DBUS_USER d12168 1 a12170 1 DEFANG_USER d12172 1 a12174 1 DEFAULT_DISTFILES d12176 1 a12178 1 DEFAULT_SERIAL_DEVICE d12180 1 a12182 1 DEINSTALLDEPENDS d12184 1 a12186 1 DEINSTALL_TEMPLATES d12188 1 a12190 1 DELAYED_WARNING_MSG d12192 1 a12194 1 DEPENDS_TARGET d12196 1 a12198 1 DESTDIR d12200 1 a12202 1 DIALER_GROUP d12204 1 a12206 1 DISTDIR d12208 1 a12210 1 DISTINFO_FILE d12212 1 a12214 1 DIST_PATH d12216 1 a12218 1 DJBDNS_AXFR_USER d12220 1 a12222 1 DJBDNS_DJBDNS_GROUP d12224 1 a12226 1 DJBDNS_RBL_USER d12228 1 a12230 1 DLOPEN_REQUIRE_PTHREADS d12232 1 a12234 1 DL_CFLAGS d12236 1 a12238 1 DL_LIBS d12240 1 a12242 1 DOCOWN d12244 1 a12246 1 DQCACHE_GROUP d12248 1 a12250 1 DT_LAYOUT d12252 1 a12254 1 DYNAMIC_SITES_SCRIPT d12256 1 a12258 1 ECHO_N d12260 1 a12262 1 EMACS_TYPE d12264 1 a12266 1 EMULSUBDIR d12268 1 a12270 1 EMUL_ARCH d12272 1 a12274 1 EMUL_EXEC_FMT d12276 1 a12278 1 EMUL_MODULES d12280 1 a12282 1 EMUL_PKG_FMT d12284 1 a12286 1 EMUL_PLATFORMS d12288 1 a12290 1 EMUL_REQD d12292 1 a12294 1 ERROR_MSG d12296 1 a12298 1 EXIM_USER d12300 1 a12302 1 EXTRACTOR d12304 1 a12306 1 EXTRACT_CMD_DEFAULT d12308 1 a12310 1 EXTRACT_ELEMENTS d12312 1 a12314 1 EXTRACT_ONLY d12316 1 a12318 1 EXTRACT_SUFX d12320 1 a12322 1 FAIL d12324 1 a12326 1 FAIL_MSG d12328 1 a12330 1 FAM d12332 1 a12334 1 FAM_DEFAULT d12336 1 a12338 1 FCPATH d12340 1 a12342 1 FEATURE_LDFLAGS d12344 1 a12346 1 FETCH_AFTER_ARGS d12348 1 a12350 1 FETCH_CMD d12352 1 a12354 1 FETCH_PROXY d12356 1 a12358 1 FETCH_TIMEOUT d12360 1 a12362 1 FETCH_USING d12364 1 a12366 1 FILES_SUBST_SED a12367 3 FONTDIR a12374 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d12452 1 a12452 1 GITLAB_TAG d12455 2 a12456 2 GITLAB_TYPE GIT_BRANCH d12459 2 a12460 10 GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG a12462 1 GNU d12464 1 a12466 1 GNU_CONFIGURE_INFODIR d12468 1 a12470 1 GNU_CONFIGURE_QUIET d12472 1 a12474 1 GODEP_REDIRECTS d12476 1 a12478 1 GO_DEPS d12480 1 a12482 1 GO_EXTRA_MOD_DIRS d12484 1 a12486 1 GO_SRCPATH d12488 1 a12490 1 GROUP_SPECIFIC_PKGS d12492 1 a12494 1 GRUB_PRESET_COMMAND a12495 2 a12496 1 HASKELL_COMPILER d12512 1 a12512 1 HG_REPO a12514 5 HG_REPOSITORIES HG_TAG HOMEPAGE d12516 1 a12518 1 HOST_SPECIFIC_PKGS d12520 1 a12522 1 HOWL_USER d12524 1 a12526 1 ICECAST_CHROOTDIR d12528 1 a12530 1 IDOBASE d12532 1 a12534 1 IGNORE_INFO_DIRS d12536 1 a12538 1 IMAKE d12540 1 a12542 1 IMAKE_MAKE d12544 1 a12546 1 IMAP_UW_CCLIENT_MBOX_FMT d12548 1 a12550 1 INCOMPAT_CURSES d12552 1 a12554 1 INFO_FILES d12556 1 a12558 1 INFO_MSG d12560 1 a12562 1 INN_DATA_DIR d12564 1 a12566 1 INN_USER d12568 1 a12570 1 INSTALLATION_DIRS_FROM_PLIST d12572 1 a12574 1 INSTALL_SH_OVERRIDE d12576 1 a12578 1 INSTALL_TEMPLATES d12580 1 a12582 1 IRCD_HYBRID_IRC_GROUP d12584 1 a12586 1 IRCD_HYBRID_MAXCONN d12588 1 a12590 1 IRCD_HYBRID_SYSLOG_EVENTS d12592 1 a12594 1 IRCD_HYBRID_TOPICLEN d12596 1 a12598 1 IRRD_USE_PGP d12600 1 a12602 1 JABBERD_LOGDIR d12604 1 a12606 1 JABBERD_SPOOLDIR d12608 1 a12610 5 JAVA_APP_PATH JAVA_APP_TARGETS JAVA_BINPREFIX d12612 1 a12614 1 JAVA_HOME d12616 1 a12618 1 JAVA_NAME d12620 1 a12622 1 JAVA_WRAPPERS d12624 1 a12626 1 JPEG_DEFAULT d12628 1 a12630 1 KERMIT_SUID_UUCP d12632 1 a12634 1 KNEWS_DOMAIN_FILE d12636 1 a12638 1 KRB5_ACCEPTED d12640 1 a12642 1 LANGUAGES d12644 1 a12646 1 LAPACK_LIBS d12648 1 a12650 1 LDCONFIG_ADD_CMD d12652 1 a12654 1 LDD d12656 1 a12658 1 LEAFNODE_GROUP d12660 1 a12662 1 LIBDVDCSS_HOMEPAGE d12664 1 a12666 1 LIBRSVG_TYPE d12668 1 a12670 1 LIBTOOLIZE_PLIST d12672 1 a12674 1 LIBUSB_TYPE d12676 1 a12678 1 LINKER_RPATH_FLAG a12679 7 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12744 1 a12744 1 MAJOR_OS_VERSION a12746 1 MAKEINFO_ARGS d12748 1 a12750 1 MAKE_DIRS_PERMS d12752 1 a12754 1 MAKE_FILE d12756 1 a12758 1 MAKE_JOBS d12760 1 a12762 1 MAKE_PROGRAM d12764 1 a12766 1 MANINSTALL d12768 1 a12770 1 MASTER_SITES d12772 1 a12774 1 MASTER_SITE_LOCAL d12776 1 a12778 1 MASTER_SITE_OVERRIDE d12780 1 a12782 1 MASTER_SORT d12784 1 a12786 1 MASTER_SORT_REGEX d12788 1 a12790 1 MEDIATOMB_GROUP d12792 1 a12794 1 MIPSPROBASE d12796 1 a12798 1 MIREDO_USER d12800 1 a12802 1 MKDIR d12804 1 a12806 1 MLDONKEY_GROUP d12808 1 a12810 1 MLDONKEY_USER d12812 1 a12814 1 MONOTONE_USER d12816 1 a12818 1 MOTIF_TYPE d12820 1 a12822 1 MPI_TYPE d12824 1 a12826 1 MSGFMT_STRIP_MSGID_PLURAL a12827 3 MUST d12936 1 a12936 1 OCAML_USE_OPT_COMPILER a12938 1 OCAML_USE_TOPKG d12940 1 a12942 1 ONLY_FOR_COMPILER d12944 1 a12946 1 OPENSSH_CHROOT d12948 1 a12950 1 OPENSSH_USER d12952 1 a12954 1 OPSYS_EMULDIR d12956 1 a12958 1 OS d12960 1 a12962 1 OSX d12964 1 a12966 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d12968 1 a12970 1 OTF_FONTS_DIR d12972 1 a12974 1 OVERRIDE_GEMSPEC a12975 3 OVERRIDE_ROCKSPEC a13022 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13414 4 RCD_DIR RCD_ORDER a13426 1 RCD_SUBR d13428 1 a13430 1 READLINE_DEFAULT d13432 1 a13434 1 REAL_ROOT_GROUP d13436 1 a13438 1 RECURSIVE_MAKE d13440 1 a13442 1 RELRO_SUPPORTED d13444 1 a13446 1 REPLACE_BASH d13448 1 a13450 1 REPLACE_KSH d13452 1 a13454 1 REPLACE_NODEJS d13456 1 a13458 1 REPLACE_PERL d13460 1 a13462 1 REPLACE_PHP d13464 1 a13466 1 REPLACE_QORE d13468 1 a13470 1 REPLACE_RUBY d13472 1 a13474 1 REPLACE_RUBY_PAT d13476 1 a13478 1 REPLACE_TEXLUA d13480 1 a13482 1 REQD_DIRS d13484 1 a13486 1 REQD_FILES d13488 1 a13490 1 REQD_FILES_PERMS d13492 1 a13494 1 RESOLV_LDFLAGS a13495 2 a13496 1 ROCKSPEC_NAME a13498 1 ROCKSPEC_SPECFILE d13500 1 a13502 1 ROOT_GROUP d13504 1 a13506 1 RPCGEN d13508 1 a13510 1 RPM2PKG_PLIST d13512 1 a13514 1 RPM2PKG_STAGE d13516 1 a13518 1 RPM2PKG_SUBPREFIX d13520 1 a13522 1 RPMIGNOREPATH d13524 1 a13526 1 RSSH_CVS_PATH d13528 1 a13530 1 RSSH_RSYNC_PATH d13532 1 a13534 1 RSSH_SFTP_SERVER_PATH d13536 1 a13538 1 RUBYGEM d13540 1 a13542 1 RUBYGEM_OPTIONS d13544 1 a13546 1 RUBY_ABI_VERSION d13548 1 a13550 1 RUBY_ARCHINC d13552 1 a13554 1 RUBY_BASE d13556 1 a13558 1 RUBY_BUILD_DOCUMENT d13560 1 a13562 1 RUBY_DOC d13564 1 a13566 1 RUBY_EG d13568 1 a13570 1 RUBY_EXTCONF d13572 1 a13574 1 RUBY_EXTCONF_DEBUG d13576 1 a13578 1 RUBY_GEM_ARCH d13580 1 a13582 1 RUBY_INC d13584 1 a13586 1 RUBY_LIB_BASE d13588 1 a13590 1 RUBY_NOVERSION d13592 1 a13594 1 RUBY_RAILS d13596 1 a13598 1 RUBY_RAILS60_VERSION d13600 1 a13602 1 RUBY_RAILS70_VERSION d13604 1 a13606 1 RUBY_RAILS_DEFAULT d13608 1 a13610 1 RUBY_RAILS_STRICT_DEP d13612 1 a13614 1 RUBY_SETUP d13616 1 a13618 1 RUBY_SHLIBALIAS d13620 1 a13622 1 RUBY_SIMPLE_INSTALL d13624 1 a13626 1 RUBY_SITELIB d13628 1 a13630 1 RUBY_SITERIDIR d13632 1 a13634 1 RUBY_SRCDIR d13636 1 a13638 1 RUBY_SUFFIX d13640 1 a13642 1 RUBY_USE_PTHREAD d13644 1 a13646 1 RUBY_VENDORLIB d13648 1 a13650 1 RUBY_VER d13652 1 a13654 1 RUBY_VERSIONS_ACCEPTED d13656 1 a13658 1 RUBY_VERSION_DEFAULT d13660 1 a13662 1 RUBY_VER_DIR d13664 1 a13666 1 RUN_LDCONFIG d13668 1 a13670 1 SCO d13672 1 a13674 1 SCREWS_USER d13676 1 a13678 1 SCROLLKEEPER_DATADIR d13680 1 a13682 1 SCROLLKEEPER_UPDATEDB d13684 1 a13686 1 SDL12_TYPE d13688 1 a13690 1 SETGIDGAME d13692 1 a13694 1 SETUID_ROOT_PERMS a13695 2 a13696 1 SHORTNAME a13782 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION d13868 1 a13868 1 TTF_FONTDIR a13870 1 TTF_FONTS_DIR d13872 1 a13874 1 UAC_REQD_EXECS d13876 1 a13878 1 UCSPI_SSL_USER d13880 1 a13882 1 UNPRIVILEGED d13884 1 a13886 1 UNPRIVILEGED_GROUPS d13888 1 a13890 1 UNWRAP_FILES d13892 1 a13894 1 UPDATE_GEMSPEC d13896 1 a13898 1 URI d13900 1 a13902 1 USERPPP_GROUP d13904 1 a13906 1 USE_ABI_DEPENDS d13908 1 a13910 1 USE_BSD_MAKEFILE d13912 1 a13914 1 USE_CROSS_COMPILE d13916 1 a13918 1 USE_CWRAPPERS d13920 1 a13922 1 USE_FEATURES d13924 1 a13926 1 USE_GCC_RUNTIME d13928 1 a13930 1 USE_JAVA d13932 1 a13934 1 USE_LANGUAGES d13936 1 a13938 1 USE_NATIVE_GCC d13940 1 a13942 1 USE_PKGSRC_GCC d13944 1 a13946 1 USE_PKGTASKS d13948 1 a13950 1 USE_RUBY_EXTCONF d13952 1 a13954 1 USE_RUBY_SETUP d13956 1 a13958 1 USE_TOOLS d13960 1 a13962 1 UUCP_USER d13964 1 a13966 1 VARNAME d13968 1 a13970 1 WARNING_MSG d13972 1 a13974 1 WCALC_CGIPATH d13976 1 a13978 1 WCALC_HTMLPATH d13980 1 a13982 1 WRAPPER_CC d13984 1 a13986 1 WRKDIR d13988 1 a13990 1 WRKDIR_LOCKTYPE d13992 1 a13994 1 WRKOBJDIR d13996 1 a13998 1 X10_PORT d14000 1 a14002 1 X11BASE d14004 1 a14006 1 X11_TYPE d14008 1 a14010 1 X509_KEY d14012 1 a14014 1 XLOCK_DEFAULT_MODE d14016 1 a14018 1 XMKMF_FLAGS a14019 3 XXXX d14160 1 a14160 1 cvs a14162 1 debug d14164 1 a14166 1 declare d14168 1 a14170 1 depend d14172 1 a14174 1 depends d14176 1 a14178 1 depends-fetch d14180 1 a14182 1 describe d14184 1 a14186 1 disable d14188 1 a14190 1 distinfo d14192 1 a14194 1 dlopen d14196 1 a14198 1 do-clean d14200 1 a14202 1 do-configure-post-hook d14204 1 a14206 1 do-fetch d14208 1 a14210 1 emul d14212 1 a14214 1 emul-fetch d14216 1 a14218 1 emulator a14219 2 a14220 1 endif a14258 1 fossil d14260 1 a14262 1 fts d14264 1 a14266 1 fts_open d14268 1 a14270 1 fts_set d14272 1 a14274 1 gethostbyaddr d14276 1 a14278 1 gethostbyname2 d14280 1 a14282 1 getprogname d14284 1 a14286 1 getservbyport a14287 2 a14288 1 git a14314 1 hg d14316 1 a14318 1 increment d14320 1 a14322 1 inet_aton d14324 1 a14326 1 interpreter d14328 1 a14330 1 ip4 d14332 1 a14334 1 ipv4 d14336 1 a14338 1 iso d14340 1 a14342 1 krb d14344 1 a14346 1 ksh d14348 1 a14350 1 latex d14352 1 a14354 1 libintl_gettext d14356 1 a14358 1 libnbcompat d14360 1 a14362 1 libtool d14364 1 a14366 1 license d14368 1 a14370 1 little-endian d14372 1 a14374 1 locking d14376 1 a14378 1 lvalue d14380 1 a14382 1 makesum a14383 3 mercurial a14602 1 subversion d14604 1 a14606 1 sunpro a14607 3 svn @ 1.338 log @doc/pkgsrc.*: regen @ text @a8727 1 Unix(-like) __unix @ 1.337 log @doc/pkgsrc.*: regen @ text @d336 1 d343 4 a346 3
    21.4.4. Packages containing Perl scripts
    21.4.5. Packages containing shell scripts
    21.4.6. Other programming languages
    d3307 1 d3314 4 a3317 3
    21.4.4. Packages containing Perl scripts
    21.4.5. Packages containing shell scripts
    21.4.6. Other programming languages
    d4128 1 a4128 1
  • LOCALBASE is where all non-X11 pkgs d4131 1 a4131 1 another non-X11 pkg, use ${LOCALBASE}. The name d7144 2 a7145 2 print/cups package as an example, it has a cupsd.sh in its files directory.

  • d7298 1 d7305 4 a7308 3
    21.4.4. Packages containing Perl scripts
    21.4.5. Packages containing shell scripts
    21.4.6. Other programming languages
    d8431 6 a8436 4 to regenerate the configure script and Makefile.in makefile templates, then they should be executed in a pre-configure target.

    For packages that need only autoconf:

    d8438 2 a8439 2 AUTOCONF_REQD= 2.50 # if default version is not good enough USE_TOOLS+= autoconf # use "autoconf213" for autoconf-2.13 d8443 1 a8443 14 cd ${WRKSRC} && autoconf ...

    and for packages that need automake and autoconf:

    AUTOMAKE_REQD=  1.7.1           # if default version is not good enough
    USE_TOOLS+=     automake        # use "automake14" for automake-1.4
    ...
    
    pre-configure:
            set -e; cd ${WRKSRC}; \
            aclocal; autoheader; automake -a --foreign -i; autoconf
    
    d8446 7
    a8452 2
    

    Packages which use GNU Automake will almost certainly require GNU Make.

    d8461 28 d8496 1 a8496 1

    Compilers for the C, C++, and Fortran languages comes with d8514 18 d8572 21 a8592 9

  • Prepend

    .include
          "go-modules.mk"

    to any other

    .include

    s.

  • d8600 1 a8600 1 21.4.4. Packages containing Perl scripts d8619 1 a8619 1 21.4.5. Packages containing shell scripts d8634 1 a8634 1 21.4.6. Other programming languages d8687 16 d8713 1 a8713 2

    If this distinction is not fine enough, you can also test for the following macros.

    d8721 1 a8721 1 Linux linux, __linux, __linux__ d8728 1 d8736 2 d8740 1 d8877 1 a8877 1 $ (cd ../../ && test -f mk/bsd.pkg.mk && rm -rf */*/work) d8879 2 a8880 2

    (The test for bsd.pkg.mk just prevents running this command in the wrong directory.)

    d8961 1 a8961 1

    To fix these linker errors, it is often sufficient to say d8964 1 a8964 1 Makefile and then say bmake clean; d8968 1 a8968 1 21.5.4.1. Special issue: The SunPro compiler d8998 6 a9003 3 to unlimit the resources. Currently, the allowed values are any combination of cputime, datasize, memorysize, and stacksize. d9024 4 a9027 4

    You can also just append dir1 dir2 to the INSTALLATION_DIRS variable, which will automatically do the right thing.

    d9034 1 a9034 1 ${PREFIX}/share/doc/${PKGNAME} (the latter d9038 5 a9042 4 --with-html-dir option. Sometimes using this flag is needed because otherwise the documentation ends up in ${PREFIX}/share/doc/html or other places.

    a9146 6

    Note

    Before March 2006, these variables were called _REPLACE.* and _REPLACE_FILES.*.

    a9512 9

    We need your help!

    Should you have some spare cycles to devote to NetBSD, pkgsrc and GNOME and are willing to learn new exciting stuff, please jump straight to the pending work list! There is still a long way to go to get a fully-functional GNOME desktop under NetBSD and we need your help to achieve it!

    d9560 3 a9562 3 GNU_CONFIGURE=yes USE_LIBTOOL=yes USE_TOOLS+=gmake d9569 1 a9569 1 USE_TOOLS+=pkg-config d9588 1 a9588 1 CONFIGURE_ARGS+=--disable-gtk-doc d9597 1 a9597 1 CONFIGURE_ARGS+=--with-html-dir=${PREFIX}/share/gtk-doc/... d10049 1 a10049 6
    24.4. What is the difference between BUILDLINK_LDFLAGS, BUILDLINK_LDADD and BUILDLINK_LIBS?
    24.5. Why does make show-var d10053 1 a10053 1
    24.6. What does d10058 1 a10058 1
    24.7. Which mailing lists are there for package d10061 1 a10061 1
    24.8. Where is the pkgsrc d10064 1 a10064 1
    24.9. I have a little time to kill. d10084 10 a10093 5

    MAKEFLAGS are the flags passed to the pkgsrc-internal invocations of make(1), while MAKE_FLAGS are the flags that are passed to the MAKE_PROGRAM when building the package. [FIXME: What is .MAKEFLAGS for?]

    d10105 2 a10106 1

    MAKE is the path to the d10108 7 a10114 5 infrastructure. GMAKE is the path to GNU Make, but you need to say USE_TOOLS+=gmake to use that. MAKE_PROGRAM is the path to the Make program that is used for building the package.

    a10125 9

    CC is the path to the real C compiler, which can be configured by the pkgsrc user. PKG_CC is the path to the compiler wrapper. PKGSRC_COMPILER is not a path to a compiler, but the type of compiler that should be used. See mk/compiler.mk for more information about the latter variable.

    d10127 9 a10135 1

    24.4.

    a10136 8

    What is the difference between BUILDLINK_LDFLAGS, BUILDLINK_LDADD and BUILDLINK_LIBS?

    [FIXME]

    d10140 1 a10140 1

    24.5.

    d10156 1 a10156 1

    24.6.

    d10165 2 a10166 2

    The := is not really an assignment operator, although it looks like it. d10180 1 a10180 1

    24.7.

    d10205 1 a10205 1

    24.8.

    d10253 1 a10253 1

    24.9.

    d10255 1 a10255 1

    I have a little time to kill. d11796 1 d11798 2 d11801 1 a11803 1 AMANDA_USER d11805 1 a11807 1 APACHE_GROUP d11809 1 a11811 1 APACHE_MODULE_SRC d11813 1 a11815 1 APACHE_PKG_PREFIX d11817 1 a11819 1 APACHE_SUEXEC_DOCROOT d11821 1 a11823 1 APPEND_ABI d11825 1 a11827 1 ARLA_CACHE d11829 1 a11831 1 AUTOCONF_REQD d11833 1 a11835 1 AUTOMAKE_REQD d11837 1 a11839 1 BDB185_DEFAULT d11841 1 a11843 1 BDB_ACCEPTED d11845 1 a11847 1 BDB_LIBS d11849 1 a11851 1 BINCIMAP_GROUP d11853 1 a11855 1 BIND_DIR d11857 1 a11859 1 BIND_USER d11861 1 a11863 1 BINPKG_SITES d11865 1 a11867 1 BISON_PKGDATADIR d11869 1 a11871 1 BLAS_ACCEPTED d11873 1 a11875 1 BLAS_INCLUDES d11877 1 a11879 1 BLAS_LIBS d11881 1 a11883 1 BOOTSTRAP_DEPENDS d11885 1 a11887 1 BROKEN_EXCEPT_ON_PLATFORM d11889 1 a11891 1 BSDSRCDIR d11893 1 a11895 1 BSD_MAKE_ENV d11897 1 a11899 1 BUILDLINK_AUTO_VARS d11901 1 a11903 1 BUILDLINK_CONTENTS_FILTER d11905 1 d11997 3 d12001 1 a12003 1 CHECK_FAKEHOME d12005 1 a12007 1 CHECK_FILES_SKIP d12009 1 a12011 1 CHECK_HEADERS d12013 1 a12015 1 CHECK_INTERPRETER d12017 1 a12019 1 CHECK_PERMS d12021 1 a12023 1 CHECK_PERMS_SKIP d12025 1 a12027 1 CHECK_PIE_SKIP d12029 1 a12031 1 CHECK_PORTABILITY d12033 1 a12035 1 CHECK_PORTABILITY_SKIP d12037 1 a12039 1 CHECK_RELRO_SKIP d12041 1 a12043 1 CHECK_SHLIBS d12045 1 a12047 1 CHECK_SHLIBS_SUPPORTED d12049 1 a12051 1 CHECK_SSP d12053 1 a12055 1 CHECK_SSP_SUPPORTED d12057 1 a12059 1 CHECK_STRIPPED_SKIP d12061 1 a12063 1 CHECK_WRKREF_EXTRA_DIRS d12065 1 a12067 1 CLAMAV_DBDIR d12069 1 a12071 1 CLAMAV_USER d12073 1 a12075 1 CLEANDEPENDS d12077 1 a12079 1 CMAKE_INSTALL_NAME_DIR d12081 1 a12083 1 CMAKE_MODULE_PATH_OVERRIDE d12085 1 a12087 1 CMAKE_PREFIX_PATH d12089 9 d12160 17 a12177 1 CYRUS_GROUP d12180 1 a12181 1 CYRUS_USER d12184 1 a12185 1 DAEMONTOOLS_LOG_USER d12188 1 a12189 1 DARWIN_REQUIRES_FILTER d12192 1 a12193 1 DBUS_USER d12196 1 a12197 1 DEFANG_USER d12200 1 a12201 1 DEFAULT_DISTFILES d12204 1 a12205 1 DEFAULT_SERIAL_DEVICE d12208 1 a12209 1 DEINSTALLDEPENDS d12212 1 a12213 1 DEINSTALL_TEMPLATES d12216 1 a12217 1 DELAYED_WARNING_MSG d12220 1 a12221 1 DEPENDS_TARGET d12224 1 a12225 1 DESTDIR d12228 1 a12229 1 DIALER_GROUP d12232 1 a12233 1 DISTDIR d12236 1 a12237 1 DISTINFO_FILE d12240 1 a12241 1 DIST_PATH d12244 1 a12245 1 DJBDNS_AXFR_USER d12248 1 a12249 1 DJBDNS_DJBDNS_GROUP d12252 1 a12253 1 DJBDNS_RBL_USER d12256 1 a12257 1 DLOPEN_REQUIRE_PTHREADS d12260 1 a12261 1 DL_CFLAGS d12264 1 a12265 1 DL_LIBS d12268 1 a12269 1 DOCOWN d12272 1 a12273 1 DQCACHE_GROUP d12276 1 a12277 1 DT_LAYOUT d12280 1 a12281 1 DYNAMIC_SITES_SCRIPT d12284 1 a12285 1 ECHO_N d12288 1 a12289 1 EMACS_TYPE d12292 1 a12293 1 EMULSUBDIR d12296 1 a12297 1 EMUL_ARCH d12300 1 a12301 1 EMUL_EXEC_FMT d12304 1 a12305 1 EMUL_MODULES d12308 1 a12309 1 EMUL_PKG_FMT d12312 1 a12313 1 EMUL_PLATFORMS d12316 1 a12317 1 EMUL_REQD d12320 1 a12321 1 ERROR_MSG d12324 1 a12325 1 EXIM_USER d12328 1 a12329 1 EXTRACTOR d12332 1 d12334 2 d12337 1 a12339 1 EXTRACT_DIR d12341 1 a12343 1 EXTRACT_ENV d12345 1 a12347 1 EXTRACT_OPTS d12349 1 a12351 1 EXTRACT_USING d12353 1 a12355 1 FAILOVER_FETCH d12357 1 a12359 1 FAKE_NCURSES d12361 1 a12363 1 FAM_ACCEPTED d12365 1 a12367 1 FAM_SERVER d12369 1 a12371 1 FEATURE_CPPFLAGS d12373 1 a12375 1 FEATURE_LIBS d12377 1 a12379 1 FETCH_BEFORE_ARGS d12381 1 a12383 1 FETCH_OUTPUT_ARGS d12385 1 a12387 1 FETCH_RESUME_ARGS d12389 1 a12391 1 FETCH_USE_IPV4_ONLY d12393 1 a12395 1 FILES_SUBST d12397 1 d12400 1 a12400 1 FIX_SYSTEM_HEADERS d12408 8 d12492 20 d12549 3 d12553 1 a12555 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12557 1 a12559 1 HASKELL_ENABLE_SHARED_LIBRARY d12561 1 a12563 1 HAS_CONFIGURE d12565 5 d12668 4 d12744 5 d12750 2 d12753 1 a12755 1 LOCALBASE_LOCKTYPE d12757 1 a12759 1 LOVE_DATA d12761 1 a12763 1 LOVE_VERSION d12765 1 a12767 1 LP64PLATFORMS d12769 1 a12771 1 LUA_CDIR d12773 1 a12775 1 LUA_DOCDIR d12777 1 a12779 1 LUA_INCDIR d12781 1 a12783 1 LUA_LDIR d12785 1 a12787 1 LUA_PKGPREFIX d12789 1 a12791 1 LUA_USE_BUSTED d12793 1 a12795 1 LUA_VERSIONS_INCOMPATIBLE d12797 1 a12799 1 LUA_VERSION_REQD d12801 1 a12803 1 MACHINE_PLATFORM d12805 1 a12807 1 MAILAGENT_EMAIL d12809 1 a12811 1 MAILAGENT_ORGANIZATION d12813 1 d12900 1 d12902 2 d12905 1 a12907 1 MYSQL_DATADIR d12909 1 a12911 1 MYSQL_GROUP d12913 1 a12915 1 MYSQL_VERSION d12917 1 a12919 1 MYSQL_VERSIONS_ALL d12921 1 a12923 1 NAGIOSCMD_GROUP d12925 1 a12927 1 NAGIOS_GROUP d12929 1 a12931 1 NATIVE_APPEND_ABI d12933 1 a12935 1 NATIVE_EXEC_FMT d12937 1 a12939 1 NATIVE_OBJECT_FMT d12941 1 a12943 1 NETBSD_LOGIN_NAME d12945 1 a12947 1 NMH_MTA d12949 1 a12951 1 NODE_VERSIONS_ACCEPTED d12953 1 a12955 1 NODE_VERSION_DEFAULT d12957 1 a12959 1 NOLOGIN d12961 1 a12963 1 NOT_FOR_PLATFORM d12965 1 a12967 1 NOT_PAX_MPROTECT_SAFE d12969 1 a12971 1 NO_CHECKSUM d12973 1 a12975 1 NO_SKIP d12977 1 a12979 1 NULLMAILER_GROUP d12981 1 a12983 1 OASIS d12985 1 a12987 1 OBJHOSTNAME d12989 1 a12991 1 OCAML_FINDLIB_DIRS d12993 1 a12995 1 OCAML_FINDLIB_REGISTER_VERBOSE d12997 1 a12999 1 OCAML_TOPKG_DOCDIR d13001 1 a13003 1 OCAML_USE_FINDLIB d13005 1 a13007 1 OCAML_USE_OASIS_DYNRUN d13009 1 a13011 1 OCAML_USE_OPT_COMPILER d13013 1 a13015 1 OMF d13017 1 a13019 1 ONLY_FOR_PLATFORM d13021 1 a13023 1 OPENSSH_GROUP d13025 1 a13027 1 OPSYS d13029 1 a13031 1 OPSYS_VERSION d13033 1 a13035 1 OSS_TYPE d13037 5 a13043 1 OSX_TOLERATE_SDK_SKEW d13045 1 a13047 1 OS_VERSION d13049 1 a13051 1 OVERRIDE_DIRDEPTH d13053 1 d13056 1 a13056 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13104 8 d13504 4 d13520 1 d13522 2 d13525 1 a13527 1 READLINE_TYPE d13529 1 a13531 1 REAL_ROOT_USER d13533 1 a13535 1 RELAY_CTRL_DIR d13537 1 a13539 1 REPLACE_AWK d13541 1 a13543 1 REPLACE_CSH d13545 1 a13547 1 REPLACE_LUA d13549 1 a13551 1 REPLACE_OCTAVE d13553 1 a13555 1 REPLACE_PERL6 d13557 1 a13559 1 REPLACE_PYTHON d13561 1 a13563 1 REPLACE_R d13565 1 a13567 1 REPLACE_RUBY_DIRS d13569 1 a13571 1 REPLACE_SH d13573 1 a13575 1 REPLACE_WISH d13577 1 a13579 1 REQD_DIRS_PERMS d13581 1 a13583 1 REQD_FILES_MODE d13585 1 a13587 1 RESOLV_AUTO_VARS d13589 1 a13591 1 RESOLV_LIBS d13593 1 d13596 1 a13597 1 ROOT_GROUP d13600 1 a13601 1 RPCGEN d13604 1 a13605 1 RPM2PKG_PLIST d13608 1 a13609 1 RPM2PKG_STAGE d13612 1 a13613 1 RPM2PKG_SUBPREFIX d13616 1 a13617 1 RPMIGNOREPATH d13620 1 a13621 1 RSSH_CVS_PATH d13624 1 a13625 1 RSSH_RSYNC_PATH d13628 1 a13629 1 RSSH_SFTP_SERVER_PATH d13632 1 a13633 1 RUBYGEM d13636 1 a13637 1 RUBYGEM_OPTIONS d13640 1 a13641 1 RUBY_ABI_VERSION d13644 1 a13645 1 RUBY_ARCHINC d13648 1 a13649 1 RUBY_BASE d13652 1 a13653 1 RUBY_BUILD_DOCUMENT d13656 1 a13657 1 RUBY_DOC d13660 1 a13661 1 RUBY_EG d13664 1 a13665 1 RUBY_EXTCONF d13668 1 a13669 1 RUBY_EXTCONF_DEBUG d13672 1 a13673 1 RUBY_GEM_ARCH d13676 1 a13677 1 RUBY_INC d13680 1 d13682 2 d13685 1 a13687 1 RUBY_NAME d13689 1 a13691 1 RUBY_PKGPREFIX d13693 1 a13695 1 RUBY_RAILS52_VERSION d13697 1 a13699 1 RUBY_RAILS61_VERSION d13701 1 a13703 1 RUBY_RAILS_ACCEPTED d13705 1 a13707 1 RUBY_RAILS_REQD d13709 1 a13711 1 RUBY_RIDIR d13713 1 a13715 1 RUBY_SHLIB d13717 1 a13719 1 RUBY_SHLIBVER d13721 1 a13723 1 RUBY_SITEARCHLIB d13725 1 a13727 1 RUBY_SITELIB_BASE d13729 1 a13731 1 RUBY_SLEXT d13733 1 a13735 1 RUBY_STATICLIB d13737 1 a13739 1 RUBY_SYSRIDIR d13741 1 a13743 1 RUBY_VENDORARCHLIB d13745 1 a13747 1 RUBY_VENDORLIB_BASE d13749 1 a13751 1 RUBY_VERSION d13753 1 a13755 1 RUBY_VERSIONS_INCOMPATIBLE d13757 1 a13759 1 RUBY_VERSION_REQD d13761 1 a13763 1 RUN d13765 1 a13767 1 RUST_TYPE d13769 1 a13771 1 SCREWS_GROUP d13773 1 a13775 1 SCRIPTS_ENV d13777 1 a13779 1 SCROLLKEEPER_REBUILDDB d13781 1 a13783 1 SDIST_PAWD d13785 1 a13787 1 SERIAL_DEVICES d13789 1 a13791 1 SETGID_GAMES_PERMS d13793 1 a13795 1 SH d13797 1 d13884 8 d13977 3 d13981 1 a13983 1 TYPE d13985 1 a13987 1 UCSPI_SSL_GROUP d13989 1 a13991 1 UNLIMIT_RESOURCES d13993 1 a13995 1 UNPRIVILEGED_GROUP d13997 1 a13999 1 UNPRIVILEGED_USER d14001 1 a14003 1 UNWRAP_PATTERNS d14005 1 a14007 1 UPDATE_TARGET d14009 1 a14011 1 USERGROUP_PHASE d14013 1 a14015 1 USER_SPECIFIC_PKGS d14017 1 a14019 1 USE_APR d14021 1 a14023 1 USE_BUILTIN d14025 1 a14027 1 USE_CURSES d14029 1 a14031 1 USE_DB185 d14033 1 a14035 1 USE_GAMESGROUP d14037 1 a14039 1 USE_IMAKE d14041 1 a14043 1 USE_JAVA2 d14045 1 a14047 1 USE_LIBTOOL d14049 1 a14051 1 USE_NETBSD_REPO d14053 1 a14055 1 USE_PKGSRC_GCC_RUNTIME d14057 1 a14059 1 USE_PKG_ADMIN_DIGEST d14061 1 a14063 1 USE_RUBY_INSTALL d14065 1 a14067 1 USE_RUBY_SETUP_PKG d14069 1 a14071 1 UUCP_GROUP d14073 1 a14075 1 VARBASE d14077 1 a14079 1 VIM_EXTRA_OPTS d14081 1 a14083 1 WCALC_CGIDIR d14085 1 a14087 1 WCALC_HTMLDIR d14089 1 a14091 1 WDM_MANAGERS d14093 1 a14095 1 WRAPPER_REORDER_CMDS d14097 1 a14099 1 WRKDIR_BASENAME d14101 1 a14103 1 WRKLOG d14105 1 a14107 1 WRKSRC d14109 1 a14111 1 X11 d14113 1 a14115 1 X11_PKGSRCDIR d14117 1 a14119 1 X509_CERTIFICATE d14121 1 a14123 1 XAW_TYPE d14125 1 a14127 1 XMKMF d14129 1 d14132 1 a14132 1 XXX d14273 3 d14277 1 a14279 1 declaration d14281 1 a14283 1 defined d14285 1 a14287 1 dependencies d14289 1 a14291 1 depends-checksum d14293 1 a14295 1 deps d14297 1 a14299 1 destdir d14301 1 a14303 1 distclean d14305 1 a14307 1 dl d14309 1 a14311 1 do-buildlink d14313 1 a14315 1 do-configure d14317 1 a14319 1 do-extract d14321 1 a14323 1 do-install d14325 1 a14327 1 emul-distinfo d14329 1 a14331 1 emulation d14333 1 a14335 1 enable d14337 1 d14376 1 d14378 2 d14381 1 a14383 1 fts_close d14385 1 a14387 1 fts_read d14389 1 a14391 1 gcc d14393 1 a14395 1 gethostbyname d14397 1 a14399 1 getopt_long d14401 1 a14403 1 getservbyname d14405 1 a14407 1 getservent d14409 1 d14413 3 d14417 1 a14419 1 gnu d14421 1 a14423 1 go d14425 1 a14427 1 golang d14429 1 a14431 1 hashbang d14433 1 d14436 1 a14436 1 help d14508 1 a14509 1 meta-package d14512 1 a14513 1 mit-krb5 d14516 1 a14517 1 mkl d14520 1 a14521 1 mprotect d14524 1 a14525 1 nb d14528 1 a14529 1 netlib d14532 1 a14533 1 node.js d14536 1 a14537 1 obstack d14540 1 a14541 1 occurs d14544 1 a14545 1 openblas d14548 1 a14549 1 options.mk d14552 1 a14553 1 override d14556 1 a14557 1 override-message-intltool d14560 1 a14561 1 parallel d14564 1 a14565 1 pax d14568 1 a14569 1 pbulk-index d14572 1 a14573 1 perl d14576 1 a14577 1 perms d14580 1 a14581 1 pkg-build-options d14584 1 a14585 1 pkg_build_options d14588 1 a14589 1 plist d14592 1 a14593 1 post-fetch d14596 1 a14597 1 pre-build-checks-hook d14600 1 a14601 1 pre-configure-checks-hook d14604 1 a14605 1 pre-fetch d14608 1 a14609 1 print-plist d14612 1 a14613 1 privileged-install-hook d14616 1 a14617 1 python d14620 1 a14621 1 readme-all d14624 1 a14625 1 recv d14628 1 a14629 1 regcomp d14632 1 a14633 1 release-lock d14636 1 a14637 1 rename d14640 1 a14641 1 replace d14644 1 a14645 1 reproducible d14648 1 a14649 1 root d14652 1 a14653 1 send d14656 1 a14657 1 sendto d14660 1 a14661 1 setgid d14664 1 a14665 1 setuid d14668 1 a14669 1 shebang d14672 1 a14673 1 show-all d14676 1 a14677 1 show-depends d14680 1 a14680 1 show-depends-all d14685 3 d14689 1 a14691 1 show-distfiles d14693 1 a14695 1 show-subdir-var d14697 1 a14699 1 show-var d14701 1 a14703 1 snprintf d14705 1 a14707 1 ssp d14709 1 a14711 1 stage-install d14713 1 a14715 1 strict d14717 1 a14719 1 strndup d14721 1 a14723 1 strsep d14725 1 d14728 1 a14728 1 substitutions d14736 1 d14738 2 d14741 1 a14743 1 test-env d14745 1 a14747 1 texlive d14749 1 a14751 1 tool d14753 1 d14756 1 a14756 1 tools-libtool-m4-override @ 1.336 log @doc/pkgsrc.*: regen @ text @d3666 2 a3667 2 whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with d3691 7 a11735 1 ALSA_PC d11737 1 a11739 1 AMANDA_TMP d11741 1 a11743 1 AMANDA_VAR d11745 1 a11747 1 APACHE_MODULE_NAME d11749 1 a11751 1 APACHE_MODULE_SRCDIR d11753 1 a11755 1 APACHE_SUEXEC_CONFIGURE_ARGS d11757 1 a11759 1 APACHE_USER d11761 1 a11763 1 APPEND_ELF d11765 1 a11767 1 AUDIT_PACKAGES_FLAGS d11769 1 a11771 1 AUTOMAKE_OVERRIDE d11773 1 a11775 1 AUTO_MKDIRS d11777 1 a11779 1 BDBBASE d11781 1 a11783 1 BDB_DEFAULT d11785 1 a11787 1 BDB_TYPE d11789 1 a11791 1 BINCIMAP_USER d11793 1 a11795 1 BIND_GROUP d11797 1 a11799 1 BINOWN d11801 1 a11803 1 BIN_INSTALL_FLAGS d11805 1 a11807 1 BLAS d11809 1 a11811 1 BLAS_C_INTERFACE d11813 1 a11815 1 BLAS_INDEX64 d11817 1 a11819 1 BLAS_TYPE d11821 1 a11823 1 BROKEN d11825 1 a11827 1 BROKEN_ON_PLATFORM d11829 1 a11831 1 BSDXSRCDIR d11833 1 a11835 1 BUILDLINK_AUTO_DIRS d11837 1 a11839 1 BUILDLINK_CFLAGS a11840 2 a11841 1 BUILDLINK_DEPMETHOD d11933 1 a11933 1 CHECKOUT_DATE a11935 1 CHECK_COMPILER d11937 1 a11939 1 CHECK_FILES d11941 1 a11943 1 CHECK_FILES_STRICT d11945 1 a11947 1 CHECK_HEADERS_SKIP d11949 1 a11951 1 CHECK_INTERPRETER_SKIP d11953 1 a11955 1 CHECK_PERMS_AUTOFIX d11957 1 a11959 1 CHECK_PIE d11961 1 a11963 1 CHECK_PIE_SUPPORTED d11965 1 a11967 1 CHECK_PORTABILITY_EXPERIMENTAL d11969 1 a11971 1 CHECK_RELRO d11973 1 a11975 1 CHECK_RELRO_SUPPORTED d11977 1 a11979 1 CHECK_SHLIBS_SKIP d11981 1 a11983 1 CHECK_SHLIBS_TOXIC d11985 1 a11987 1 CHECK_SSP_SKIP d11989 1 a11991 1 CHECK_STRIPPED d11993 1 a11995 1 CHECK_WRKREF d11997 1 a11999 1 CHECK_WRKREF_SKIP d12001 1 a12003 1 CLAMAV_GROUP d12005 1 a12007 1 CLANGBASE d12009 1 a12011 1 CMAKE_DEPENDENCIES_REWRITE d12013 1 a12015 1 CMAKE_INSTALL_PREFIX d12017 1 a12019 1 CMAKE_PKGSRC_BUILD_FLAGS a12020 2 a12021 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12083 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12085 1 a12087 1 CYRUS_GROUP d12089 1 a12091 1 CYRUS_USER d12093 1 a12095 1 DAEMONTOOLS_LOG_USER d12097 1 a12099 1 DARWIN_REQUIRES_FILTER d12101 1 a12103 1 DBUS_USER d12105 1 a12107 1 DEFANG_USER d12109 1 a12111 1 DEFAULT_DISTFILES d12113 1 a12115 1 DEFAULT_SERIAL_DEVICE d12117 1 a12119 1 DEINSTALLDEPENDS d12121 1 a12123 1 DEINSTALL_TEMPLATES d12125 1 a12127 1 DELAYED_WARNING_MSG d12129 1 a12131 1 DEPENDS_TARGET d12133 1 a12135 1 DESTDIR d12137 1 a12139 1 DIALER_GROUP d12141 1 a12143 1 DISTDIR d12145 1 a12147 1 DISTINFO_FILE d12149 1 a12151 1 DIST_PATH d12153 1 a12155 1 DJBDNS_AXFR_USER d12157 1 a12159 1 DJBDNS_DJBDNS_GROUP d12161 1 a12163 1 DJBDNS_RBL_USER d12165 1 a12167 1 DLOPEN_REQUIRE_PTHREADS d12169 1 a12171 1 DL_CFLAGS d12173 1 a12175 1 DL_LIBS d12177 1 a12179 1 DOCOWN d12181 1 a12183 1 DQCACHE_GROUP d12185 1 a12187 1 DT_LAYOUT d12189 1 a12191 1 DYNAMIC_SITES_SCRIPT d12193 1 a12195 1 ECHO_N d12197 1 a12199 1 EMACS_TYPE d12201 1 a12203 1 EMULSUBDIR d12205 1 a12207 1 EMUL_ARCH d12209 1 a12211 1 EMUL_EXEC_FMT d12213 1 a12215 1 EMUL_MODULES d12217 1 a12219 1 EMUL_PKG_FMT d12221 1 a12223 1 EMUL_PLATFORMS d12225 1 a12227 1 EMUL_REQD d12229 1 a12231 1 ERROR_MSG d12233 1 a12235 1 EXIM_USER d12237 1 a12239 1 EXTRACTOR d12241 1 a12243 1 EXTRACT_CMD_DEFAULT d12245 1 a12247 1 EXTRACT_ELEMENTS d12249 1 a12251 1 EXTRACT_ONLY d12253 1 a12255 1 EXTRACT_SUFX d12257 1 a12259 1 FAIL d12261 1 a12263 1 FAIL_MSG d12265 1 a12267 1 FAM d12269 1 a12271 1 FAM_DEFAULT d12273 1 a12275 1 FCPATH d12277 1 a12279 1 FEATURE_LDFLAGS d12281 1 a12283 1 FETCH_AFTER_ARGS d12285 1 a12287 1 FETCH_CMD d12289 1 a12291 1 FETCH_PROXY d12293 1 a12295 1 FETCH_TIMEOUT d12297 1 a12299 1 FETCH_USING d12301 1 a12303 1 FILES_SUBST_SED a12304 3 FONTDIR a12311 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12387 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12425 1 a12425 1 HASKELL_COMPILER a12427 1 HASKELL_ENABLE_DYNAMIC_EXECUTABLE d12429 1 a12431 1 HASKELL_ENABLE_LIBRARY_PROFILING d12433 1 a12435 1 HASKELL_OPTIMIZATION_LEVEL a12436 2 a12437 5 HG_REPO HG_REPOSITORIES HG_TAG a12535 4 JAVA_APP_PATH JAVA_APP_TARGETS a12607 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12609 1 a12611 1 LOCALBASE d12613 1 a12615 1 LOCALPATCHES d12617 1 a12619 1 LOVE_GAME d12621 1 a12623 1 LP32PLATFORMS d12625 1 a12627 1 LUA_BUSTED_ARGS d12629 1 a12631 1 LUA_COMPILER d12633 1 a12635 1 LUA_EXAMPLESDIR d12637 1 a12639 1 LUA_INTERPRETER d12641 1 a12643 1 LUA_LINKER_MAGIC d12645 1 a12647 1 LUA_SELF_CONFLICT d12649 1 a12651 1 LUA_VERSIONS_ACCEPTED d12653 1 a12655 1 LUA_VERSION_DEFAULT d12657 1 a12659 1 Lua d12661 1 a12663 1 MAILAGENT_DOMAIN d12665 1 a12667 1 MAILAGENT_FQDN a12668 2 a12669 1 MAJOR_OS_VERSION a12755 1 MUST d12757 1 a12759 1 MYSQL_CHARSET d12761 1 a12763 1 MYSQL_EXTRA_CHARSET d12765 1 a12767 1 MYSQL_USER d12769 1 a12771 1 MYSQL_VERSIONS_ACCEPTED d12773 1 a12775 1 MYSQL_VERSION_DEFAULT d12777 1 a12779 1 NAGIOSDIR d12781 1 a12783 1 NAGIOS_USER d12785 1 a12787 1 NATIVE_APPEND_ELF d12789 1 a12791 1 NATIVE_MACHINE_PLATFORM d12793 1 a12795 1 NBPAX_PROGRAM_PREFIX d12797 1 a12799 1 NMH_EDITOR d12801 1 a12803 1 NMH_PAGER d12805 1 a12807 1 NODE_VERSIONS_INCOMPATIBLE d12809 1 a12811 1 NODE_VERSION_REQD d12813 1 a12815 1 NOTE d12817 1 a12819 1 NOT_PAX_ASLR_SAFE d12821 1 a12823 1 NO_BUILD d12825 1 a12827 1 NO_CONFIGURE d12829 1 a12831 1 NS_PREFERRED d12833 1 a12835 1 NULLMAILER_USER d12837 1 a12839 1 OASIS_BUILD_ARGS d12841 1 a12843 1 OBJMACHINE d12845 1 a12847 1 OCAML_FINDLIB_REGISTER d12849 1 a12851 1 OCAML_SITELIBDIR d12853 1 a12855 1 OCAML_USE_DUNE d12857 1 a12859 1 OCAML_USE_OASIS d12861 1 a12863 1 OCAML_USE_OPAM d12865 1 a12867 1 OCAML_USE_TOPKG d12869 1 a12871 1 ONLY_FOR_COMPILER d12873 1 a12875 1 OPENSSH_CHROOT d12877 1 a12879 1 OPENSSH_USER d12881 1 a12883 1 OPSYS_EMULDIR d12885 1 a12887 1 OS d12889 1 a12891 1 OSX d12893 1 a12895 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d12897 1 a12899 1 OTF_FONTS_DIR d12901 1 a12903 1 OVERRIDE_GEMSPEC a12904 3 OVERRIDE_ROCKSPEC a12951 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13343 4 RCD_DIR RCD_ORDER a13355 1 RCD_SUBR d13357 1 a13359 1 READLINE_DEFAULT d13361 1 a13363 1 REAL_ROOT_GROUP d13365 1 a13367 1 RECURSIVE_MAKE d13369 1 a13371 1 RELRO_SUPPORTED d13373 1 a13375 1 REPLACE_BASH d13377 1 a13379 1 REPLACE_KSH d13381 1 a13383 1 REPLACE_NODEJS d13385 1 a13387 1 REPLACE_PERL d13389 1 a13391 1 REPLACE_PHP d13393 1 a13395 1 REPLACE_QORE d13397 1 a13399 1 REPLACE_RUBY d13401 1 a13403 1 REPLACE_RUBY_PAT d13405 1 a13407 1 REPLACE_TEXLUA d13409 1 a13411 1 REQD_DIRS d13413 1 a13415 1 REQD_FILES d13417 1 a13419 1 REQD_FILES_PERMS d13421 1 a13423 1 RESOLV_LDFLAGS a13424 2 a13425 1 ROCKSPEC_NAME a13427 1 ROCKSPEC_SPECFILE d13429 1 a13431 1 ROOT_GROUP d13433 1 a13435 1 RPCGEN d13437 1 a13439 1 RPM2PKG_PLIST d13441 1 a13443 1 RPM2PKG_STAGE d13445 1 a13447 1 RPM2PKG_SUBPREFIX d13449 1 a13451 1 RPMIGNOREPATH d13453 1 a13455 1 RSSH_CVS_PATH d13457 1 a13459 1 RSSH_RSYNC_PATH d13461 1 a13463 1 RSSH_SFTP_SERVER_PATH d13465 1 a13467 1 RUBYGEM d13469 1 a13471 1 RUBYGEM_OPTIONS d13473 1 a13475 1 RUBY_ABI_VERSION d13477 1 a13479 1 RUBY_ARCHINC d13481 1 a13483 1 RUBY_BASE d13485 1 a13487 1 RUBY_BUILD_DOCUMENT d13489 1 a13491 1 RUBY_DOC d13493 1 a13495 1 RUBY_EG d13497 1 a13499 1 RUBY_EXTCONF d13501 1 a13503 1 RUBY_EXTCONF_DEBUG d13505 1 a13507 1 RUBY_GEM_ARCH d13509 1 a13511 1 RUBY_INC d13513 1 a13515 1 RUBY_LIB_BASE d13517 1 a13519 1 RUBY_NOVERSION d13521 1 a13523 1 RUBY_RAILS d13525 1 a13527 1 RUBY_RAILS60_VERSION d13529 1 a13531 1 RUBY_RAILS70_VERSION d13533 1 a13535 1 RUBY_RAILS_DEFAULT d13537 1 a13539 1 RUBY_RAILS_STRICT_DEP d13541 1 a13543 1 RUBY_SETUP d13545 1 a13547 1 RUBY_SHLIBALIAS d13549 1 a13551 1 RUBY_SIMPLE_INSTALL d13553 1 a13555 1 RUBY_SITELIB d13557 1 a13559 1 RUBY_SITERIDIR d13561 1 a13563 1 RUBY_SRCDIR d13565 1 a13567 1 RUBY_SUFFIX d13569 1 a13571 1 RUBY_USE_PTHREAD d13573 1 a13575 1 RUBY_VENDORLIB d13577 1 a13579 1 RUBY_VER d13581 1 a13583 1 RUBY_VERSIONS_ACCEPTED d13585 1 a13587 1 RUBY_VERSION_DEFAULT d13589 1 a13591 1 RUBY_VER_DIR d13593 1 a13595 1 RUN_LDCONFIG d13597 1 a13599 1 SCO a13600 2 a13601 1 SCRIPTS_ENV d13604 1 a13605 1 SCROLLKEEPER_REBUILDDB d13608 1 a13609 1 SDIST_PAWD d13612 1 a13613 1 SERIAL_DEVICES d13616 1 a13617 1 SETGID_GAMES_PERMS d13620 1 a13621 1 SH d13624 1 a13625 1 SHORTNAME d13712 2 a13713 6 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION a13715 1 SYSCONFBASE d13717 1 a13719 1 TERMCAP_TYPE d13721 1 a13723 1 TERMINFO_TYPE d13725 1 a13727 1 TEST_DEPENDS d13729 1 a13731 1 TEST_ENV d13733 1 a13735 1 TEST_MAKE_CMD d13737 1 a13739 1 TEST_TARGET d13741 1 a13743 1 TEXLIVE_REV d13745 1 a13747 1 TEXMFSITE d13749 1 a13751 1 TEX_HYPHEN_DAT d13753 1 a13755 1 TEX_TEXMF_DIRS d13757 1 a13759 1 TINYDYN_USER d13761 1 a13763 1 TO d13765 1 a13767 1 TOOLS_ALWAYS_WRAP d13769 1 a13771 1 TOOLS_BROKEN d13773 1 a13775 1 TOOLS_CMDLINE_SED d13777 1 d13793 1 a13793 1 TOOL_DEPENDS d13796 1 a13796 1 TTF_FONTDIR d13949 1 a13949 1 XXXX a13951 1 YES d13953 1 a13955 1 __stdc__ d13957 1 a13959 1 accept d13961 1 a13963 1 acquire-lock d13965 1 a13967 1 administrator d13969 1 a13971 1 alternatives d13973 1 a13975 1 asprintf d13977 1 a13979 1 autoconf d13981 1 a13983 1 autoreconf d13985 1 a13987 1 bash d13989 1 a13991 1 bin-install d13993 1 a13995 1 binpkg-list d13997 1 a13999 1 bootstrap-depends d14001 1 a14003 1 broken_on_platform d14005 1 a14007 1 bsd.prog.mk d14009 1 a14011 1 build-env d14013 1 a14015 1 buildlink-oss-soundcard-h d14017 1 a14019 1 c++ d14021 1 a14023 1 cce d14025 1 a14027 1 ceil d14029 1 a14031 1 changes-entry d14033 1 a14035 1 check d14037 1 a14039 1 check-files d14041 1 a14043 1 check-vulnerable d14045 1 a14047 1 checksum-phase d14049 1 a14051 1 clean-depends d14053 1 a14055 1 commit d14057 1 a14059 1 compact d14061 1 a14063 1 conf d14065 1 a14067 1 config.sub d14069 1 a14071 1 configure d14073 1 a14075 1 configure-help d14077 1 a14079 1 connect d14081 1 a14083 1 cputime d14085 1 a14087 1 csh a14088 3 cvs a14151 1 endif d14153 1 a14155 1 ensurepip d14157 1 a14159 1 errx d14161 1 a14163 1 exp d14165 1 a14167 1 fabs d14169 1 a14171 1 features d14173 1 a14175 1 fetch-list d14177 1 a14179 1 forbids d14181 1 a14183 1 format a14184 2 a14185 1 fossil a14219 1 git a14220 3 gitlab d14241 1 a14241 1 hg a14243 1 imake d14245 1 a14311 1 mercurial d14313 1 a14315 1 meta-package d14317 1 a14319 1 mit-krb5 d14321 1 a14323 1 mkl d14325 1 a14327 1 mprotect d14329 1 a14331 1 nb d14333 1 a14335 1 netlib d14337 1 a14339 1 node.js d14341 1 a14343 1 obstack d14345 1 a14347 1 occurs d14349 1 a14351 1 openblas d14353 1 a14355 1 options.mk d14357 1 a14359 1 override d14361 1 a14363 1 override-message-intltool d14365 1 a14367 1 parallel d14369 1 a14371 1 pax d14373 1 a14375 1 pbulk-index d14377 1 a14379 1 perl d14381 1 a14383 1 perms d14385 1 a14387 1 pkg-build-options d14389 1 a14391 1 pkg_build_options d14393 1 a14395 1 plist d14397 1 a14399 1 post-fetch d14401 1 a14403 1 pre-build-checks-hook d14405 1 a14407 1 pre-configure-checks-hook d14409 1 a14411 1 pre-fetch d14413 1 a14415 1 print-plist d14417 1 a14419 1 privileged-install-hook d14421 1 a14423 1 python d14425 1 d14428 1 a14428 1 readme-all d14484 5 a14489 1 show-distfiles d14492 1 a14493 1 show-subdir-var d14496 1 a14497 1 show-var d14500 1 a14501 1 snprintf d14504 1 a14505 1 ssp d14508 1 a14509 1 stage-install d14512 1 a14513 1 strict d14516 1 a14517 1 strndup d14520 1 a14521 1 strsep d14524 1 a14525 1 substitutions d14528 1 a14528 1 subversion a14535 1 svn d14537 1 a14539 1 test d14541 1 a14543 1 tex d14545 1 a14547 1 tmp d14549 1 a14551 1 tools d14553 1 a14555 1 type d14557 1 a14559 1 undefined d14561 1 a14563 1 unlimit d14565 1 a14567 1 unprivileged-install-hook d14569 1 a14571 1 update d14573 1 a14575 1 upload-distfiles d14577 1 a14579 1 user d14581 1 a14583 1 vasprintf d14585 1 a14587 1 vsnprintf d14589 1 a14591 1 warning d14593 1 a14595 1 warnx d14597 1 a14599 1 wattr_on d14601 1 a14603 1 wrapper d14605 1 @ 1.335 log @doc/pkgsrc.*: regen @ text @d163 1 a163 1

    10.12. Using 'sudo' with pkgsrc
    d940 1 a940 1
    10.12. Using 'sudo' with pkgsrc
    d2708 1 a2708 1
    10.12. Using 'sudo' with pkgsrc
    d2983 1 a2983 1 10.12. Using 'sudo' with pkgsrc d2988 3 a2990 1 use it, install sudo (either as binary package or from d12701 1 d12703 2 d12706 1 a12708 1 LUA_DOCDIR d12710 1 a12712 1 LUA_INCDIR d12714 1 a12716 1 LUA_LDIR d12718 1 a12720 1 LUA_PKGPREFIX d12722 1 a12724 1 LUA_USE_BUSTED d12726 1 a12728 1 LUA_VERSIONS_INCOMPATIBLE d12730 1 a12732 1 LUA_VERSION_REQD d12734 1 a12736 1 MACHINE_PLATFORM d12738 1 a12740 1 MAILAGENT_EMAIL d12742 1 a12744 1 MAILAGENT_ORGANIZATION d12746 1 a12748 1 MAJOR_OS_VERSION d12750 1 a12752 1 MAKE_DIRS d12754 1 a12756 1 MAKE_ENV d12758 1 a12760 1 MAKE_FLAGS d12762 1 a12764 1 MAKE_JOBS_SAFE d12766 1 a12768 1 MANCOMPRESSED_IF_MANZ d12770 1 a12772 1 MANZ d12774 1 a12776 1 MASTER_SITE_BACKUP d12778 1 a12780 1 MASTER_SITE_MOZILLA d12782 1 a12784 1 MASTER_SITE_PERL_CPAN d12786 1 a12788 1 MASTER_SORT_RANDOM d12790 1 a12792 1 MECAB_CHARSET d12794 1 a12796 1 MEDIATOMB_USER d12798 1 a12800 1 MIREDO_GROUP d12802 1 a12804 1 MISSING_FEATURES d12806 1 a12808 1 MKPIE_SUPPORTED d12810 1 a12812 1 MLDONKEY_HOME d12814 1 a12816 1 MONOTONE_GROUP d12818 1 a12820 1 MOTIFBASE d12822 1 a12824 1 MOTIF_TYPE_DEFAULT d12826 1 a12828 1 MSGFMT_STRIP_MSGCTXT d12830 1 a12832 1 MTOOLS_ENABLE_FLOPPYD d12834 1 a12836 1 MV d12838 1 a12840 1 MYSQL_DATADIR d12842 1 a12844 1 MYSQL_GROUP d12846 1 a12848 1 MYSQL_VERSION d12850 1 a12852 1 MYSQL_VERSIONS_ALL d12854 1 a12856 1 NAGIOSCMD_GROUP d12858 1 a12860 1 NAGIOS_GROUP d12862 1 a12864 1 NATIVE_APPEND_ABI d12866 1 a12868 1 NATIVE_EXEC_FMT d12870 1 a12872 1 NATIVE_OBJECT_FMT d12874 1 a12876 1 NETBSD_LOGIN_NAME d12878 1 a12880 1 NMH_MTA d12882 1 a12884 1 NODE_VERSIONS_ACCEPTED d12886 1 a12888 1 NODE_VERSION_DEFAULT d12890 1 a12892 1 NOLOGIN d12894 1 a12896 1 NOT_FOR_PLATFORM d12898 1 a12900 1 NOT_PAX_MPROTECT_SAFE d12902 1 a12904 1 NO_CHECKSUM d12906 1 a12908 1 NO_SKIP d12910 1 a12912 1 NULLMAILER_GROUP d12914 1 a12916 1 OASIS d12918 1 a12920 1 OBJHOSTNAME d12922 1 a12924 1 OCAML_FINDLIB_DIRS d12926 1 a12928 1 OCAML_FINDLIB_REGISTER_VERBOSE d12930 1 a12932 1 OCAML_TOPKG_DOCDIR d12934 1 a12936 1 OCAML_USE_FINDLIB d12938 1 a12940 1 OCAML_USE_OASIS_DYNRUN d12942 1 a12944 1 OCAML_USE_OPT_COMPILER d12946 1 a12948 1 OMF d12950 1 a12952 1 ONLY_FOR_PLATFORM d12954 1 a12956 1 OPENSSH_GROUP d12958 1 a12960 1 OPSYS d12962 1 a12964 1 OPSYS_VERSION d12966 1 a12968 1 OSS_TYPE d12970 1 a12972 1 OSX_TOLERATE_SDK_SKEW d12974 1 a12976 1 OS_HAVE_RCD d12978 1 a12980 1 OS_VERSION d12982 1 a12984 1 OVERRIDE_DIRDEPTH d12986 1 a12988 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12990 1 a12992 1 OWN_DIRS d12994 1 a12996 1 P4GROUP d12998 1 a13000 1 P4ROOT d13002 1 a13004 1 PACKAGES d13006 1 a13008 1 PAMBASE d13010 1 a13012 1 PAPERSIZE d13014 1 a13016 1 PATCHDIR d13018 1 a13020 1 PATCH_ARGS d13022 1 a13024 1 PATCH_DIST_ARGS d13026 1 a13028 1 PATCH_DIST_STRIP d13030 1 a13032 1 PATCH_STRIP d13034 1 a13036 1 PCCBASE d13038 1 a13040 1 PEAR_CHANNEL d13042 1 a13044 1 PEAR_CHANNEL_VERSION d13046 1 a13048 1 PEAR_LIB d13050 1 a13052 1 PERL5 d13054 1 a13056 1 PERL5_CONFIGURE_DIRS d13058 1 a13060 1 PERL5_LICENSE d13062 1 a13064 1 PERL5_PACKLIST d13066 1 a13068 1 PERL5_PERLBASE d13070 1 a13072 1 PERL5_USE_PACKLIST d13074 1 a13076 1 PFCTL d13078 1 a13080 1 PF_VERSION d13082 1 a13084 1 PGHOME d13086 1 a13088 1 PGSQL_TYPE d13090 1 a13092 1 PGSQL_VERSIONS_ACCEPTED d13094 1 a13096 1 PGUSER d13098 1 a13100 1 PHP d13102 1 a13104 1 PHPPKGSRCDIR d13106 1 a13108 1 PHP_CHECK_INSTALLED d13110 1 a13112 1 PHP_INITIAL_TEENY d13114 1 a13116 1 PHP_VERSION d13118 1 a13120 1 PHP_VERSIONS_INCOMPATIBLE d13122 1 a13124 1 PHP_VERSION_REQD d13126 1 a13128 1 PKGCONFIG_BASE d13130 1 a13132 1 PKGCONFIG_OVERRIDE d13134 1 a13136 1 PKGDIR d13138 1 a13140 1 PKGINFODIR d13142 1 a13144 1 PKGMANDIR d13146 1 a13148 1 PKGNAME_REQD d13150 1 a13152 1 PKGREVISION d13154 1 a13156 1 PKGSRC_CHANGES d13158 1 a13160 1 PKGSRC_KEEP_BIN_PKGS d13162 1 a13164 1 PKGSRC_MAKE_ENV d13166 1 a13168 1 PKGSRC_MKPIE d13170 1 a13172 1 PKGSRC_OVERRIDE_MKPIE d13174 1 a13176 1 PKGSRC_SETENV d13178 1 a13180 1 PKGSRC_TODO d13182 1 a13184 1 PKGSRC_USE_FORTIFY d13186 1 a13188 1 PKGSRC_USE_SSP d13190 1 a13192 1 PKGTASKS_DATAFILE d13194 1 a13196 1 PKGTOOLS_ENV d13198 1 a13200 1 PKG_APACHE d13202 1 a13204 1 PKG_APACHE_DEFAULT d13206 1 a13208 1 PKG_BUILD_OPTIONS d13210 1 a13212 1 PKG_CONFIG d13214 1 a13216 1 PKG_CREATE_USERGROUP d13218 1 a13220 1 PKG_DEBUG_LEVEL d13222 1 a13224 1 PKG_DESTDIR_SUPPORT d13226 1 a13228 1 PKG_DISABLED_OPTIONS d13230 1 a13232 1 PKG_FC d13234 1 a13236 1 PKG_GECOS d13238 1 a13240 1 PKG_GROUPS d13242 1 a13244 1 PKG_HOME d13246 1 a13248 1 PKG_JAVA_HOME d13250 1 a13252 1 PKG_JVMS_ACCEPTED d13254 1 a13256 1 PKG_LEGACY_OPTIONS d13258 1 a13260 1 PKG_OPTIONS d13262 1 a13264 1 PKG_OPTIONS_LEGACY_OPTS d13266 1 a13268 1 PKG_OPTIONS_NONEMPTY_SETS d13270 1 a13272 1 PKG_OPTIONS_REQUIRED_GROUPS d13274 1 a13276 1 PKG_PHP d13278 1 a13280 1 PKG_PHP_VERSION d13282 1 a13284 1 PKG_REFCOUNT_DBDIR d13286 1 a13288 1 PKG_RESUME_TRANSFERS d13290 1 a13292 1 PKG_SUGGESTED_OPTIONS d13294 1 a13296 1 PKG_SYSCONFBASE d13298 1 a13300 1 PKG_SYSCONFDIR d13302 1 a13304 1 PKG_SYSCONFSUBDIR d13306 1 a13308 1 PKG_TOOLS_BIN d13310 1 a13312 1 PKG_UPDATE_FONTS_DB d13314 1 a13316 1 PKG_USERS_VARS d13318 1 a13320 1 PLEASE d13322 1 a13324 1 PLIST_AWK d13326 1 a13328 1 PLIST_SRC d13330 1 a13332 1 PLIST_TYPE d13334 1 a13336 1 POPTOP_USE_MPPE d13338 1 a13340 1 POST_FETCH_HOOK d13342 1 a13344 1 PREFER_NATIVE d13346 1 a13348 1 PREFER_PKGSRC d13350 1 a13352 1 PREPEND_PATH d13354 1 a13356 1 PRIVILEGED_STAGES d13358 1 a13360 1 PTHREAD_AUTO_VARS d13362 1 a13364 1 PTHREAD_LDFLAGS d13366 1 a13368 1 PTHREAD_OPTS d13370 1 a13372 1 PVM_SSH d13374 1 a13376 1 PYTHON_FOR_BUILD_ONLY d13378 1 a13380 1 PYTHON_VERSIONED_DEPENDENCIES d13382 1 a13384 1 PYTHON_VERSIONS_INCOMPATIBLE d13386 1 a13388 1 PYTHON_VERSION_REQD d13390 1 a13392 1 QMAILDIR d13394 1 a13396 1 QMAIL_DAEMON_USER d13398 1 a13400 1 QMAIL_NOFILES_GROUP d13402 1 a13404 1 QMAIL_QMAIL_GROUP d13406 1 a13408 1 QMAIL_QUEUE_EXTRA d13410 1 a13412 1 QMAIL_REMOTE_USER d13414 1 a13416 1 QMAIL_SEND_USER d13418 1 a13420 1 QORE_MODULE_API d13422 1 a13424 1 QORE_USER_MODULE_DIR d13426 1 a13428 1 QPOPPER_FAC d13430 1 a13432 1 QPOPPER_USER d13434 1 a13436 1 RASMOL_DEPTH d13438 1 a13440 1 RCD_ORDER d13442 1 a13444 1 RCD_SCRIPTS_DIR d13446 1 a13448 1 RCD_SCRIPTS_MODE d13450 1 a13452 1 RCD_SCRIPT_SRC d13454 1 a13456 1 RDOC d13458 1 a13460 1 READLINE_TYPE d13462 1 a13464 1 REAL_ROOT_USER d13466 1 a13468 1 RELAY_CTRL_DIR d13470 1 a13472 1 REPLACE_AWK d13474 1 a13476 1 REPLACE_CSH d13478 1 a13480 1 REPLACE_LUA d13482 1 a13484 1 REPLACE_OCTAVE d13486 1 a13488 1 REPLACE_PERL6 d13490 1 a13492 1 REPLACE_PYTHON d13494 1 a13496 1 REPLACE_R d13498 1 a13500 1 REPLACE_RUBY_DIRS d13502 1 a13504 1 REPLACE_SH d13506 1 a13508 1 REPLACE_WISH d13510 1 a13512 1 REQD_DIRS_PERMS d13514 1 a13516 1 REQD_FILES_MODE d13518 1 a13520 1 RESOLV_AUTO_VARS d13522 1 a13524 1 RESOLV_LIBS d13526 1 a13528 1 ROCKSPEC_NAME d13530 1 a13532 1 ROOT_CMD d13534 1 a13536 1 ROOT_USER d13538 1 a13540 1 RPM d13542 1 a13544 1 RPM2PKG_PREFIX d13546 1 a13548 1 RPM2PKG_STRIP d13550 1 a13552 1 RPMFILES d13554 1 a13556 1 RPM_DB_PREFIX d13558 1 a13560 1 RSSH_RDIST_PATH d13562 1 a13564 1 RSSH_SCP_PATH d13566 1 a13568 1 RUBY d13570 1 a13572 1 RUBYGEM_NAME d13574 1 a13576 1 RUBYGEM_VERBOSE d13578 1 a13580 1 RUBY_ARCH d13582 1 a13584 1 RUBY_ARCHLIB d13586 1 a13588 1 RUBY_BASERIDIR d13590 1 a13592 1 RUBY_DLEXT d13594 1 a13596 1 RUBY_DYNAMIC_DIRS d13598 1 a13600 1 RUBY_ENCODING_ARG d13602 1 a13604 1 RUBY_EXTCONF_CHECK d13606 1 a13608 1 RUBY_EXTCONF_MAKEFILE d13610 1 a13612 1 RUBY_GEM_BASE d13614 1 a13616 1 RUBY_LIB d13618 1 a13620 1 RUBY_NAME d13622 1 a13624 1 RUBY_PKGPREFIX d13626 1 a13628 1 RUBY_RAILS52_VERSION d13630 1 a13632 1 RUBY_RAILS61_VERSION d13634 1 a13636 1 RUBY_RAILS_ACCEPTED d13638 1 a13640 1 RUBY_RAILS_REQD d13642 1 a13644 1 RUBY_RIDIR d13646 1 a13648 1 RUBY_SHLIB d13650 1 a13652 1 RUBY_SHLIBVER d13654 1 a13656 1 RUBY_SITEARCHLIB d13658 1 a13660 1 RUBY_SITELIB_BASE d13662 1 a13664 1 RUBY_SLEXT d13666 1 a13668 1 RUBY_STATICLIB d13670 1 a13672 1 RUBY_SYSRIDIR d13674 1 a13676 1 RUBY_VENDORARCHLIB d13678 1 a13680 1 RUBY_VENDORLIB_BASE d13682 1 a13684 1 RUBY_VERSION d13686 1 a13688 1 RUBY_VERSIONS_INCOMPATIBLE d13690 1 a13692 1 RUBY_VERSION_REQD d13694 1 a13696 1 RUN d13698 1 d13717 1 d13719 2 d13722 1 a13724 1 SETGID_GAMES_PERMS d13726 1 a13728 1 SH d13730 1 a13732 1 SHORTNAME d13734 1 a13736 1 SILC_CLIENT_WITH_PERL d13738 1 a13740 1 SKIP_DEPENDS d13742 1 a13744 1 SMF_MANIFEST d13746 1 a13748 1 SMF_METHOD_SHELL d13750 1 a13752 1 SMF_NAME d13754 1 a13756 1 SMF_SRCDIR d13758 1 a13760 1 SNIPROXY_USER d13762 1 a13764 1 SPECIAL_PERMS d13766 1 a13768 1 SSH_SUID d13770 1 a13772 1 SSYNC_PAWD d13774 1 a13776 1 STRIP d13778 1 a13780 1 STRIP_DEBUG d13782 1 a13784 1 STRIP_FILES_SKIP d13786 1 a13788 1 SUBDIR d13790 1 a13792 1 SUBST_CLASSES d13794 1 a13796 1 SUBST_FILTER_CMD d13798 1 a13800 1 SUBST_NOOP_OK d13802 1 a13804 1 SUBST_SHOW_DIFF d13806 1 a13808 1 SUBST_STAGE d13810 1 a13812 1 SUNWSPROBASE d13814 1 a13816 1 SU_CMD d13818 1 a13820 1 SVN_REPO d13822 1 a13824 1 SVN_REVISION d13826 1 a13828 1 TBL d13830 1 a13832 1 TERMINFO_DEFAULT d13834 1 a13836 1 TEST d13838 1 a13840 1 TEST_DIRS d13842 1 a13844 1 TEST_ENV_SHELL d13846 1 a13848 1 TEST_MAKE_FLAGS d13850 1 a13852 1 TEXLIVE_IGNORE_PATTERNS d13854 1 a13856 1 TEXLIVE_UNVERSIONED d13858 1 a13860 1 TEX_FORMATS d13862 1 a13864 1 TEX_HYPHEN_DEF d13866 1 a13868 1 THTTPD_LOG_FACILITY d13870 1 a13872 1 TLSWRAPPER_CHROOT d13874 1 a13876 1 TOOLS_ALIASES d13878 1 a13880 1 TOOLS_ARGS d13882 1 a13884 1 TOOLS_CMD d13886 1 a13888 1 TOOLS_CREATE d13890 1 a13892 1 TOOLS_FAIL d13894 1 a13896 1 TOOLS_LDCONFIG d13898 1 a13900 1 TOOLS_PATH d13902 1 a13904 1 TOOL_DEPENDS d13906 1 a13908 1 TTF_FONTS_DIR d13910 1 a13912 1 UAC_REQD_EXECS d13914 1 a13916 1 UCSPI_SSL_USER d13918 1 a13920 1 UNPRIVILEGED d13922 1 a13924 1 UNPRIVILEGED_GROUPS d13926 1 a13928 1 UNWRAP_FILES d13930 1 a13932 1 UPDATE_GEMSPEC d13934 1 a13936 1 URI d13938 1 a13940 1 USERPPP_GROUP d13942 1 a13944 1 USE_ABI_DEPENDS d13946 1 a13948 1 USE_BSD_MAKEFILE d13950 1 a13952 1 USE_CROSS_COMPILE d13954 1 a13956 1 USE_CWRAPPERS d13958 1 a13960 1 USE_FEATURES d13962 1 a13964 1 USE_GCC_RUNTIME d13966 1 a13968 1 USE_JAVA d13970 1 a13972 1 USE_LANGUAGES d13974 1 a13976 1 USE_NATIVE_GCC d13978 1 a13980 1 USE_PKGSRC_GCC d13982 1 a13984 1 USE_PKGTASKS d13986 1 a13988 1 USE_RUBY_EXTCONF d13990 1 a13992 1 USE_RUBY_SETUP d13994 1 a13996 1 USE_TOOLS d13998 1 a14000 1 UUCP_USER d14002 1 a14004 1 VARNAME d14006 1 a14008 1 WARNING_MSG d14010 1 a14012 1 WCALC_CGIPATH d14014 1 a14016 1 WCALC_HTMLPATH d14018 1 a14020 1 WRAPPER_CC d14022 1 a14024 1 WRKDIR d14026 1 a14028 1 WRKDIR_LOCKTYPE d14030 1 a14032 1 WRKOBJDIR d14034 1 a14036 1 X10_PORT d14038 1 a14040 1 X11BASE d14042 1 a14044 1 X11_TYPE d14046 1 a14048 1 X509_KEY d14050 1 a14052 1 XLOCK_DEFAULT_MODE d14054 1 a14056 1 XMKMF_FLAGS d14058 1 a14060 1 XXXX d14062 1 a14064 1 ZSH_STATIC d14066 1 a14068 1 _vargroups d14070 1 a14072 1 acquire-localbase-lock d14074 1 a14076 1 add d14078 1 a14080 1 alloca d14082 1 a14084 1 aslr d14086 1 a14088 1 atlas d14090 1 a14092 1 automake d14094 1 a14096 1 awk d14098 1 a14100 1 big-endian d14102 1 a14104 1 bind d14106 1 a14108 1 blas d14110 1 a14112 1 broken d14114 1 a14116 1 bsd d14118 1 a14120 1 build d14122 1 a14124 1 buildlink-directories d14126 1 a14128 1 c d14130 1 a14132 1 ccache d14134 1 a14136 1 cdefs d14138 1 a14140 1 changes d14142 1 a14144 1 changes-entry-noupdate d14146 1 a14148 1 check-clean d14150 1 a14152 1 check-files-clean d14154 1 a14156 1 checksum d14158 1 a14160 1 clean d14162 1 a14164 1 cleandir d14166 1 a14168 1 commit-changes-entry d14170 1 a14172 1 compiler d14174 1 a14176 1 config.guess d14178 1 a14180 1 configuration d14182 1 a14184 1 configure-env d14186 1 a14188 1 configure_args d14190 1 a14192 1 cos d14194 1 a14196 1 create-usergroup d14198 1 a14200 1 ctf d14202 1 a14204 1 debug d14206 1 a14208 1 declare d14210 1 a14212 1 depend d14214 1 a14216 1 depends d14218 1 a14220 1 depends-fetch d14222 1 a14224 1 describe d14226 1 a14228 1 disable d14230 1 a14232 1 distinfo d14234 1 a14236 1 dlopen d14238 1 a14240 1 do-clean d14242 1 a14244 1 do-configure-post-hook d14246 1 a14248 1 do-fetch d14250 1 a14252 1 emul d14254 1 a14256 1 emul-fetch d14258 1 a14260 1 emulator d14262 1 a14264 1 endian d14266 1 d14269 1 a14269 1 enomem @ 1.334 log @doc/pkgsrc.*: regen @ text @d11046 1 a11046 2 feature by default, at the "partial" level. However, it cannot yet be enforced globally in pkgsrc through cwrappers. d12483 1 d12485 2 d12488 1 a12490 1 HASKELL_ENABLE_SHARED_LIBRARY d12492 1 a12494 1 HAS_CONFIGURE d12496 1 a12498 1 HG_REPO d12500 1 a12502 1 HG_TAG d12504 1 a12506 1 HOST_PKGTOOLS_ARGS d12508 1 a12510 1 HOWL_GROUP d12512 1 a12514 1 ICCBASE d12516 1 a12518 1 ICON_THEMES d12520 1 a12522 1 IGNORE_CCACHE d12524 1 a12526 1 IGNORE_INTERACTIVE_FETCH d12528 1 a12530 1 IMAKEOPTS d12532 1 a12534 1 IMAKE_MANINSTALL d12536 1 a12538 1 IMDICTDIR d12540 1 a12542 1 INFO_DIR d12544 1 a12546 1 INFO_FILES_VERBOSE d12548 1 a12550 1 INIT_SYSTEM d12552 1 a12554 1 INN_GROUP d12556 1 a12558 1 INSTALLATION_DIRS d12560 1 a12562 1 INSTALL_ENV d12564 1 a12566 1 INSTALL_SRC d12568 1 a12570 1 INSTALL_UNSTRIPPED d12572 1 a12574 1 IRCD_HYBRID_IRC_USER d12576 1 a12578 1 IRCD_HYBRID_NICLEN d12580 1 a12582 1 IRCD_HYBRID_SYSLOG_FACILITY d12584 1 a12586 1 IRIX d12588 1 a12590 1 JABBERD_GROUP d12592 1 a12594 1 JABBERD_PIDDIR d12596 1 a12598 1 JABBERD_USER d12600 1 a12602 1 JAVA_APP_TARGETS d12604 1 a12606 1 JAVA_CLASSPATH d12608 1 a12610 1 JAVA_LD_LIBRARY_PATH d12612 1 a12614 1 JAVA_UNLIMIT d12616 1 a12618 1 JPEG_ACCEPTED d12620 1 a12622 1 KERBEROS d12624 1 a12626 1 KJS_USE_PCRE d12628 1 a12630 1 KNEWS_DOMAIN_NAME d12632 1 a12634 1 KRB5_DEFAULT d12636 1 a12638 1 LAPACKE_LIBS d12640 1 a12642 1 LATEX2HTML_ICONPATH d12644 1 a12646 1 LDCONFIG_REMOVE_CMD d12648 1 a12650 1 LEAFNODE_DATA_DIR d12652 1 a12654 1 LEAFNODE_USER d12656 1 a12658 1 LIBDVDCSS_MASTER_SITES d12660 1 a12662 1 LIBTOOL d12664 1 a12666 1 LIBTOOL_M4_OVERRIDE d12668 1 a12670 1 LICENSE d12672 1 a12674 1 LINK_RPATH_FLAG d12676 1 a12678 1 LINUX_BASE_PREFERRED d12680 1 a12682 1 LINUX_LOCALES d12684 1 a12686 1 LOCALBASE_LOCKTYPE d12688 1 a12690 1 LOVE_DATA d12692 1 a12694 1 LOVE_VERSION d12696 1 a12698 1 LP64PLATFORMS d12700 1 a12702 1 LUA_COMPILER d12704 1 a12706 1 LUA_EXAMPLESDIR d12708 1 a12710 1 LUA_INTERPRETER d12712 1 a12714 1 LUA_LINKER_MAGIC d12716 1 d12719 1 a12719 1 LUA_SELF_CONFLICT d12932 1 a12932 1 OCAML_USE_JBUILDER a12934 1 OCAML_USE_OASIS d12936 1 a12938 1 OCAML_USE_OPAM d12940 1 a12942 1 OCAML_USE_TOPKG d12944 1 a12946 1 ONLY_FOR_COMPILER d12948 1 a12950 1 OPENSSH_CHROOT d12952 1 a12954 1 OPENSSH_USER d12956 1 a12958 1 OPSYS_EMULDIR d12960 1 a12962 1 OS d12964 1 a12966 1 OSX d12968 1 a12970 1 OS_HAVE_ALSA d12972 1 a12974 1 OS_VARIANT d12976 1 a12978 1 OTF_FONTS_DIR d12980 1 a12982 1 OVERRIDE_GEMSPEC d12984 1 a12986 1 OVERRIDE_ROCKSPEC d12988 1 a12990 1 OWN_DIRS_PERMS d12992 1 a12994 1 P4PORT d12996 1 a12998 1 P4USER d13000 1 a13002 1 PALMOS_DEFAULT_SDK d13004 1 a13006 1 PAM_DEFAULT d13008 1 a13010 1 PASSIVE_FETCH d13012 1 a13014 1 PATCHFILES d13016 1 a13018 1 PATCH_DEBUG d13020 1 a13022 1 PATCH_DIST_CAT d13024 1 a13026 1 PATCH_FUZZ_FACTOR d13028 1 a13030 1 PATH d13032 1 a13034 1 PEAR d13036 1 a13038 1 PEAR_CHANNEL_ALIAS d13040 1 a13042 1 PEAR_CMD d13044 1 a13046 1 PEAR_PACKAGE_XML d13048 1 a13050 1 PERL5_CONFIGURE d13052 1 a13054 1 PERL5_LDFLAGS d13056 1 a13058 1 PERL5_MODULE_TYPE d13060 1 a13062 1 PERL5_PACKLIST_DIR d13064 1 a13066 1 PERL5_SITEBASE d13068 1 a13070 1 PERL5_VENDORBASE d13072 1 a13074 1 PFVAR_H d13076 1 a13078 1 PGGROUP d13080 1 a13082 1 PGPKGSRCDIR d13084 1 a13086 1 PGSQL_VERSION d13088 1 a13090 1 PGSQL_VERSION_DEFAULT d13092 1 a13094 1 PG_LIB_EXT d13096 1 a13098 1 PHPCOMMON_MK d13100 1 a13102 1 PHP_BASE_VERS d13104 1 a13106 1 PHP_EXTENSION_DIR d13108 1 a13110 1 PHP_PKG_PREFIX d13112 1 a13114 1 PHP_VERSIONS_ACCEPTED d13116 1 a13118 1 PHP_VERSION_DEFAULT d13120 1 a13122 1 PILRC_USE_GTK d13124 1 a13126 1 PKGCONFIG_FILE d13128 1 a13130 1 PKGCONFIG_OVERRIDE_STAGE d13132 1 a13134 1 PKGGNUDIR d13136 1 a13138 1 PKGLOCALEDIR d13140 1 a13142 1 PKGNAME d13144 1 a13146 1 PKGPATH d13148 1 a13150 1 PKGSRC_BLAS_TYPES d13152 1 a13154 1 PKGSRC_COMPILER d13156 1 a13158 1 PKGSRC_LOCKTYPE d13160 1 a13162 1 PKGSRC_MESSAGE_RECIPIENTS d13164 1 a13166 1 PKGSRC_MKREPRO d13168 1 a13170 1 PKGSRC_RUN_TEST d13172 1 a13174 1 PKGSRC_SLEEPSECS d13176 1 a13178 1 PKGSRC_USE_CTF d13180 1 a13182 1 PKGSRC_USE_RELRO d13184 1 a13186 1 PKGSRC_USE_STACK_CHECK d13188 1 a13190 1 PKGTOOLS_ARGS d13192 1 a13194 1 PKG_ALTERNATIVES d13196 1 a13198 1 PKG_APACHE_ACCEPTED d13200 1 a13202 1 PKG_BEST_EXISTS d13204 1 a13206 1 PKG_COMPRESSION d13208 1 a13210 1 PKG_CONFIG_PERMS d13212 1 a13214 1 PKG_DB_TMPDIR d13216 1 a13218 1 PKG_DEFAULT_OPTIONS d13220 1 a13222 1 PKG_DEVELOPER d13224 1 a13226 1 PKG_FATAL_ERRORS d13228 1 a13230 1 PKG_FILELIST_CMD d13232 1 a13234 1 PKG_GID d13236 1 a13238 1 PKG_GROUPS_VARS d13240 1 a13242 1 PKG_INIT_SCRIPTS d13244 1 a13246 1 PKG_JVM d13248 1 a13250 1 PKG_JVM_DEFAULT d13252 1 a13254 1 PKG_LIBTOOL d13256 1 a13258 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13260 1 a13262 1 PKG_OPTIONS_LEGACY_VARS d13264 1 a13266 1 PKG_OPTIONS_OPTIONAL_GROUPS d13268 1 a13270 1 PKG_OPTIONS_VAR d13272 1 a13274 1 PKG_PHP_MAJOR_VERS d13276 1 a13278 1 PKG_RCD_SCRIPTS d13280 1 a13282 1 PKG_REGISTER_SHELLS d13284 1 a13286 1 PKG_SHELL d13288 1 a13290 1 PKG_SUPPORTED_OPTIONS d13292 1 a13294 1 PKG_SYSCONFBASEDIR d13296 1 a13298 1 PKG_SYSCONFDIR_PERMS d13300 1 a13302 1 PKG_SYSCONFVAR d13304 1 a13306 1 PKG_UID d13308 1 a13310 1 PKG_USERS d13312 1 a13314 1 PKG_VERBOSE d13316 1 a13318 1 PLIST d13320 1 a13322 1 PLIST_AWK_ENV d13324 1 a13326 1 PLIST_SUBST d13328 1 a13330 1 PLIST_VARS d13332 1 a13334 1 POSSIBLE_GFORTRAN_VERSION d13336 1 a13338 1 PREFER d13340 1 a13342 1 PREFER_NATIVE_PTHREADS d13344 1 a13346 1 PREFIX d13348 1 a13350 1 PRE_ROOT_CMD d13352 1 a13354 1 PS d13356 1 a13358 1 PTHREAD_CFLAGS d13360 1 a13362 1 PTHREAD_LIBS d13364 1 a13366 1 PTHREAD_TYPE d13368 1 a13370 1 PYPKGPREFIX d13372 1 a13374 1 PYTHON_SELF_CONFLICT d13376 1 a13378 1 PYTHON_VERSIONS_ACCEPTED d13380 1 a13382 1 PYTHON_VERSION_DEFAULT d13384 1 a13386 1 PYVERSSUFFIX d13388 1 a13390 1 QMAIL_ALIAS_USER d13392 1 a13394 1 QMAIL_LOG_USER d13396 1 a13398 1 QMAIL_PASSWD_USER d13400 1 a13402 1 QMAIL_QUEUE_DIR d13404 1 a13406 1 QMAIL_QUEUE_USER d13408 1 a13410 1 QMAIL_ROOT_USER d13412 1 a13414 1 QORE_LATEST_MODULE_API d13416 1 a13418 1 QORE_MODULE_DIR d13420 1 a13422 1 QORE_VERSION d13424 1 a13426 1 QPOPPER_SPOOL_DIR d13428 1 a13430 1 RAKE_NAME d13432 1 a13434 1 RCD_DIR d13436 1 a13438 1 RCD_SCRIPTS d13440 1 a13442 1 RCD_SCRIPTS_EXAMPLEDIR d13444 1 a13446 1 RCD_SCRIPTS_SHELL d13448 1 a13450 1 RCD_SUBR d13452 1 a13454 1 READLINE_DEFAULT d13456 1 a13458 1 REAL_ROOT_GROUP d13460 1 a13462 1 RECURSIVE_MAKE d13464 1 a13466 1 RELRO_SUPPORTED d13468 1 a13470 1 REPLACE_BASH d13472 1 a13474 1 REPLACE_KSH d13476 1 a13478 1 REPLACE_NODEJS d13480 1 a13482 1 REPLACE_PERL d13484 1 a13486 1 REPLACE_PHP d13488 1 a13490 1 REPLACE_QORE d13492 1 a13494 1 REPLACE_RUBY d13496 1 a13498 1 REPLACE_RUBY_PAT d13500 1 a13502 1 REPLACE_TEXLUA d13504 1 a13506 1 REQD_DIRS d13508 1 a13510 1 REQD_FILES d13512 1 a13514 1 REQD_FILES_PERMS d13516 1 a13518 1 RESOLV_LDFLAGS d13520 1 a13522 1 RM d13524 1 a13526 1 ROCKSPEC_SPECFILE d13528 1 a13530 1 ROOT_GROUP d13532 1 a13534 1 RPCGEN d13536 1 a13538 1 RPM2PKG_PLIST d13540 1 a13542 1 RPM2PKG_STAGE d13544 1 a13546 1 RPM2PKG_SUBPREFIX d13548 1 a13550 1 RPMIGNOREPATH d13552 1 a13554 1 RSSH_CVS_PATH d13556 1 a13558 1 RSSH_RSYNC_PATH d13560 1 a13562 1 RSSH_SFTP_SERVER_PATH d13564 1 a13566 1 RUBYGEM d13568 1 a13570 1 RUBYGEM_OPTIONS d13572 1 a13574 1 RUBY_ABI_VERSION d13576 1 a13578 1 RUBY_ARCHINC d13580 1 a13582 1 RUBY_BASE d13584 1 a13586 1 RUBY_BUILD_DOCUMENT d13588 1 a13590 1 RUBY_DOC d13592 1 a13594 1 RUBY_EG d13596 1 a13598 1 RUBY_EXTCONF d13600 1 a13602 1 RUBY_EXTCONF_DEBUG d13604 1 a13606 1 RUBY_GEM_ARCH d13608 1 a13610 1 RUBY_INC d13612 1 a13614 1 RUBY_LIB_BASE d13616 1 a13618 1 RUBY_NOVERSION d13620 1 a13622 1 RUBY_RAILS d13624 1 a13626 1 RUBY_RAILS60_VERSION d13628 1 a13630 1 RUBY_RAILS70_VERSION d13632 1 a13634 1 RUBY_RAILS_DEFAULT d13636 1 a13638 1 RUBY_RAILS_STRICT_DEP d13640 1 a13642 1 RUBY_SETUP d13644 1 a13646 1 RUBY_SHLIBALIAS d13648 1 a13650 1 RUBY_SIMPLE_INSTALL d13652 1 a13654 1 RUBY_SITELIB d13656 1 a13658 1 RUBY_SITERIDIR d13660 1 a13662 1 RUBY_SRCDIR d13664 1 a13666 1 RUBY_SUFFIX d13668 1 a13670 1 RUBY_USE_PTHREAD d13672 1 a13674 1 RUBY_VENDORLIB d13676 1 a13678 1 RUBY_VER d13680 1 a13682 1 RUBY_VERSIONS_ACCEPTED d13684 1 a13686 1 RUBY_VERSION_DEFAULT d13688 1 a13690 1 RUBY_VER_DIR d13692 1 a13694 1 RUN_LDCONFIG d13696 1 a13698 1 SCREWS_GROUP d13700 1 a13702 1 SCRIPTS_ENV d13704 1 a13706 1 SCROLLKEEPER_REBUILDDB d13708 1 a13710 1 SDIST_PAWD d13712 1 a13714 1 SETGIDGAME d13716 1 a13718 1 SETUID_ROOT_PERMS d13720 1 a13722 1 SHLIB d13724 1 a13726 1 SIGN_PACKAGES d13728 1 a13730 1 SITE_SPECIFIC_PKGS d13732 1 a13734 1 SMF_INSTANCES d13736 1 a13738 1 SMF_METHODS d13740 1 a13742 1 SMF_METHOD_SRC d13744 1 a13746 1 SMF_PREFIX d13748 1 a13750 1 SNIPROXY_GROUP d13752 1 a13754 1 SOURCE_BUFFSIZE d13756 1 a13758 1 SPECIFIC_PKGS d13760 1 a13762 1 SSP_SUPPORTED d13764 1 a13766 1 STEP_MSG d13768 1 a13770 1 STRIP_DBG d13772 1 a13774 1 STRIP_DEBUG_SUPPORTED d13776 1 a13778 1 SU d13780 1 a13782 1 SUBST d13784 1 a13786 1 SUBST_FILES d13788 1 a13790 1 SUBST_MESSAGE d13792 1 a13794 1 SUBST_SED d13796 1 a13798 1 SUBST_SKIP_TEXT_CHECK d13800 1 a13802 1 SUBST_VARS d13804 1 a13806 1 SUSE_PREFER d13808 1 a13810 1 SVN_EXTRACTDIR d13812 1 a13814 1 SVN_REPOSITORIES d13816 1 a13818 1 SYSCONFBASE d13820 1 a13822 1 TERMCAP_TYPE d13824 1 a13826 1 TERMINFO_TYPE d13828 1 a13830 1 TEST_DEPENDS d13832 1 a13834 1 TEST_ENV d13836 1 a13838 1 TEST_MAKE_CMD d13840 1 a13842 1 TEST_TARGET d13844 1 a13846 1 TEXLIVE_REV d13848 1 a13850 1 TEXMFSITE d13852 1 a13854 1 TEX_HYPHEN_DAT d13856 1 a13858 1 TEX_TEXMF_DIRS d13860 1 a13862 1 TINYDYN_USER d13864 1 a13866 1 TO d13868 1 a13870 1 TOOLS_ALWAYS_WRAP d13872 1 a13874 1 TOOLS_BROKEN d13876 1 a13878 1 TOOLS_CMDLINE_SED d13880 1 a13882 1 TOOLS_DIR d13884 1 a13886 1 TOOLS_GNU_MISSING d13888 1 a13890 1 TOOLS_NOOP d13892 1 a13894 1 TOOLS_SCRIPT d13896 1 a13898 1 TTF_FONTDIR d13900 1 a13902 1 TYPE d13904 1 a13906 1 UCSPI_SSL_GROUP d13908 1 a13910 1 UNLIMIT_RESOURCES d13912 1 a13914 1 UNPRIVILEGED_GROUP d13916 1 a13918 1 UNPRIVILEGED_USER d13920 1 a13922 1 UNWRAP_PATTERNS d13924 1 a13926 1 UPDATE_TARGET d13928 1 a13930 1 USERGROUP_PHASE d13932 1 a13934 1 USER_SPECIFIC_PKGS d13936 1 a13938 1 USE_APR d13940 1 a13942 1 USE_BUILTIN d13944 1 a13946 1 USE_CURSES d13948 1 a13950 1 USE_DB185 d13952 1 a13954 1 USE_GAMESGROUP d13956 1 a13958 1 USE_IMAKE d13960 1 a13962 1 USE_JAVA2 d13964 1 a13966 1 USE_LIBTOOL d13968 1 a13970 1 USE_NETBSD_REPO d13972 1 a13974 1 USE_PKGSRC_GCC_RUNTIME d13976 1 a13978 1 USE_PKG_ADMIN_DIGEST d13980 1 a13982 1 USE_RUBY_INSTALL d13984 1 a13986 1 USE_RUBY_SETUP_PKG d13988 1 a13990 1 UUCP_GROUP d13992 1 a13994 1 VARBASE d13996 1 a13998 1 VIM_EXTRA_OPTS d14000 1 a14002 1 WCALC_CGIDIR d14004 1 a14006 1 WCALC_HTMLDIR d14008 1 a14010 1 WDM_MANAGERS d14012 1 a14014 1 WRAPPER_REORDER_CMDS d14016 1 a14018 1 WRKDIR_BASENAME d14020 1 a14022 1 WRKLOG d14024 1 a14026 1 WRKSRC d14028 1 a14030 1 X11 d14032 1 a14034 1 X11_PKGSRCDIR d14036 1 a14038 1 X509_CERTIFICATE d14040 1 a14042 1 XAW_TYPE d14044 1 a14046 1 XMKMF d14048 1 a14050 1 XXX d14052 1 a14054 1 YES d14056 1 a14058 1 __stdc__ d14060 1 a14062 1 accept d14064 1 a14066 1 acquire-lock d14068 1 a14070 1 administrator d14072 1 a14074 1 alternatives d14076 1 a14078 1 asprintf d14080 1 a14082 1 autoconf d14084 1 a14086 1 autoreconf d14088 1 a14090 1 bash d14092 1 a14094 1 bin-install d14096 1 a14098 1 binpkg-list d14100 1 a14102 1 bootstrap-depends d14104 1 a14106 1 broken_on_platform d14108 1 a14110 1 bsd.prog.mk d14112 1 a14114 1 build-env d14116 1 a14118 1 buildlink-oss-soundcard-h d14120 1 a14122 1 c++ d14124 1 a14126 1 cce d14128 1 a14130 1 ceil d14132 1 a14134 1 changes-entry d14136 1 a14138 1 check d14140 1 a14142 1 check-files d14144 1 a14146 1 check-vulnerable d14148 1 a14150 1 checksum-phase d14152 1 a14154 1 clean-depends d14156 1 a14158 1 commit d14160 1 a14162 1 compact d14164 1 a14166 1 conf d14168 1 a14170 1 config.sub d14172 1 a14174 1 configure d14176 1 a14178 1 configure-help d14180 1 a14182 1 connect d14184 1 a14186 1 cputime d14188 1 a14190 1 csh d14192 1 a14194 1 cvs d14196 1 a14198 1 declaration a14199 2 a14200 1 depend d14203 1 a14204 1 depends d14207 1 a14208 1 depends-fetch d14211 1 a14212 1 describe d14215 1 a14216 1 disable d14219 1 a14220 1 distinfo d14223 1 a14224 1 dlopen d14227 1 a14228 1 do-clean d14231 1 a14232 1 do-configure-post-hook d14235 1 a14236 1 do-fetch d14239 1 a14240 1 emul d14243 1 a14244 1 emul-fetch d14247 1 a14248 1 emulator d14251 1 a14252 1 endian d14255 1 a14256 1 enomem d14259 1 a14260 1 errx d14263 1 a14264 1 exp d14267 1 a14268 1 fabs d14271 1 a14272 1 features d14275 1 a14276 1 fetch-list d14279 1 a14280 1 forbids d14283 1 a14284 1 format d14287 1 a14288 1 fortify_source d14291 1 a14292 1 friend d14295 1 a14296 1 fts_close d14299 1 a14300 1 fts_read d14303 1 a14304 1 gcc d14307 1 a14308 1 gethostbyname d14311 1 a14312 1 getopt_long d14315 1 a14316 1 getservbyname d14319 1 a14320 1 getservent d14323 1 a14324 1 git d14327 1 a14328 1 gitlab d14331 1 a14332 1 gnu d14335 1 a14336 1 go d14339 1 a14340 1 golang d14343 1 a14344 1 hashbang d14347 1 a14348 1 help d14351 1 a14352 1 imake d14355 1 a14356 1 inet_aton d14359 1 a14360 1 interpreter d14363 1 a14364 1 ip4 d14367 1 a14368 1 ipv4 d14371 1 a14372 1 iso d14375 1 a14376 1 krb d14379 1 a14380 1 ksh d14383 1 a14384 1 latex d14387 1 a14388 1 libintl_gettext d14391 1 a14392 1 libnbcompat d14395 1 a14396 1 libtool d14399 1 a14400 1 license d14403 1 a14404 1 little-endian d14407 1 a14408 1 locking d14411 1 a14412 1 lvalue d14415 1 a14416 1 makesum d14419 1 a14420 1 mercurial d14423 1 a14424 1 meta-package d14427 1 a14428 1 mit-krb5 d14431 1 a14432 1 mkl d14435 1 a14436 1 mprotect d14439 1 a14440 1 nb d14443 1 a14444 1 netlib d14447 1 a14448 1 node.js d14451 1 a14452 1 obstack d14455 1 a14456 1 occurs d14459 1 a14460 1 openblas d14463 1 a14464 1 options.mk d14467 1 a14468 1 override d14471 1 a14472 1 override-message-intltool d14475 1 a14476 1 parallel d14479 1 a14480 1 pax d14483 1 a14484 1 pbulk-index d14487 1 a14488 1 perl d14491 1 a14492 1 perms d14495 1 a14496 1 pkg-build-options d14499 1 a14500 1 pkg_build_options d14503 1 a14504 1 plist d14507 1 a14508 1 post-fetch d14511 1 a14512 1 pre-build-checks-hook d14515 1 a14516 1 pre-configure-checks-hook d14519 1 a14520 1 pre-fetch d14523 1 a14524 1 print-plist d14527 1 a14528 1 privileged-install-hook d14531 1 a14532 1 python d14535 1 a14536 1 readme-all d14539 1 a14540 1 recvfrom d14543 1 a14544 1 release-localbase-lock d14547 1 a14548 1 relro d14551 1 a14552 1 reorder d14555 1 a14556 1 replace_interpreter d14559 1 a14560 1 resolv d14563 1 a14564 1 ruby d14567 1 a14568 1 sendfile d14571 1 a14572 1 setenv d14575 1 a14576 1 setprogname d14579 1 a14580 1 sh d14583 1 a14584 1 show d14587 1 a14588 1 show-build-defs d14591 1 a14592 1 show-deps d14595 1 a14596 1 show-downlevel d14599 1 a14600 1 show-tools d14603 1 a14604 1 show-vars d14607 1 a14608 1 socket d14611 1 a14612 1 st_mode d14615 1 a14616 1 strcasestr d14619 1 a14620 1 strip d14623 1 a14624 1 strnlen d14627 1 a14628 1 subst d14631 1 a14632 1 subversion d14635 1 a14636 1 sunpro d14639 1 a14640 1 svn d14643 1 a14644 1 test d14647 1 a14648 1 tex d14651 1 a14652 1 tmp d14655 1 a14656 1 tools d14659 1 a14660 1 type d14663 1 a14664 1 undefined d14667 1 a14668 1 unlimit d14671 1 a14672 1 unprivileged-install-hook d14675 1 a14676 1 update d14679 1 a14680 1 upload-distfiles d14683 1 a14684 1 user d14687 1 a14688 1 vasprintf d14691 1 a14692 1 vsnprintf d14695 1 a14696 1 warning d14699 1 a14700 1 warnx d14703 1 a14704 1 wattr_on d14707 1 a14708 1 wrapper d14711 1 a14712 1   @ 1.333 log @doc/pkgsrc.*: regen @ text @d224 3 a226 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d3191 3 a3193 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d5067 3 a5069 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d5093 3 a5095 5 your own (maybe called local). In that category directory, create another directory for your package and change into it:

    $ mkdir category/package
    $ cd category/package
    d5098 5 a5102 7

    Run the program url2pkg, which will ask you for a URL. Enter the URL of the distribution file (in most cases a .tar.gz file) and watch how the basic ingredients of your package are created automatically. The distribution file is extracted automatically to fill in some details in the Makefile that would otherwise have to be done manually:

    d5116 1 a5116 1

    If you just need binaries from a package, add a d5126 1 a5126 2 packages, i.e. packages for the architecture where the package is built; d5128 5 a5132 4 packages, i.e. packages for the architecture for which the package is built. There is also TEST_DEPENDS, which is used to specify a dependency used only for testing the resulting package built, using the upstream project's included test suite. d5158 2 a5159 2 files and other system information has been saved in the working directory, which may become wrong after you edited the d5164 3 a5166 2

    If the extracted files from the package need to be fixed, run multiple rounds of these commands:

    $ make
    d5169 2
    a5170 2
    $ make mps
    $ make clean
    a5188 2
  • Run bmake package to create a binary package from the set of installed files.

  • d5192 2 a5193 1
  • Run pkglint to see if there's anything left to do.

  • d5201 1 a5201 7 14.1.1. Perl modules

    Simple Perl modules are handled automatically by url2pkg, including dependencies.

    14.1.2. Python modules and programs

    d5256 1 a5256 1 14.1.3. R packages
    d5271 1 a5271 1 14.1.4. TeXlive packages a11024 4

    B.1.2. Not enabled by default

    d11027 1 a11027 21 B.1.2.1. PKGSRC_MKREPRO

    With this option, pkgsrc will try to build packages reproducibly. This allows packages built from the same tree and with the same options, to produce identical results bit by bit. This option should be combined with ASLR and PKGSRC_MKPIE to avoid predictable address offsets for attackers attempting to exploit security vulnerabilities.

    More details can be found here:

    More work likely needs to be done before pkgsrc is fully reproducible.

    B.1.2.2. PKGSRC_USE_RELRO

    d11035 1 a11035 1 partial: the ELF sections are reordered so that internal data sections d11056 24 d11082 1 a11082 1 B.1.2.3. PKGSRC_USE_STACK_CHECK
    @ 1.332 log @doc/pkgsrc.*: regen @ text @d224 4 a227 3
    14.1.1. Python modules and programs
    14.1.2. R packages
    14.1.3. TeXlive packages
    d3192 4 a3195 3
    14.1.1. Python modules and programs
    14.1.2. R packages
    14.1.3. TeXlive packages
    d5069 4 a5072 3
    14.1.1. Python modules and programs
    14.1.2. R packages
    14.1.3. TeXlive packages
    d5096 5 a5100 3 your own (maybe called local). Change into that category directory:

    $ cd category
    d5103 7 a5109 5

    Run the program url2pkg, passing as argument the URL of the distribution file (in most cases a .tar.gz file). This will download the distribution file and create the necessary files of the package, based on what's in the distribution file:

    d5123 1 a5123 1

    If you just need binaries from a dependent package, add a d5133 2 a5134 1 packages, i.e. packages for the platform where the package is built; d5136 4 a5139 5 packages, i.e. packages for the platform for which the package is built. There is also TEST_DEPENDS, which specifies a dependency used only for testing the resulting package built, using the upstream project's included test suite, on the native platform. d5165 2 a5166 2 files and other system information have been saved in the working directory, which may have become outdated after you edited the d5171 2 a5172 3

    If the extracted files from the package need to be fixed, run multiple rounds of these commands:

    $ bmake
    d5175 2
    a5176 2
    $ bmake mps
    $ bmake clean
    d5195 2 d5200 1 a5200 2
  • Run pkglint to see if there's anything left to do.

  • d5208 7 a5214 1 14.1.1. Python modules and programs d5269 1 a5269 1 14.1.2. R packages d5284 1 a5284 1 14.1.3. TeXlive packages d9734 5 a9738 1

    First, check that your package is complete, compiles and d9740 3 a9742 3 document. Next, generate an uuencoded gzipped tar(1) archive that contains all files that make up the package. Finally, send this package to the pkgsrc bug tracking system, d9755 1 a9755 9 variable or DESCR file are OK). The uuencoded package data should go into the fix field.

    If you want to submit several packages, please send a separate PR for each one, it's easier for us to track things that way.

    Alternatively, you can also import new packages into pkgsrc-wip (pkgsrc work-in-progress); see the homepage at https://pkgsrc.org/wip/ for details.

    d11077 2 a11078 2 when starting the program (with a slight performance impact), allowing the entire GOT to be read-only. d12221 4 a12344 8 FLUXBOX_USE_GNOME FLUXBOX_USE_KDE FLUXBOX_USE_XFT FLUXBOX_USE_XINERAMA d12610 1 a12610 1 JAKARTA_HOME a12612 1 JAVA_APP_PATH d12614 1 a12616 1 JAVA_BINPREFIX d12618 1 a12620 1 JAVA_HOME d12622 1 a12624 1 JAVA_NAME d12626 1 a12628 1 JAVA_WRAPPERS d12630 1 a12632 1 JPEG_DEFAULT d12634 1 a12636 1 KERMIT_SUID_UUCP d12638 1 a12640 1 KNEWS_DOMAIN_FILE d12642 1 a12644 1 KRB5_ACCEPTED d12646 1 a12648 1 LANGUAGES d12650 1 a12652 1 LAPACK_LIBS d12654 1 a12656 1 LDCONFIG_ADD_CMD d12658 1 a12660 1 LDD d12662 1 a12664 1 LEAFNODE_GROUP d12666 1 a12668 1 LIBDVDCSS_HOMEPAGE d12670 1 a12672 1 LIBRSVG_TYPE d12674 1 a12676 1 LIBTOOLIZE_PLIST d12678 1 a12680 1 LIBUSB_TYPE d12682 1 a12684 1 LINKER_RPATH_FLAG d12686 1 a12688 1 LINUX_BASE_NODEPS d12690 1 a12692 1 LINUX_BASE_REQUIRED d12694 1 a12696 1 LOCALBASE d12698 1 a12700 1 LOCALPATCHES d12702 1 a12704 1 LOVE_GAME d12706 1 a12708 1 LP32PLATFORMS d12710 29 d12889 8 d13425 9 d13435 2 d13438 1 a13440 1 QPOPPER_USER d13442 1 a13444 1 RASMOL_DEPTH d13446 1 a13448 1 RCD_ORDER d13450 1 a13452 1 RCD_SCRIPTS_DIR d13454 1 a13456 1 RCD_SCRIPTS_MODE d13458 1 a13460 1 RCD_SCRIPT_SRC d13462 1 a13464 1 RDOC d13466 1 a13468 1 READLINE_TYPE d13470 1 a13472 1 REAL_ROOT_USER d13474 1 a13476 1 RELAY_CTRL_DIR d13478 1 a13480 1 REPLACE_AWK d13482 1 a13484 1 REPLACE_CSH d13486 5 d13501 1 d13503 2 d13506 1 a13508 1 REPLACE_RUBY_DIRS d13510 1 a13512 1 REPLACE_SH d13514 1 d13706 1 a13706 1 SAWFISH_THEMES a13708 1 SCO d13710 1 a13712 1 SCREWS_USER d13714 1 a13716 1 SCROLLKEEPER_DATADIR d13718 1 a13720 1 SCROLLKEEPER_UPDATEDB d13722 1 a13724 1 SERIAL_DEVICES d13726 1 a13728 1 SETGID_GAMES_PERMS d13730 1 a13732 1 SH d13734 1 a13736 1 SHORTNAME d13738 1 a13740 1 SILC_CLIENT_WITH_PERL d13742 1 a13744 1 SKIP_DEPENDS d13746 1 a13748 1 SMF_MANIFEST d13750 1 a13752 1 SMF_METHOD_SHELL d13754 1 a13756 1 SMF_NAME d13758 1 a13760 1 SMF_SRCDIR d13762 1 a13764 1 SNIPROXY_USER d13766 1 a13768 1 SPECIAL_PERMS d13770 1 a13772 1 SSH_SUID d13774 1 a13776 1 SSYNC_PAWD d13778 1 a13780 1 STRIP d13782 1 a13784 1 STRIP_DEBUG d13786 1 a13788 1 STRIP_FILES_SKIP d13790 1 a13792 1 SUBDIR d13794 1 a13796 1 SUBST_CLASSES d13798 1 a13800 1 SUBST_FILTER_CMD d13802 1 a13804 1 SUBST_NOOP_OK d13806 1 a13808 1 SUBST_SHOW_DIFF d13810 1 a13812 1 SUBST_STAGE d13814 1 a13816 1 SUNWSPROBASE d13818 1 a13820 1 SU_CMD d13822 1 a13824 1 SVN_REPO d13826 1 a13828 1 SVN_REVISION d13830 1 a13832 1 TBL d13834 1 a13836 1 TERMINFO_DEFAULT d13838 1 a13840 1 TEST d13842 1 a13844 1 TEST_DIRS d13846 1 a13848 1 TEST_ENV_SHELL d13850 1 a13852 1 TEST_MAKE_FLAGS d13854 1 a13856 1 TEXLIVE_IGNORE_PATTERNS d13858 1 a13860 1 TEXLIVE_UNVERSIONED d13862 1 a13864 1 TEX_FORMATS d13866 1 a13868 1 TEX_HYPHEN_DEF d13870 1 a13872 1 THTTPD_LOG_FACILITY d13874 1 a13876 1 TLSWRAPPER_CHROOT d13878 1 a13880 1 TOOLS_ALIASES d13882 1 a13884 1 TOOLS_ARGS d13886 1 a13888 1 TOOLS_CMD d13890 1 a13892 1 TOOLS_CREATE d13894 1 a13896 1 TOOLS_FAIL d13898 1 a13900 1 TOOLS_LDCONFIG d13902 1 a13904 1 TOOLS_PATH d13906 1 a13908 1 TOOL_DEPENDS d13910 1 a13912 1 TTF_FONTS_DIR d13914 1 a13916 1 UAC_REQD_EXECS d13918 1 a13920 1 UCSPI_SSL_USER d13922 1 a13924 1 UNPRIVILEGED d13926 1 a13928 1 UNPRIVILEGED_GROUPS d13930 1 a13932 1 UNWRAP_FILES d13934 1 a13936 1 UPDATE_GEMSPEC d13938 1 a13940 1 URI d13942 1 a13944 1 USERPPP_GROUP d13946 1 a13948 1 USE_ABI_DEPENDS d13950 1 a13952 1 USE_BSD_MAKEFILE d13954 1 a13956 1 USE_CROSS_COMPILE d13958 1 a13960 1 USE_CWRAPPERS d13962 1 a13964 1 USE_FEATURES d13966 1 a13968 1 USE_GCC_RUNTIME d13970 1 a13972 1 USE_JAVA d13974 1 a13976 1 USE_LANGUAGES d13978 1 a13980 1 USE_NATIVE_GCC d13982 1 a13984 1 USE_PKGSRC_GCC d13986 1 a13988 1 USE_PKGTASKS d13990 1 a13992 1 USE_RUBY_EXTCONF d13994 1 a13996 1 USE_RUBY_SETUP d13998 1 a14000 1 USE_TOOLS d14002 1 a14004 1 UUCP_USER d14006 1 a14008 1 VARNAME d14010 1 a14012 1 WARNING_MSG d14014 1 a14016 1 WCALC_CGIPATH d14018 1 a14020 1 WCALC_HTMLPATH d14022 1 a14024 1 WRAPPER_CC d14026 1 a14028 1 WRKDIR d14030 1 a14032 1 WRKDIR_LOCKTYPE d14034 1 a14036 1 WRKOBJDIR d14038 1 a14040 1 X10_PORT d14042 1 a14044 1 X11BASE d14046 1 a14048 1 X11_TYPE d14050 1 a14052 1 X509_KEY d14054 1 a14056 1 XLOCK_DEFAULT_MODE d14058 1 a14060 1 XMKMF_FLAGS d14062 1 a14064 1 XXXX d14066 1 a14068 1 ZSH_STATIC d14070 1 a14072 1 _vargroups d14074 1 a14076 1 acquire-localbase-lock d14078 1 a14080 1 add d14082 1 a14084 1 alloca d14086 1 a14088 1 aslr d14090 1 a14092 1 atlas d14094 1 a14096 1 automake d14098 1 a14100 1 awk d14102 1 a14104 1 big-endian d14106 1 a14108 1 bind d14110 1 a14112 1 blas d14114 1 a14116 1 broken d14118 1 a14120 1 bsd d14122 1 a14124 1 build d14126 1 a14128 1 buildlink-directories d14130 1 a14132 1 c d14134 1 a14136 1 ccache d14138 1 a14140 1 cdefs d14142 1 a14144 1 changes d14146 1 a14148 1 changes-entry-noupdate d14150 1 a14152 1 check-clean d14154 1 a14156 1 check-files-clean d14158 1 a14160 1 checksum d14162 1 a14164 1 clean d14166 1 a14168 1 cleandir d14170 1 a14172 1 commit-changes-entry d14174 1 a14176 1 compiler d14178 1 a14180 1 config.guess d14182 1 a14184 1 configuration d14186 1 a14188 1 configure-env d14190 1 a14192 1 configure_args d14194 1 a14196 1 cos d14198 1 a14200 1 create-usergroup d14202 1 a14204 1 ctf d14206 1 a14208 1 debug d14210 1 a14212 1 declare d14214 1 a14216 1 depend d14218 1 a14220 1 depends d14222 1 a14224 1 depends-fetch d14226 1 a14228 1 describe d14230 1 a14232 1 disable d14234 1 a14236 1 distinfo d14238 1 a14240 1 dlopen d14242 1 a14244 1 do-clean d14246 1 a14248 1 do-configure-post-hook d14250 1 a14252 1 do-fetch d14254 1 a14256 1 emul d14258 1 a14260 1 emul-fetch d14262 1 a14264 1 emulator d14266 1 a14268 1 endian d14270 1 a14272 1 enomem d14274 1 a14276 1 errx d14278 1 a14280 1 exp d14282 1 a14284 1 fabs d14286 1 a14288 1 features d14290 1 a14292 1 fetch-list d14294 1 a14296 1 forbids d14298 1 a14300 1 format d14302 1 a14304 1 fortify_source d14306 1 a14308 1 friend d14310 1 a14312 1 fts_close d14314 1 a14316 1 fts_read d14318 1 a14320 1 gcc d14322 1 a14324 1 gethostbyname d14326 1 a14328 1 getopt_long d14330 1 a14332 1 getservbyname d14334 1 a14336 1 getservent d14338 1 a14340 1 git d14342 1 a14344 1 gitlab d14346 1 a14348 1 gnu d14350 1 a14352 1 go d14354 1 a14356 1 golang d14358 1 a14360 1 hashbang d14362 1 a14364 1 help d14366 1 a14368 1 imake d14370 1 a14372 1 inet_aton d14374 1 a14376 1 interpreter d14378 1 a14380 1 ip4 d14382 1 a14384 1 ipv4 d14386 1 a14388 1 iso d14390 1 a14392 1 krb d14394 1 a14396 1 ksh d14398 1 a14400 1 latex d14402 1 a14404 1 libintl_gettext d14406 1 a14408 1 libnbcompat d14410 1 a14412 1 libtool d14414 1 a14416 1 license d14418 1 a14420 1 little-endian d14422 1 d14425 1 a14425 1 locking d14461 5 d14467 2 d14470 1 a14472 1 occurs d14474 1 a14476 1 openblas d14478 1 a14480 1 options.mk d14482 1 a14484 1 override d14486 1 a14488 1 override-message-intltool d14490 1 a14492 1 parallel d14494 1 a14496 1 pax d14498 1 a14500 1 pbulk-index d14502 1 a14504 1 perl d14506 1 a14508 1 perms d14510 1 a14512 1 pkg-build-options d14514 1 a14516 1 pkg_build_options d14518 1 a14520 1 plist d14522 1 a14524 1 post-fetch d14526 1 a14528 1 pre-build-checks-hook d14530 1 a14532 1 pre-configure-checks-hook d14534 1 a14536 1 pre-fetch d14538 1 a14540 1 print-plist d14542 1 a14544 1 privileged-install-hook d14546 1 a14548 1 python d14550 1 a14552 1 readme-all d14554 1 a14556 1 recvfrom d14558 1 a14560 1 release-localbase-lock d14562 1 a14564 1 relro d14566 1 a14568 1 reorder d14570 1 a14572 1 replace_interpreter d14574 1 a14576 1 resolv d14578 1 a14580 1 ruby d14582 1 a14584 1 sendfile d14586 1 a14588 1 setenv d14590 1 a14592 1 setprogname d14594 1 a14596 1 sh d14598 1 a14600 1 show d14602 1 a14604 1 show-build-defs d14606 1 a14608 1 show-deps d14610 1 a14612 1 show-downlevel d14614 1 a14616 1 show-tools d14618 1 a14620 1 show-vars d14622 1 a14624 1 socket d14626 1 a14628 1 st_mode d14630 1 a14632 1 strcasestr d14634 1 a14636 1 strip d14638 1 a14640 1 strnlen d14642 1 a14644 1 subst d14646 1 a14648 1 subversion d14650 1 a14652 1 sunpro d14654 1 a14656 1 svn d14658 1 a14660 1 test d14662 1 a14664 1 tex d14666 1 a14668 1 tmp d14670 1 a14672 1 tools d14674 1 a14676 1 type d14678 1 a14680 1 undefined d14682 1 a14684 1 unlimit d14686 1 a14688 1 unprivileged-install-hook d14690 1 a14692 1 update d14694 1 a14696 1 upload-distfiles d14698 1 a14700 1 user d14702 1 a14704 1 vasprintf d14706 1 a14708 1 vsnprintf d14710 1 a14712 1 warning d14714 1 a14716 1 warnx d14718 1 a14720 1 wattr_on d14722 1 a14724 1 wrapper d14726 1 @ 1.331 log @doc/pkgsrc.*: regen @ text @d224 3 a226 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d3191 3 a3193 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d5067 3 a5069 4
    14.1.1. Perl modules
    14.1.2. Python modules and programs
    14.1.3. R packages
    14.1.4. TeXlive packages
    d5093 3 a5095 5 your own (maybe called local). In that category directory, create another directory for your package and change into it:

    $ mkdir category/package
    $ cd category/package
    d5098 5 a5102 7

    Run the program url2pkg, which will ask you for a URL. Enter the URL of the distribution file (in most cases a .tar.gz file) and watch how the basic ingredients of your package are created automatically. The distribution file is extracted automatically to fill in some details in the Makefile that would otherwise have to be done manually:

    d5116 1 a5116 1

    If you just need binaries from a package, add a d5126 1 a5126 2 packages, i.e. packages for the architecture where the package is built; d5128 5 a5132 4 packages, i.e. packages for the architecture for which the package is built. There is also TEST_DEPENDS, which is used to specify a dependency used only for testing the resulting package built, using the upstream project's included test suite. d5158 2 a5159 2 files and other system information has been saved in the working directory, which may become wrong after you edited the d5164 3 a5166 2

    If the extracted files from the package need to be fixed, run multiple rounds of these commands:

    $ make
    d5169 2
    a5170 2
    $ make mps
    $ make clean
    a5188 2
  • Run bmake package to create a binary package from the set of installed files.

  • d5192 2 a5193 1
  • Run pkglint to see if there's anything left to do.

  • d5201 1 a5201 7 14.1.1. Perl modules

    Simple Perl modules are handled automatically by url2pkg, including dependencies.

    14.1.2. Python modules and programs

    d5256 1 a5256 1 14.1.3. R packages
    d5271 1 a5271 1 14.1.4. TeXlive packages d11732 1 d11734 2 d11737 1 a11739 1 AMANDA_USER d11741 1 a11743 1 APACHE_GROUP d11745 1 a11747 1 APACHE_MODULE_SRC d11749 1 a11751 1 APACHE_PKG_PREFIX d11753 1 a11755 1 APACHE_SUEXEC_DOCROOT d11757 1 a11759 1 APPEND_ABI d11761 1 a11763 1 ARLA_CACHE d11765 1 a11767 1 AUTOCONF_REQD d11769 1 a11771 1 AUTOMAKE_REQD d11773 1 a11775 1 BDB185_DEFAULT d11777 1 a11779 1 BDB_ACCEPTED d11781 1 a11783 1 BDB_LIBS d11785 1 a11787 1 BINCIMAP_GROUP d11789 1 a11791 1 BIND_DIR d11793 1 a11795 1 BIND_USER d11797 1 a11799 1 BINPKG_SITES d11801 1 a11803 1 BISON_PKGDATADIR d11805 1 a11807 1 BLAS_ACCEPTED d11809 1 a11811 1 BLAS_INCLUDES d11813 1 a11815 1 BLAS_LIBS d11817 1 a11819 1 BOOTSTRAP_DEPENDS d11821 1 a11823 1 BROKEN_EXCEPT_ON_PLATFORM d11825 1 a11827 1 BSDSRCDIR d11829 1 a11831 1 BSD_MAKE_ENV d11833 1 a11835 1 BUILDLINK_AUTO_VARS d11837 1 a11839 1 BUILDLINK_CONTENTS_FILTER d11841 1 d11933 3 d11937 1 a11939 1 CHECK_FAKEHOME d11941 1 a11943 1 CHECK_FILES_SKIP d11945 1 a11947 1 CHECK_HEADERS d11949 1 a11951 1 CHECK_INTERPRETER d11953 1 a11955 1 CHECK_PERMS d11957 1 a11959 1 CHECK_PERMS_SKIP d11961 1 a11963 1 CHECK_PIE_SKIP d11965 1 a11967 1 CHECK_PORTABILITY d11969 1 a11971 1 CHECK_PORTABILITY_SKIP d11973 1 a11975 1 CHECK_RELRO_SKIP d11977 1 a11979 1 CHECK_SHLIBS d11981 1 a11983 1 CHECK_SHLIBS_SUPPORTED d11985 1 a11987 1 CHECK_SSP d11989 1 a11991 1 CHECK_SSP_SUPPORTED d11993 1 a11995 1 CHECK_STRIPPED_SKIP d11997 1 a11999 1 CHECK_WRKREF_EXTRA_DIRS d12001 1 a12003 1 CLAMAV_DBDIR d12005 1 a12007 1 CLAMAV_USER d12009 1 a12011 1 CLEANDEPENDS d12013 1 a12015 1 CMAKE_INSTALL_NAME_DIR d12017 1 a12019 1 CMAKE_MODULE_PATH_OVERRIDE d12021 1 a12023 1 CMAKE_PREFIX_PATH d12025 9 d12096 17 d12114 2 d12117 1 a12119 1 CYRUS_IDLE d12121 1 a12123 1 DAEMONTOOLS_GROUP d12125 1 a12127 1 DARWIN_NO_SYSTEM_LIBS d12129 1 a12131 1 DBUS_GROUP d12133 1 a12135 1 DEFANG_GROUP d12137 1 a12139 1 DEFAULT_ACCEPTABLE_LICENSES d12141 1 a12143 1 DEFAULT_IRC_SERVER d12145 1 a12147 1 DEF_UMASK d12149 1 a12151 1 DEINSTALL_SRC d12153 1 a12155 1 DELAYED_ERROR_MSG d12157 1 a12159 1 DEPENDS d12161 1 a12163 1 DEPENDS_TYPE d12165 1 a12167 1 DESTDIR_VARNAME d12169 1 a12171 1 DIGEST_REQD d12173 1 a12175 1 DISTFILES d12177 1 a12179 1 DISTNAME d12181 1 a12183 1 DIST_SUBDIR d12185 1 a12187 1 DJBDNS_CACHE_USER d12189 1 a12191 1 DJBDNS_LOG_USER d12193 1 a12195 1 DJBDNS_TINY_USER d12197 1 a12199 1 DL_AUTO_VARS d12201 1 a12203 1 DL_LDFLAGS d12205 1 a12207 1 DNS d12209 1 a12211 1 DOWNLOADED_DISTFILE d12213 1 a12215 1 DYNAMIC_SITES_CMD d12217 1 a12219 1 ECHO d12221 1 a12223 1 ELK_GUI d12225 1 a12227 1 EMULDIR d12229 1 a12231 1 EMULSUBDIRSLASH d12233 1 a12235 1 EMUL_DISTRO d12237 1 a12239 1 EMUL_IS_NATIVE d12241 1 a12243 1 EMUL_OPSYS d12245 1 a12247 1 EMUL_PLATFORM d12249 1 a12251 1 EMUL_PREFER d12253 1 a12255 1 EMUL_TYPE d12257 1 a12259 1 EXIM_GROUP d12261 1 a12263 1 EXPORT_SYMBOLS_LDFLAGS d12265 1 a12267 1 EXTRACT_CMD d12269 1 a12271 1 EXTRACT_DIR d12273 1 a12275 1 EXTRACT_ENV d12277 1 a12279 1 EXTRACT_OPTS d12281 1 a12283 1 EXTRACT_USING d12285 1 a12287 1 FAILOVER_FETCH d12289 1 a12291 1 FAKE_NCURSES d12293 1 a12295 1 FAM_ACCEPTED d12297 1 a12299 1 FAM_SERVER d12301 1 a12303 1 FEATURE_CPPFLAGS d12305 1 a12307 1 FEATURE_LIBS d12309 1 a12311 1 FETCH_BEFORE_ARGS d12313 1 a12315 1 FETCH_OUTPUT_ARGS d12317 1 a12319 1 FETCH_RESUME_ARGS d12321 1 a12323 1 FETCH_USE_IPV4_ONLY d12325 1 a12327 1 FILES_SUBST d12329 1 d12332 9 a12340 1 FIX_SYSTEM_HEADERS d12348 8 d12432 20 d12489 3 d12493 1 a12495 1 HASKELL_ENABLE_LIBRARY_PROFILING d12497 1 a12499 1 HASKELL_OPTIMIZATION_LEVEL d12501 5 d12508 1 a12508 1 HEADER_TEMPLATES d12605 1 a12605 1 JAVA_BINPREFIX d12608 2 a12609 2 JAVA_CLASSPATH JAVA_HOME d12612 5 d12618 2 d12621 1 a12623 1 JAVA_UNLIMIT d12625 1 a12627 1 JPEG_ACCEPTED d12629 1 a12631 1 KERBEROS d12633 1 a12635 1 KJS_USE_PCRE d12637 1 a12639 1 KNEWS_DOMAIN_NAME d12641 1 a12643 1 KRB5_DEFAULT d12645 1 a12647 1 LAPACKE_LIBS d12649 1 a12651 1 LATEX2HTML_ICONPATH d12653 1 a12655 1 LDCONFIG_REMOVE_CMD d12657 1 a12659 1 LEAFNODE_DATA_DIR d12661 1 a12663 1 LEAFNODE_USER d12665 1 a12667 1 LIBDVDCSS_MASTER_SITES d12669 1 a12671 1 LIBTOOL d12673 1 a12675 1 LIBTOOL_M4_OVERRIDE d12677 1 a12679 1 LICENSE d12681 5 d12688 1 a12688 1 LINK_RPATH_FLAG a12707 29 LUA_CDIR LUA_COMPILER LUA_DOCDIR LUA_EXAMPLESDIR LUA_INCDIR LUA_INTERPRETER LUA_LDIR LUA_LINKER_MAGIC LUA_PKGPREFIX LUA_SELF_CONFLICT LUA_VERSIONS_ACCEPTED LUA_VERSIONS_INCOMPATIBLE LUA_VERSION_DEFAULT LUA_VERSION_REQD Lua d12709 1 a12711 1 MAILAGENT_DOMAIN d12713 1 a12715 1 MAILAGENT_FQDN d12717 1 d12720 1 a12720 1 MAJORDOMO_HOMEDIR d12805 1 a12805 1 MV d12808 1 a12809 1 MYSQL_DATADIR d12812 1 a12813 1 MYSQL_GROUP d12816 1 a12817 1 MYSQL_VERSION d12820 1 a12821 1 MYSQL_VERSIONS_ALL d12824 1 a12825 1 NAGIOSCMD_GROUP d12828 1 a12829 1 NAGIOS_GROUP d12832 1 a12833 1 NATIVE_APPEND_ABI d12836 1 a12837 1 NATIVE_EXEC_FMT d12840 1 a12841 1 NATIVE_OBJECT_FMT d12844 1 a12845 1 NETBSD_LOGIN_NAME d12848 1 a12849 1 NMH_MTA d12852 1 a12853 5 NODE_VERSIONS_ACCEPTED NODE_VERSIONS_INCOMPATIBLE NODE_VERSION_DEFAULT a12855 1 NODE_VERSION_REQD d12857 1 a12859 1 NOTE d12861 1 a12863 1 NOT_PAX_ASLR_SAFE d12865 1 a12867 1 NO_BUILD d12869 1 a12871 1 NO_CONFIGURE d12873 1 a12875 1 NS_PREFERRED d12877 1 a12879 1 NULLMAILER_USER d12881 1 a12883 1 OASIS_BUILD_ARGS d12885 1 a12887 1 OBJMACHINE d12889 1 a12891 1 OCAML_FINDLIB_REGISTER d12893 1 a12895 1 OCAML_SITELIBDIR d12897 1 a12899 1 OCAML_USE_DUNE d12901 1 a12903 1 OCAML_USE_JBUILDER d12905 1 a12907 1 OCAML_USE_OASIS_DYNRUN d12909 1 a12911 1 OCAML_USE_OPT_COMPILER d12913 1 a12915 1 OMF d12917 1 a12919 1 ONLY_FOR_PLATFORM d12921 1 a12923 1 OPENSSH_GROUP d12925 1 a12927 1 OPSYS d12929 1 a12931 1 OPSYS_VERSION d12933 1 a12935 1 OSS_TYPE d12937 5 a12943 1 OSX_TOLERATE_SDK_SKEW d12945 1 a12947 1 OS_VERSION d12949 1 a12951 1 OVERRIDE_DIRDEPTH d12953 1 d12956 1 a12956 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13004 8 a13383 9 QORE_LATEST_MODULE_API QORE_MODULE_API QORE_MODULE_DIR QORE_USER_MODULE_DIR QORE_VERSION d13385 1 a13387 1 QPOPPER_SPOOL_DIR d13389 1 a13391 1 RAKE_NAME d13393 1 d13396 1 d13398 2 d13401 1 a13403 1 RCD_SCRIPTS_EXAMPLEDIR d13405 1 a13407 1 RCD_SCRIPTS_SHELL d13409 1 a13435 5 REPLACE_LUA REPLACE_NODEJS REPLACE_OCTAVE d13437 1 a13439 1 REPLACE_PERL6 a13440 2 a13441 1 REPLACE_QORE a13455 1 REPLACE_WISH d13457 1 a13459 1 REQD_DIRS_PERMS d13461 1 a13463 1 REQD_FILES_MODE d13465 1 a13467 1 RESOLV_AUTO_VARS d13469 1 a13471 1 RESOLV_LIBS d13473 1 d13476 1 d13478 2 d13481 1 a13483 1 ROOT_USER d13485 1 a13487 1 RPM d13489 1 a13491 1 RPM2PKG_PREFIX d13493 1 a13495 1 RPM2PKG_STRIP d13497 1 a13499 1 RPMFILES d13501 1 a13503 1 RPM_DB_PREFIX d13505 1 a13507 1 RSSH_RDIST_PATH d13509 1 a13511 1 RSSH_SCP_PATH d13513 1 a13515 1 RUBY d13517 1 a13519 1 RUBYGEM_NAME d13521 1 a13523 1 RUBYGEM_VERBOSE d13525 1 a13527 1 RUBY_ARCH d13529 1 a13531 1 RUBY_ARCHLIB d13533 1 a13535 1 RUBY_BASERIDIR d13537 1 a13539 1 RUBY_DLEXT d13541 1 a13543 1 RUBY_DYNAMIC_DIRS d13545 1 a13547 1 RUBY_ENCODING_ARG d13549 1 a13551 1 RUBY_EXTCONF_CHECK d13553 1 a13555 1 RUBY_EXTCONF_MAKEFILE d13557 1 a13559 1 RUBY_GEM_BASE d13561 1 a13563 1 RUBY_LIB d13565 1 a13567 1 RUBY_NAME d13569 1 a13571 1 RUBY_PKGPREFIX d13573 1 a13575 1 RUBY_RAILS52_VERSION d13577 1 a13579 1 RUBY_RAILS61_VERSION d13581 1 a13583 1 RUBY_RAILS_ACCEPTED d13585 1 a13587 1 RUBY_RAILS_REQD d13589 1 a13591 1 RUBY_RIDIR d13593 1 a13595 1 RUBY_SHLIB d13597 1 a13599 1 RUBY_SHLIBVER d13601 1 a13603 1 RUBY_SITEARCHLIB d13605 1 a13607 1 RUBY_SITELIB_BASE d13609 1 a13611 1 RUBY_SLEXT d13613 1 a13615 1 RUBY_STATICLIB d13617 1 a13619 1 RUBY_SYSRIDIR d13621 1 a13623 1 RUBY_VENDORARCHLIB d13625 1 a13627 1 RUBY_VENDORLIB_BASE d13629 1 a13631 1 RUBY_VERSION d13633 1 a13635 1 RUBY_VERSIONS_INCOMPATIBLE d13637 1 a13639 1 RUBY_VERSION_REQD d13641 1 a13643 1 RUN d13645 1 d13676 1 a13677 1 SILC_CLIENT_WITH_PERL d13680 1 a13681 1 SKIP_DEPENDS d13684 1 d13686 2 d13689 1 a13691 1 SMF_METHODS d13693 1 a13695 1 SMF_METHOD_SRC d13697 1 a13699 1 SMF_PREFIX d13701 1 a13703 1 SNIPROXY_GROUP d13705 1 a13707 1 SOURCE_BUFFSIZE d13709 1 a13711 1 SPECIFIC_PKGS d13713 1 a13715 1 SSP_SUPPORTED d13717 1 a13719 1 STEP_MSG d13721 1 a13723 1 STRIP_DBG d13725 1 a13727 1 STRIP_DEBUG_SUPPORTED d13729 1 a13731 1 SU d13733 1 a13735 1 SUBST d13737 1 a13739 1 SUBST_FILES d13741 1 a13743 1 SUBST_MESSAGE d13745 1 a13747 1 SUBST_SED d13749 1 a13751 1 SUBST_SKIP_TEXT_CHECK d13753 1 a13755 1 SUBST_VARS d13757 1 a13759 1 SUSE_PREFER d13761 5 d13768 1 d13770 2 d13773 1 a13775 1 TERMCAP_TYPE d13777 1 a13779 1 TERMINFO_TYPE d13781 1 a13783 1 TEST_DEPENDS d13785 1 a13787 1 TEST_ENV d13789 1 a13791 1 TEST_MAKE_CMD d13793 1 a13795 1 TEST_TARGET d13797 1 a13799 1 TEXLIVE_REV d13801 1 a13803 1 TEXMFSITE d13805 1 a13807 1 TEX_HYPHEN_DAT d13809 1 a13811 1 TEX_TEXMF_DIRS d13813 1 a13815 1 TINYDYN_USER d13817 1 a13819 1 TO d13821 1 a13823 1 TOOLS_ALWAYS_WRAP d13825 1 a13827 1 TOOLS_BROKEN d13829 1 a13831 1 TOOLS_CMDLINE_SED d13833 1 a13835 1 TOOLS_DIR d13837 1 a13839 1 TOOLS_GNU_MISSING d13841 1 a13843 1 TOOLS_NOOP d13845 1 a13847 1 TOOLS_SCRIPT d13849 1 d14004 1 d14006 2 d14009 1 a14011 1 __stdc__ d14013 1 a14015 1 accept d14017 1 a14019 1 acquire-lock d14021 1 a14023 1 administrator d14025 1 a14027 1 alternatives d14029 1 a14031 1 asprintf d14033 1 a14035 1 autoconf d14037 1 a14039 1 autoreconf d14041 1 a14043 1 bash d14045 1 a14047 1 bin-install d14049 1 a14051 1 binpkg-list d14053 1 a14055 1 bootstrap-depends d14057 1 a14059 1 broken_on_platform d14061 1 a14063 1 bsd.prog.mk d14065 1 a14067 1 build-env d14069 1 a14071 1 buildlink-oss-soundcard-h d14073 1 a14075 1 c++ d14077 1 a14079 1 cce d14081 1 a14083 1 ceil d14085 1 a14087 1 changes-entry d14089 1 a14091 1 check d14093 1 a14095 1 check-files d14097 1 a14099 1 check-vulnerable d14101 1 a14103 1 checksum-phase d14105 1 a14107 1 clean-depends d14109 1 a14111 1 commit d14113 1 a14115 1 compact d14117 1 a14119 1 conf d14121 1 a14123 1 config.sub d14125 1 a14127 1 configure d14129 1 a14131 1 configure-help d14133 1 a14135 1 connect d14137 1 a14139 1 cputime d14141 1 a14143 1 csh d14145 1 d14193 3 d14197 1 a14199 1 emul-distinfo d14201 1 a14203 1 emulation d14205 1 a14207 1 enable d14209 1 d14245 3 d14249 1 a14251 1 fts d14253 1 a14255 1 fts_open d14257 1 a14259 1 fts_set d14261 1 a14263 1 gethostbyaddr d14265 1 a14267 1 gethostbyname2 d14269 1 a14271 1 getprogname d14273 1 a14275 1 getservbyport d14277 1 d14280 1 a14280 1 gettext d14284 1 d14286 2 d14289 1 a14291 1 gnu_configure_strict d14293 1 a14295 1 go-deps d14297 1 a14299 1 guess-license d14301 1 a14303 1 heimdal d14305 1 d14365 1 a14365 1 lua a14367 1 lvalue d14369 1 a14371 1 makesum d14373 1 a14399 5 node node.js nodejs d14401 1 a14403 1 obstack_ptr_grow d14405 1 a14407 1 only d14409 1 a14411 1 options d14413 1 a14415 1 order d14417 1 a14419 1 override-intltool d14421 1 a14423 1 package d14425 1 a14427 1 path d14429 1 a14431 1 paxctl d14433 1 a14435 1 pc d14437 1 a14439 1 perl5 d14441 1 a14443 1 php d14445 1 a14447 1 pkg-config d14449 1 a14451 1 platform d14453 1 a14455 1 post-extract d14457 1 a14459 1 post-wrapper d14461 1 a14463 1 pre-configure d14465 1 a14467 1 pre-extract d14469 1 a14471 1 print-go-deps d14473 1 a14475 1 print-summary-data d14477 1 a14479 1 pypi d14481 1 a14483 1 r d14485 1 a14487 1 recv d14489 1 a14491 1 regcomp d14493 1 a14495 1 release-lock d14497 1 a14499 1 rename d14501 1 a14503 1 replace d14505 1 a14507 1 reproducible d14509 1 a14511 1 root d14513 1 a14515 1 send d14517 1 a14519 1 sendto d14521 1 a14523 1 setgid d14525 1 a14527 1 setuid d14529 1 a14531 1 shebang d14533 1 a14535 1 show-all d14537 1 a14539 1 show-depends d14541 1 a14543 1 show-distfiles d14545 1 a14547 1 show-subdir-var d14549 1 a14551 1 show-var d14553 1 a14555 1 snprintf d14557 1 a14559 1 ssp d14561 1 a14563 1 stage-install d14565 1 a14567 1 strict d14569 1 a14571 1 strndup d14573 1 a14575 1 strsep d14577 1 d14580 1 a14580 1 substitutions d14588 1 a14589 1 test d14592 1 a14593 1 tex d14596 1 a14597 1 tmp d14600 1 a14601 1 tools d14604 1 a14605 1 type d14608 1 a14609 1 undefined d14612 1 a14613 1 unlimit d14616 1 a14617 1 unprivileged-install-hook d14620 1 a14621 1 update d14624 1 a14625 1 upload-distfiles d14628 1 a14629 1 user d14632 1 a14633 1 vasprintf d14636 1 a14637 1 vsnprintf d14640 1 a14641 1 warning d14644 1 a14645 1 warnx d14648 1 a14649 1 wattr_on d14652 1 a14653 1 wrapper d14656 1 a14657 1   @ 1.330 log @doc/pkgsrc.*: regen @ text @d8592 2 a8593 1 naming convention varies).

    a11744 1 ALSA_PC d11746 1 a11748 1 AMANDA_TMP d11750 1 a11752 1 AMANDA_VAR d11754 1 a11756 1 APACHE_MODULE_NAME d11758 1 a11760 1 APACHE_MODULE_SRCDIR d11762 1 a11764 1 APACHE_SUEXEC_CONFIGURE_ARGS d11766 1 a11768 1 APACHE_USER d11770 1 a11772 1 APPEND_ELF d11774 1 a11776 1 AUDIT_PACKAGES_FLAGS d11778 1 a11780 1 AUTOMAKE_OVERRIDE d11782 1 a11784 1 AUTO_MKDIRS d11786 1 a11788 1 BDBBASE d11790 1 a11792 1 BDB_DEFAULT d11794 1 a11796 1 BDB_TYPE d11798 1 a11800 1 BINCIMAP_USER d11802 1 a11804 1 BIND_GROUP d11806 1 a11808 1 BINOWN d11810 1 a11812 1 BIN_INSTALL_FLAGS d11814 1 a11816 1 BLAS d11818 1 a11820 1 BLAS_C_INTERFACE d11822 1 a11824 1 BLAS_INDEX64 d11826 1 a11828 1 BLAS_TYPE a11829 3 BOOTSTRAP_SETUPTOOLS a11852 1 BUILDLINK_DEPMETHOD d11854 1 a11856 1 BUILDLINK_FILES_CMD d11858 1 a11860 1 BUILDLINK_LDFLAGS d11862 1 a11864 1 BUILDLINK_OPSYS_SUPPORT_PTHREAD d11866 1 a11868 1 BUILDLINK_PREFIX d11870 1 a11872 1 BUILDLINK_TREE d11874 1 a11876 1 BUILD_DEFS_EFFECTS d11878 1 a11880 1 BUILD_DIRS d11882 1 a11884 1 BUILD_MAKE_CMD d11886 1 a11888 1 BUILD_TARGET d11890 1 a11892 1 BUILTIN_FIND_FILES_VAR d11894 1 a11896 1 BUILTIN_FIND_HEADERS d11898 1 a11900 1 BUILTIN_FIND_PKGCONFIG d11902 1 a11904 1 BUILTIN_PKG d11906 1 a11908 1 BUILTIN_TEST_CURSES_FUNCS d11910 1 a11912 1 BUILTIN_X11_TYPE d11914 1 a11916 1 CACTI_GROUP d11918 1 a11920 1 CANNA_GROUP d11922 1 a11924 1 CAT d11926 1 a11928 1 CCACHE_BASE d11930 1 a11932 1 CCACHE_LOGFILE d11934 1 a11936 1 CC_VERSION_STRING d11938 1 a11940 1 CDROM_PKG_URL_DIR a11941 3 CHECKOUT_DATE d11966 5 a11970 1 CHECK_PORTABILITY d11973 1 a11974 1 CHECK_PORTABILITY_SKIP d11977 1 a11978 1 CHECK_RELRO_SKIP d11981 1 a11982 1 CHECK_SHLIBS d11985 1 a11986 1 CHECK_SHLIBS_SUPPORTED d11989 1 a11990 1 CHECK_SSP d11993 1 a11994 1 CHECK_SSP_SUPPORTED d11997 1 a11998 1 CHECK_STRIPPED_SKIP d12001 1 a12002 1 CHECK_WRKREF_EXTRA_DIRS d12005 1 a12006 1 CLAMAV_DBDIR d12009 1 a12010 1 CLAMAV_USER d12013 1 a12014 1 CLEANDEPENDS d12017 1 a12018 1 CMAKE_INSTALL_NAME_DIR d12021 1 a12022 1 CMAKE_MODULE_PATH_OVERRIDE d12025 1 a12026 1 CMAKE_PREFIX_PATH d12029 1 a12030 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12092 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12094 1 a12096 1 CYRUS_GROUP d12098 1 a12100 1 CYRUS_USER d12102 1 a12104 1 DAEMONTOOLS_LOG_USER d12106 1 a12108 1 DARWIN_REQUIRES_FILTER d12110 1 a12112 1 DBUS_USER d12114 1 a12116 1 DEFANG_USER d12118 1 a12120 1 DEFAULT_DISTFILES d12122 1 a12124 1 DEFAULT_SERIAL_DEVICE d12126 1 a12128 1 DEINSTALLDEPENDS d12130 1 a12132 1 DEINSTALL_TEMPLATES d12134 1 a12136 1 DELAYED_WARNING_MSG d12138 1 a12140 1 DEPENDS_TARGET d12142 1 a12144 1 DESTDIR d12146 1 a12148 1 DIALER_GROUP d12150 1 a12152 1 DISTDIR d12154 1 a12156 1 DISTINFO_FILE d12158 1 a12160 1 DIST_PATH d12162 1 a12164 1 DJBDNS_AXFR_USER d12166 1 a12168 1 DJBDNS_DJBDNS_GROUP d12170 1 a12172 1 DJBDNS_RBL_USER d12174 1 a12176 1 DLOPEN_REQUIRE_PTHREADS d12178 1 a12180 1 DL_CFLAGS d12182 1 a12184 1 DL_LIBS d12186 1 a12188 1 DOCOWN d12190 1 a12192 1 DT_LAYOUT d12194 1 a12196 1 DYNAMIC_SITES_SCRIPT d12198 1 a12200 1 ECHO_N d12202 1 a12204 1 EMACS_TYPE d12206 1 a12208 1 EMULSUBDIR d12210 1 a12212 1 EMUL_ARCH d12214 1 a12216 1 EMUL_EXEC_FMT d12218 1 a12220 1 EMUL_MODULES d12222 1 a12224 1 EMUL_PKG_FMT d12226 1 a12228 1 EMUL_PLATFORMS d12230 1 a12232 1 EMUL_REQD d12234 1 a12236 1 ERROR_MSG d12238 1 a12240 1 EXIM_USER d12242 1 a12244 1 EXTRACTOR d12246 1 a12248 1 EXTRACT_CMD_DEFAULT d12250 1 a12252 1 EXTRACT_ELEMENTS d12254 1 a12256 1 EXTRACT_ONLY d12258 1 a12260 1 EXTRACT_SUFX d12262 1 a12264 1 FAIL d12266 1 a12268 1 FAIL_MSG d12270 1 a12272 1 FAM d12274 1 a12276 1 FAM_DEFAULT d12278 1 a12280 1 FCPATH d12282 1 a12284 1 FEATURE_LDFLAGS d12286 1 a12288 1 FETCH_AFTER_ARGS d12290 1 a12292 1 FETCH_CMD d12294 1 a12296 1 FETCH_PROXY d12298 1 a12300 1 FETCH_TIMEOUT d12302 1 a12304 1 FETCH_USING d12306 1 a12308 1 FILES_SUBST_SED a12309 11 FLUXBOX_USE_GNOME FLUXBOX_USE_KDE FLUXBOX_USE_XFT FLUXBOX_USE_XINERAMA FONTDIR a12316 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12392 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12430 1 a12430 1 HASKELL_COMPILER a12432 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12434 1 a12436 1 HASKELL_ENABLE_SHARED_LIBRARY d12438 1 a12440 1 HAS_CONFIGURE a12441 7 HG_REPO HG_REPOSITORIES HG_TAG d12538 1 a12538 1 JAKARTA_HOME a12540 5 JAVA_APP_PATH JAVA_APP_TARGETS JAVA_BINPREFIX d12542 1 a12544 1 JAVA_HOME d12546 1 a12548 1 JAVA_NAME d12550 1 a12552 1 JAVA_WRAPPERS d12554 1 a12556 1 JPEG_DEFAULT d12558 1 a12560 1 KERMIT_SUID_UUCP d12562 1 a12564 1 KNEWS_DOMAIN_FILE d12566 1 a12568 1 KRB5_ACCEPTED d12570 1 a12572 1 LANGUAGES d12574 1 a12576 1 LAPACK_LIBS d12578 1 a12580 1 LDCONFIG_ADD_CMD d12582 1 a12584 1 LDD d12586 1 a12588 1 LEAFNODE_GROUP d12590 1 a12592 1 LIBDVDCSS_HOMEPAGE d12594 1 a12596 1 LIBRSVG_TYPE d12598 1 a12600 1 LIBTOOLIZE_PLIST d12602 1 a12604 1 LIBUSB_TYPE d12606 1 a12608 1 LINKER_RPATH_FLAG a12609 7 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12629 29 a12658 1 MAILAGENT_DOMAIN d12661 1 a12662 1 MAILAGENT_FQDN d12665 1 a12666 1 MAJORDOMO_HOMEDIR d12669 1 a12669 1 MAJOR_OS_VERSION d12754 1 a12754 1 MUST a12756 1 MV d12758 1 a12760 1 MYSQL_DATADIR d12762 1 a12764 1 MYSQL_GROUP d12766 1 a12768 1 MYSQL_VERSION d12770 1 a12772 1 MYSQL_VERSIONS_ALL d12774 1 a12776 1 NAGIOSCMD_GROUP d12778 1 a12780 1 NAGIOS_GROUP d12782 1 a12784 1 NATIVE_APPEND_ABI d12786 1 a12788 1 NATIVE_EXEC_FMT d12790 1 a12792 1 NATIVE_OBJECT_FMT d12794 1 a12796 1 NETBSD_LOGIN_NAME d12798 1 a12800 1 NMH_MTA d12802 5 d12809 1 a12810 1 NOTE d12813 1 a12814 1 NOT_PAX_ASLR_SAFE d12817 1 a12818 1 NO_BUILD d12821 1 a12822 1 NO_CONFIGURE d12825 1 a12826 1 NS_PREFERRED d12829 1 a12830 1 NULLMAILER_USER d12833 1 a12834 1 OASIS_BUILD_ARGS d12837 1 a12838 1 OBJMACHINE d12841 1 a12842 1 OCAML_FINDLIB_REGISTER d12845 1 a12846 1 OCAML_SITELIBDIR d12849 1 a12850 1 OCAML_USE_DUNE d12853 1 a12854 1 OCAML_USE_JBUILDER d12857 1 a12858 1 OCAML_USE_OASIS_DYNRUN d12861 1 a12862 1 OCAML_USE_OPT_COMPILER d12865 1 a12866 1 OMF d12869 1 a12870 1 ONLY_FOR_PLATFORM d12873 1 a12874 1 OPENSSH_GROUP d12877 1 a12878 1 OPSYS d12881 1 a12882 1 OPSYS_VERSION d12885 1 a12886 1 OSS_TYPE d12889 1 a12890 1 OSX_TOLERATE_SDK_SKEW d12893 2 a12894 2 OS_HAVE_ALSA OS_HAVE_RCD a12896 1 OS_VARIANT d12898 1 a12900 1 OTF_FONTS_DIR d12902 1 a12904 1 OVERRIDE_GEMSPEC a12905 3 OVERRIDE_ROCKSPEC a12952 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION d13078 1 a13078 1 PKGSRC_RUN_TEST d13081 1 a13082 1 PKGSRC_SLEEPSECS d13085 1 a13086 1 PKGSRC_USE_CTF d13089 1 a13090 1 PKGSRC_USE_RELRO d13093 1 a13094 1 PKGSRC_USE_STACK_CHECK d13097 1 a13098 1 PKGTOOLS_ARGS d13101 1 a13102 1 PKG_ALTERNATIVES d13105 1 a13106 1 PKG_APACHE_ACCEPTED d13109 1 a13110 1 PKG_BEST_EXISTS d13113 1 a13114 1 PKG_COMPRESSION d13117 1 a13118 1 PKG_CONFIG_PERMS d13121 1 a13122 1 PKG_DB_TMPDIR d13125 1 a13126 1 PKG_DEFAULT_OPTIONS d13129 1 a13130 1 PKG_DEVELOPER d13133 1 a13134 1 PKG_FATAL_ERRORS d13137 1 a13138 1 PKG_FILELIST_CMD d13141 1 a13142 1 PKG_GID d13145 1 a13146 1 PKG_GROUPS_VARS d13149 1 a13150 1 PKG_INIT_SCRIPTS d13153 1 a13154 1 PKG_JVM d13157 1 a13158 1 PKG_JVM_DEFAULT d13161 1 a13162 1 PKG_LIBTOOL d13165 1 a13166 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13169 1 a13170 1 PKG_OPTIONS_LEGACY_VARS d13173 1 a13174 1 PKG_OPTIONS_OPTIONAL_GROUPS d13177 1 a13178 1 PKG_OPTIONS_VAR d13181 1 a13182 1 PKG_PHP_MAJOR_VERS d13185 1 a13186 1 PKG_RCD_SCRIPTS d13189 1 a13190 1 PKG_REGISTER_SHELLS d13193 1 a13194 1 PKG_SHELL d13197 1 a13198 1 PKG_SUPPORTED_OPTIONS d13201 1 a13202 1 PKG_SYSCONFBASEDIR d13205 1 a13206 1 PKG_SYSCONFDIR_PERMS d13209 1 a13210 1 PKG_SYSCONFVAR d13213 1 a13214 1 PKG_UID d13217 1 a13218 1 PKG_USERS d13221 1 a13222 1 PKG_VERBOSE d13225 1 a13226 1 PLIST d13229 1 a13230 1 PLIST_AWK_ENV d13233 1 a13234 1 PLIST_SUBST d13237 1 a13238 1 PLIST_VARS d13241 1 a13242 1 POSSIBLE_GFORTRAN_VERSION d13245 1 a13246 1 PREFER d13249 1 a13250 1 PREFER_NATIVE_PTHREADS d13253 1 a13254 1 PREFIX d13257 1 a13258 1 PRE_ROOT_CMD d13261 1 a13262 1 PS d13265 1 a13266 1 PTHREAD_CFLAGS d13269 1 a13270 1 PTHREAD_LIBS d13273 1 a13274 1 PTHREAD_TYPE d13277 1 a13278 1 PYPKGPREFIX d13281 1 a13282 1 PYTHON_SELF_CONFLICT d13285 1 a13286 1 PYTHON_VERSIONS_ACCEPTED d13289 1 a13290 1 PYTHON_VERSION_DEFAULT d13293 1 a13294 1 PYVERSSUFFIX d13297 1 a13297 1 PY_NO_EGG d13325 9 a13334 1 QPOPPER_SPOOL_DIR d13337 1 a13338 1 RAKE_NAME d13341 1 a13342 1 RCD_DIR a13344 1 RCD_ORDER d13346 1 a13348 1 RCD_SCRIPTS_DIR d13350 1 a13352 1 RCD_SCRIPTS_MODE a13353 2 a13354 1 RCD_SUBR d13381 5 d13387 2 d13390 1 a13392 1 REPLACE_PHP d13394 1 d13409 1 a13410 1 REQD_DIRS_PERMS d13413 1 a13414 1 REQD_FILES_MODE d13417 1 a13418 1 RESOLV_AUTO_VARS d13421 1 a13422 1 RESOLV_LIBS d13425 1 a13426 1 ROCKSPEC_NAME a13428 1 ROCKSPEC_SPECFILE d13430 1 a13432 1 ROOT_GROUP d13434 1 a13436 1 RPCGEN d13438 1 a13440 1 RPM2PKG_PLIST d13442 1 a13444 1 RPM2PKG_STAGE d13446 1 a13448 1 RPM2PKG_SUBPREFIX d13450 1 a13452 1 RPMIGNOREPATH d13454 1 a13456 1 RSSH_CVS_PATH d13458 1 a13460 1 RSSH_RSYNC_PATH d13462 1 a13464 1 RSSH_SFTP_SERVER_PATH d13466 1 a13468 1 RUBYGEM d13470 1 a13472 1 RUBYGEM_OPTIONS d13474 1 a13476 1 RUBY_ABI_VERSION d13478 1 a13480 1 RUBY_ARCHINC d13482 1 a13484 1 RUBY_BASE d13486 1 a13488 1 RUBY_BUILD_DOCUMENT d13490 1 a13492 1 RUBY_DOC d13494 1 a13496 1 RUBY_EG d13498 1 a13500 1 RUBY_EXTCONF d13502 1 a13504 1 RUBY_EXTCONF_DEBUG d13506 1 a13596 1 SAWFISH_THEMES d13598 1 a13600 1 SCREWS_GROUP d13602 1 a13604 1 SCRIPTS_ENV d13606 1 a13608 1 SCROLLKEEPER_REBUILDDB d13610 1 a13612 1 SDIST_PAWD d13614 1 a13616 1 SETGIDGAME d13618 1 a13620 1 SETUID_ROOT_PERMS a13621 2 a13622 1 SHORTNAME a13708 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION a13788 1 TTF_FONTDIR d13790 1 a13792 1 TYPE a13793 2 a13794 1 UCSPI_SSL_USER d13797 1 a13798 1 UNPRIVILEGED d13801 1 a13802 1 UNPRIVILEGED_GROUPS d13805 1 a13806 1 UNWRAP_FILES d13809 1 a13810 1 UPDATE_GEMSPEC d13813 1 a13814 1 URI d13817 1 a13818 1 USERPPP_GROUP d13821 1 a13822 1 USE_ABI_DEPENDS d13825 1 a13826 1 USE_BSD_MAKEFILE d13829 1 a13830 1 USE_CROSS_COMPILE d13833 1 a13834 1 USE_CWRAPPERS d13837 1 a13838 1 USE_FEATURES d13841 1 a13842 1 USE_GCC_RUNTIME d13845 1 a13846 1 USE_JAVA d13849 1 a13850 1 USE_LANGUAGES d13853 1 a13854 1 USE_NATIVE_GCC d13857 1 a13858 1 USE_PKGSRC_GCC d13861 1 a13862 1 USE_PKGTASKS d13865 1 a13866 1 USE_RUBY_EXTCONF d13869 1 a13870 1 USE_RUBY_SETUP d13873 1 a13874 1 USE_TOOLS d13877 1 a13878 1 UUCP_USER d13881 1 a13882 1 VARNAME d13885 1 a13886 1 WARNING_MSG d13889 1 a13890 1 WCALC_CGIPATH d13893 1 a13894 1 WCALC_HTMLPATH d13897 1 a13898 1 WRAPPER_CC d13901 1 a13902 1 WRKDIR d13905 1 a13906 1 WRKDIR_LOCKTYPE d13909 1 a13910 1 WRKOBJDIR d13913 1 a13914 1 X10_PORT d13917 1 a13918 1 X11BASE d13921 1 a13922 1 X11_TYPE d13925 1 a13926 1 X509_KEY d13929 1 a13930 1 XLOCK_DEFAULT_MODE d13933 1 a13934 1 XMKMF_FLAGS d13937 1 a13938 1 XXXX a14080 1 cvs d14082 1 a14084 1 declaration d14086 1 a14088 1 defined d14090 1 a14092 1 dependencies d14094 1 a14096 1 depends-checksum d14098 1 a14100 1 deps d14102 1 a14104 1 destdir d14106 1 a14108 1 distclean d14110 1 a14112 1 dl a14113 3 do-build d14126 1 a14126 1 do-install a14128 1 emul d14130 1 a14132 1 emul-fetch d14134 1 a14136 1 emulator a14137 2 a14138 1 endif d14174 1 a14174 1 fossil a14176 1 friend d14178 1 a14180 1 fts_close d14182 1 a14184 1 fts_read d14186 1 a14188 1 gcc d14190 1 a14192 1 gethostbyname d14194 1 a14196 1 getopt_long d14198 1 a14200 1 getservbyname d14202 1 a14204 1 getservent a14205 3 git a14208 1 gitlab d14210 1 a14212 1 gnu d14214 1 a14216 1 go d14218 1 a14220 1 golang d14222 1 a14224 1 hashbang a14225 2 a14226 1 hg d14286 1 a14286 1 lvalue d14289 1 a14290 1 makesum d14293 1 a14294 1 mercurial d14321 5 a14326 1 obstack_ptr_grow d14329 1 a14330 1 only d14333 1 a14334 1 options d14337 1 a14338 1 order d14341 1 a14342 1 override-intltool d14345 1 a14346 1 package d14349 1 a14350 1 path d14353 1 a14354 1 paxctl d14357 1 a14358 1 pc d14361 1 a14362 1 perl5 d14365 1 a14366 1 php d14369 1 a14370 1 pkg-config d14373 1 a14374 1 platform d14377 1 a14378 1 post-extract d14381 1 a14382 1 post-wrapper d14385 1 a14386 1 pre-configure d14389 1 a14390 1 pre-extract d14393 1 a14394 1 print-go-deps d14397 1 a14398 1 print-summary-data d14401 1 a14402 1 pypi d14405 1 a14406 1 r d14409 1 a14410 1 recv d14413 1 a14414 1 regcomp d14417 1 a14418 1 release-lock d14421 1 a14422 1 rename d14425 1 a14426 1 replace d14429 1 a14430 1 reproducible d14433 1 a14434 1 root d14437 1 a14438 1 send d14441 1 a14442 1 sendto d14445 1 a14446 1 setgid d14449 1 a14450 1 setuid d14453 1 a14454 1 shebang d14457 1 a14458 1 show-all d14461 1 a14462 1 show-depends d14465 1 a14466 1 show-distfiles d14469 1 a14470 1 show-subdir-var d14473 1 a14474 1 show-var d14477 1 a14478 1 snprintf d14481 1 a14482 1 ssp d14485 1 a14486 1 stage-install d14489 1 a14490 1 strict d14493 1 a14494 1 strndup d14497 1 a14498 1 strsep d14501 1 a14502 1 substitutions d14505 1 a14505 1 subversion a14512 1 svn d14514 1 a14516 1 test d14518 1 a14520 1 tex d14522 1 a14524 1 tmp d14526 1 a14528 1 tools d14530 1 a14532 1 type d14534 1 a14536 1 undefined d14538 1 a14540 1 unlimit d14542 1 a14544 1 unprivileged-install-hook d14546 1 a14548 1 update d14550 1 a14552 1 upload-distfiles d14554 1 a14556 1 user d14558 1 a14560 1 vasprintf d14562 1 a14564 1 vsnprintf d14566 1 a14568 1 warning d14570 1 a14572 1 warnx d14574 1 a14576 1 wattr_on d14578 1 a14580 1 wrapper d14582 1 @ 1.329 log @doc/pkgsrc.*: regen @ text @d5227 1 a5227 2 ../../lang/python/egg.mk, ../../lang/python/distutils.mk, or d5229 1 a5229 2

    Most Python packages use either distutils or easy-setup/setuptools (eggs). d5232 1 a5232 7 Otherwise, if the software uses distutils, include ../../lang/python/distutils.mk, so pkgsrc will use this framework. distutils uses a script called setup.py; if the distutils driver is not called setup.py, set the PYSETUP variable to the name of the script.

    d13821 1 a13821 1 TO d13824 1 a13825 1 TOOLS_ALWAYS_WRAP d13828 1 a13829 1 TOOLS_BROKEN d13832 1 a13833 1 TOOLS_CMDLINE_SED d13836 1 a13837 1 TOOLS_DIR d13840 1 a13841 1 TOOLS_GNU_MISSING d13844 1 a13845 1 TOOLS_NOOP d13848 1 a13849 1 TOOLS_SCRIPT d13852 1 a13853 1 TTF_FONTDIR d13856 1 a13857 1 TYPE d13860 1 a13861 1 UCSPI_SSL_GROUP d13864 1 a13865 1 UNLIMIT_RESOURCES d13868 1 a13869 1 UNPRIVILEGED_GROUP d13872 1 a13873 1 UNPRIVILEGED_USER d13876 1 a13877 1 UNWRAP_PATTERNS d13880 1 a13881 1 UPDATE_TARGET d13884 1 a13885 1 USERGROUP_PHASE d13888 1 a13889 1 USER_SPECIFIC_PKGS d13892 1 a13893 1 USE_APR d13896 1 a13897 1 USE_BUILTIN d13900 1 a13901 1 USE_CURSES d13904 1 a13905 1 USE_DB185 d13908 1 a13909 1 USE_GAMESGROUP d13912 1 a13913 1 USE_IMAKE d13916 1 a13917 1 USE_JAVA2 d13920 1 a13921 1 USE_LIBTOOL d13924 1 a13925 1 USE_NETBSD_REPO d13928 1 a13929 1 USE_PKGSRC_GCC_RUNTIME d13932 1 a13933 1 USE_PKG_ADMIN_DIGEST d13936 1 a13937 1 USE_RUBY_INSTALL d13940 1 a13941 1 USE_RUBY_SETUP_PKG d13944 1 a13945 1 UUCP_GROUP d13948 1 a13949 1 VARBASE d13952 1 a13953 1 VIM_EXTRA_OPTS d13956 1 a13957 1 WCALC_CGIDIR d13960 1 a13961 1 WCALC_HTMLDIR d13964 1 a13965 1 WDM_MANAGERS d13968 1 a13969 1 WRAPPER_REORDER_CMDS d13972 1 a13973 1 WRKDIR_BASENAME d13976 1 a13977 1 WRKLOG d13980 1 a13981 1 WRKSRC d13984 1 a13985 1 X11 d13988 1 a13989 1 X11_PKGSRCDIR d13992 1 a13993 1 X509_CERTIFICATE d13996 1 a13997 1 XAW_TYPE d14000 1 a14001 1 XMKMF d14004 1 a14005 1 XXX d14008 1 a14009 1 YES d14012 1 a14013 1 __stdc__ d14016 1 a14017 1 accept d14020 1 a14021 1 acquire-lock d14024 1 a14025 1 administrator d14028 1 a14029 1 alternatives d14032 1 a14033 1 asprintf d14036 1 a14037 1 autoconf d14040 1 a14041 1 autoreconf d14044 1 a14045 1 bash d14048 1 a14049 1 bin-install d14052 1 a14053 1 binpkg-list d14056 1 a14057 1 bootstrap-depends d14060 1 a14061 1 broken_on_platform d14064 1 a14065 1 bsd.prog.mk d14068 1 a14069 1 build-env d14072 1 a14073 1 buildlink-oss-soundcard-h d14076 1 a14077 1 c++ d14080 1 a14081 1 cce d14084 1 a14085 1 ceil d14088 1 a14089 1 changes-entry d14092 1 a14093 1 check d14096 1 a14097 1 check-files d14100 1 a14101 1 check-vulnerable d14104 1 a14105 1 checksum-phase d14108 1 a14109 1 clean-depends d14112 1 a14113 1 commit d14116 1 a14117 1 compact d14120 1 a14121 1 conf d14124 1 a14125 1 config.sub d14128 1 a14129 1 configure d14132 1 a14133 1 configure-help d14136 1 a14137 1 connect d14140 1 a14141 1 cputime d14144 1 a14145 1 csh d14148 1 a14149 1 cvs d14152 1 a14153 1 declaration d14156 1 a14157 1 defined d14160 1 a14161 1 dependencies d14164 1 a14165 1 depends-checksum d14168 1 a14169 1 deps d14172 1 a14173 1 destdir d14176 1 a14177 1 distclean d14180 1 a14181 1 dl d14184 1 a14185 1 do-build d14188 1 a14189 1 do-clean d14192 1 a14193 1 do-configure-post-hook d14196 1 a14197 1 do-fetch d14200 1 a14201 1 emul d14204 1 a14205 1 emul-fetch d14208 1 a14209 1 emulator d14212 1 a14213 1 endian d14216 1 a14217 1 enomem d14220 1 a14221 1 errx d14224 1 a14225 1 exp d14228 1 a14229 1 fabs d14232 1 a14233 1 features d14236 1 a14237 1 fetch-list d14240 1 a14241 1 forbids d14244 1 a14245 1 format d14248 1 a14249 1 fortify_source d14252 1 a14253 1 friend d14256 1 a14257 1 fts_close d14260 1 a14261 1 fts_read d14264 1 a14265 1 gcc d14268 1 a14269 1 gethostbyname d14272 1 a14273 1 getopt_long d14276 1 a14277 1 getservbyname d14280 1 a14281 1 getservent d14284 1 a14285 1 git d14288 1 a14289 1 gitlab d14292 1 a14293 1 gnu d14296 1 a14297 1 go d14300 1 a14301 1 golang d14304 1 a14305 1 hashbang d14308 1 a14309 1 help d14312 1 a14313 1 imake d14316 1 a14317 1 inet_aton d14320 1 a14321 1 interpreter d14324 1 a14325 1 ip4 d14328 1 a14329 1 ipv4 d14332 1 a14333 1 iso d14336 1 a14337 1 krb d14340 1 a14341 1 ksh d14344 1 a14345 1 latex d14348 1 a14349 1 libintl_gettext d14352 1 a14353 1 libnbcompat d14356 1 a14357 1 libtool d14360 1 a14361 1 license d14364 1 a14365 1 little-endian d14368 1 a14369 1 locking d14372 1 a14373 1 make d14376 1 a14377 1 memory d14380 1 a14381 1 meta d14384 1 a14385 1 meta_package d14388 1 a14389 1 mk.conf d14392 1 a14393 1 mount d14396 1 a14397 1 mremap d14400 1 a14401 1 nbcompat d14404 1 a14405 1 obstack d14408 1 a14409 1 occurs d14412 1 a14413 1 openblas d14416 1 a14417 1 options.mk d14420 1 a14421 1 override d14424 1 a14425 1 override-message-intltool d14428 1 a14429 1 parallel d14432 1 a14433 1 pax d14436 1 a14437 1 pbulk-index d14440 1 a14441 1 perl d14444 1 a14445 1 perms d14448 1 a14449 1 pkg-build-options d14452 1 a14453 1 pkg_build_options d14456 1 a14457 1 plist d14460 1 a14461 1 post-fetch d14464 1 a14465 1 pre-build-checks-hook d14468 1 a14469 1 pre-configure-checks-hook d14472 1 a14473 1 pre-fetch d14476 1 a14477 1 print-plist d14480 1 a14481 1 privileged-install-hook d14484 1 a14485 1 python d14488 1 a14489 1 readme-all d14492 1 a14493 1 recvfrom d14496 1 a14497 1 release-localbase-lock d14500 1 a14501 1 relro d14504 1 a14505 1 reorder d14508 1 a14509 1 replace_interpreter d14512 1 a14513 1 resolv d14516 1 a14517 1 ruby d14520 1 a14521 1 sendfile d14524 1 a14525 1 setenv d14528 1 a14529 1 setprogname d14532 1 a14533 1 sh d14536 1 a14537 1 show d14540 1 a14541 1 show-build-defs d14544 1 a14545 1 show-deps d14548 1 a14549 1 show-downlevel d14552 1 a14553 1 show-tools d14556 1 a14557 1 show-vars d14560 1 a14561 1 socket d14564 1 a14565 1 st_mode d14568 1 a14569 1 strcasestr d14572 1 a14573 1 strip d14576 1 a14577 1 strnlen d14580 1 a14581 1 subst d14584 1 a14585 1 subversion d14588 1 a14589 1 sunpro d14592 1 a14593 1 svn d14596 1 a14597 1 test d14600 1 a14601 1 tex d14604 1 a14605 1 tmp d14608 1 a14609 1 tools d14612 1 a14613 1 type d14616 1 a14617 1 undefined d14620 1 a14621 1 unlimit d14624 1 a14625 1 unprivileged-install-hook d14628 1 a14629 1 update d14632 1 a14633 1 upload-distfiles d14636 1 a14637 1 user d14640 1 a14641 1 vasprintf d14644 1 a14645 1 vsnprintf d14648 1 a14649 1 warning d14652 1 a14653 1 warnx d14656 1 a14657 1 wattr_on d14660 1 a14661 1 wrapper d14664 1 a14665 1   @ 1.328 log @doc/pkgsrc.*: regen @ text @d1028 1 a1028 1 2021Q3.

    d1054 2 a1055 2

    The tar file for the stable branch 2021Q3 is in the directory pkgsrc-2021Q3 and is also called pkgsrc.tar.gz.

    d1058 1 a1058 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2021Q3/pkgsrc.tar.gz
    d1073 1 a1073 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2021Q3 -P pkgsrc
    d1158 1
    a1158 1
    	-rpkgsrc-2021Q3 option.

    d11752 1 d11754 2 d11757 1 a11759 1 AMANDA_USER d11761 1 a11763 1 APACHE_GROUP d11765 1 a11767 1 APACHE_MODULE_SRC d11769 1 a11771 1 APACHE_PKG_PREFIX d11773 1 a11775 1 APACHE_SUEXEC_DOCROOT d11777 1 a11779 1 APPEND_ABI d11781 1 a11783 1 ARLA_CACHE d11785 1 a11787 1 AUTOCONF_REQD d11789 1 a11791 1 AUTOMAKE_REQD d11793 1 a11795 1 BDB185_DEFAULT d11797 1 a11799 1 BDB_ACCEPTED d11801 1 a11803 1 BDB_LIBS d11805 1 a11807 1 BINCIMAP_GROUP d11809 1 a11811 1 BIND_DIR d11813 1 a11815 1 BIND_USER d11817 1 a11819 1 BINPKG_SITES d11821 1 a11823 1 BISON_PKGDATADIR d11825 1 a11827 1 BLAS_ACCEPTED d11829 1 a11831 1 BLAS_INCLUDES d11833 1 a11835 1 BLAS_LIBS d11837 1 a11839 1 BOOTSTRAP_DEPENDS d11841 1 a11843 1 BROKEN d11845 1 a11847 1 BROKEN_ON_PLATFORM d11849 1 a11851 1 BSDXSRCDIR d11853 1 a11855 1 BUILDLINK_AUTO_DIRS d11857 1 a11859 1 BUILDLINK_CFLAGS d11861 1 d11864 1 a11864 1 BUILDLINK_CPPFLAGS d11956 1 d11958 2 d11961 1 a11963 1 CHECK_FILES d11965 1 a11967 1 CHECK_FILES_STRICT d11969 1 a11971 1 CHECK_HEADERS_SKIP d11973 1 a11975 1 CHECK_INTERPRETER_SKIP d11977 1 a11979 1 CHECK_PERMS_AUTOFIX d11981 1 a11983 1 CHECK_PORTABILITY d11985 1 a11987 1 CHECK_PORTABILITY_SKIP d11989 1 a11991 1 CHECK_RELRO_SKIP d11993 1 a11995 1 CHECK_SHLIBS d11997 1 a11999 1 CHECK_SHLIBS_SUPPORTED d12001 1 a12003 1 CHECK_SSP d12005 1 a12007 1 CHECK_SSP_SUPPORTED d12009 1 a12011 1 CHECK_STRIPPED_SKIP d12013 1 a12015 1 CHECK_WRKREF_EXTRA_DIRS d12017 1 a12019 1 CLAMAV_DBDIR d12021 1 a12023 1 CLAMAV_USER d12025 1 a12027 1 CLEANDEPENDS d12029 1 a12031 1 CMAKE_INSTALL_NAME_DIR d12033 1 a12035 1 CMAKE_MODULE_PATH_OVERRIDE d12037 1 a12039 1 CMAKE_PREFIX_PATH d12041 9 d12112 17 d12130 2 d12133 1 a12135 1 CYRUS_IDLE d12137 1 a12139 1 DAEMONTOOLS_GROUP d12141 1 a12143 1 DARWIN_NO_SYSTEM_LIBS d12145 1 a12147 1 DBUS_GROUP d12149 1 a12151 1 DEFANG_GROUP d12153 1 a12155 1 DEFAULT_ACCEPTABLE_LICENSES d12157 1 a12159 1 DEFAULT_IRC_SERVER d12161 1 a12163 1 DEF_UMASK d12165 1 a12167 1 DEINSTALL_SRC d12169 1 a12171 1 DELAYED_ERROR_MSG d12173 1 a12175 1 DEPENDS d12177 1 a12179 1 DEPENDS_TYPE d12181 1 a12183 1 DESTDIR_VARNAME d12185 1 a12187 1 DIGEST_REQD d12189 1 a12191 1 DISTFILES d12193 1 a12195 1 DISTNAME d12197 1 a12199 1 DIST_SUBDIR d12201 1 a12203 1 DJBDNS_CACHE_USER d12205 1 a12207 1 DJBDNS_LOG_USER d12209 1 a12211 1 DJBDNS_TINY_USER d12213 1 a12215 1 DL_AUTO_VARS d12217 1 a12219 1 DL_LDFLAGS d12221 1 a12223 1 DNS d12225 1 a12227 1 DOWNLOADED_DISTFILE d12229 1 a12231 1 DYNAMIC_SITES_CMD d12233 1 a12235 1 ECHO d12237 1 a12239 1 ELK_GUI d12241 1 a12243 1 EMULDIR d12245 1 a12247 1 EMULSUBDIRSLASH d12249 1 a12251 1 EMUL_DISTRO d12253 1 a12255 1 EMUL_IS_NATIVE d12257 1 a12259 1 EMUL_OPSYS d12261 1 a12263 1 EMUL_PLATFORM d12265 1 a12267 1 EMUL_PREFER d12269 1 a12271 1 EMUL_TYPE d12273 1 a12275 1 EXIM_GROUP d12277 1 a12279 1 EXPORT_SYMBOLS_LDFLAGS d12281 1 a12283 1 EXTRACT_CMD d12285 1 a12287 1 EXTRACT_DIR d12289 1 a12291 1 EXTRACT_ENV d12293 1 a12295 1 EXTRACT_OPTS d12297 1 a12299 1 EXTRACT_USING d12301 1 a12303 1 FAILOVER_FETCH d12305 1 a12307 1 FAKE_NCURSES d12309 1 a12311 1 FAM_ACCEPTED d12313 1 a12315 1 FAM_SERVER d12317 1 a12319 1 FEATURE_CPPFLAGS d12321 1 a12323 1 FEATURE_LIBS d12325 1 a12327 1 FETCH_BEFORE_ARGS d12329 1 a12331 1 FETCH_OUTPUT_ARGS d12333 1 a12335 1 FETCH_RESUME_ARGS d12337 1 a12339 1 FETCH_USE_IPV4_ONLY d12341 1 a12343 1 FILES_SUBST d12345 1 a12347 1 FIX_SYSTEM_HEADERS d12349 1 a12351 1 FLUXBOX_USE_KDE d12353 1 d12356 1 a12356 1 FLUXBOX_USE_XINERAMA d12364 8 d12448 20 d12505 3 d12509 1 a12511 1 HASKELL_ENABLE_LIBRARY_PROFILING d12513 1 a12515 1 HASKELL_OPTIMIZATION_LEVEL d12517 5 d12524 1 a12524 1 HEADER_TEMPLATES d12624 4 d12700 5 d12706 2 d12709 1 a12711 1 LOCALBASE_LOCKTYPE d12713 1 a12715 1 LOVE_DATA d12717 1 a12719 1 LOVE_VERSION d12721 1 a12723 1 LP64PLATFORMS d12725 1 a12727 1 MAILAGENT_DOMAIN d12729 1 a12731 1 MAILAGENT_FQDN d12733 1 d12736 1 a12736 1 MAJORDOMO_HOMEDIR d12821 3 d12825 1 a12827 1 MYSQL_CHARSET d12829 1 a12831 1 MYSQL_EXTRA_CHARSET d12833 1 a12835 1 MYSQL_USER d12837 1 a12839 1 MYSQL_VERSIONS_ACCEPTED d12841 1 a12843 1 MYSQL_VERSION_DEFAULT d12845 1 a12847 1 NAGIOSDIR d12849 1 a12851 1 NAGIOS_USER d12853 1 a12855 1 NATIVE_APPEND_ELF d12857 1 a12859 1 NATIVE_MACHINE_PLATFORM d12861 1 a12863 1 NBPAX_PROGRAM_PREFIX d12865 1 a12867 1 NMH_EDITOR d12869 1 a12871 1 NMH_PAGER d12873 1 a12875 1 NOTE d12877 1 a12879 1 NOT_PAX_ASLR_SAFE d12881 1 a12883 1 NO_BUILD d12885 1 a12887 1 NO_CONFIGURE d12889 1 a12891 1 NS_PREFERRED d12893 1 a12895 1 NULLMAILER_USER d12897 1 a12899 1 OASIS_BUILD_ARGS d12901 1 a12903 1 OBJMACHINE d12905 1 a12907 1 OCAML_FINDLIB_REGISTER d12909 1 a12911 1 OCAML_SITELIBDIR d12913 1 a12915 1 OCAML_USE_DUNE d12917 1 a12919 1 OCAML_USE_JBUILDER d12921 1 a12923 1 OCAML_USE_OASIS_DYNRUN d12925 1 a12927 1 OCAML_USE_OPT_COMPILER d12929 1 a12931 1 OMF d12933 1 a12935 1 ONLY_FOR_PLATFORM d12937 1 a12939 1 OPENSSH_GROUP d12941 1 a12943 1 OPSYS d12945 1 a12947 1 OPSYS_VERSION d12949 1 a12951 1 OSS_TYPE d12953 5 a12959 1 OSX_TOLERATE_SDK_SKEW d12961 1 a12963 1 OS_VERSION d12965 1 a12967 1 OVERRIDE_DIRDEPTH d12969 1 d12972 1 a12972 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13020 8 d13409 4 d13425 3 d13429 1 a13431 1 READLINE_DEFAULT d13433 1 a13435 1 REAL_ROOT_GROUP d13437 1 a13439 1 RECURSIVE_MAKE d13441 1 a13443 1 RELRO_SUPPORTED d13445 1 a13447 1 REPLACE_BASH d13449 1 a13451 1 REPLACE_KSH d13453 1 a13455 1 REPLACE_PERL6 d13457 1 a13459 1 REPLACE_PYTHON d13461 1 a13463 1 REPLACE_RUBY d13465 1 a13467 1 REPLACE_RUBY_PAT d13469 1 a13471 1 REPLACE_TEXLUA d13473 1 a13475 1 REQD_DIRS_PERMS d13477 1 a13479 1 REQD_FILES_MODE d13481 1 a13483 1 RESOLV_AUTO_VARS d13485 1 a13487 1 RESOLV_LIBS d13489 1 d13492 1 d13494 2 d13497 1 a13499 1 ROOT_USER d13501 1 a13503 1 RPM d13505 1 a13507 1 RPM2PKG_PREFIX d13509 1 a13511 1 RPM2PKG_STRIP d13513 1 a13515 1 RPMFILES d13517 1 a13519 1 RPM_DB_PREFIX d13521 1 a13523 1 RSSH_RDIST_PATH d13525 1 a13527 1 RSSH_SCP_PATH d13529 1 a13531 1 RUBY d13533 1 a13535 1 RUBYGEM_NAME d13537 1 a13539 1 RUBYGEM_VERBOSE d13541 1 a13543 1 RUBY_ARCH d13545 1 a13547 1 RUBY_ARCHLIB d13549 1 a13551 1 RUBY_BASERIDIR d13553 1 a13555 1 RUBY_DLEXT d13557 1 a13559 1 RUBY_DYNAMIC_DIRS d13561 1 a13563 1 RUBY_ENCODING_ARG d13565 1 a13567 1 RUBY_EXTCONF_CHECK d13569 1 a13571 1 RUBY_EXTCONF_MAKEFILE d13573 1 a13575 1 RUBY_INC d13577 1 a13579 1 RUBY_LIB_BASE d13581 1 a13583 1 RUBY_NOVERSION d13585 1 a13587 1 RUBY_RAILS d13589 1 a13591 1 RUBY_RAILS60_VERSION d13593 1 a13595 1 RUBY_RAILS70_VERSION d13597 1 a13599 1 RUBY_RAILS_DEFAULT d13601 1 a13603 1 RUBY_RAILS_STRICT_DEP d13605 1 a13607 1 RUBY_SETUP d13609 1 a13611 1 RUBY_SHLIBALIAS d13613 1 a13615 1 RUBY_SIMPLE_INSTALL d13617 1 a13619 1 RUBY_SITELIB d13621 1 a13623 1 RUBY_SITERIDIR d13625 1 a13627 1 RUBY_SRCDIR d13629 1 a13631 1 RUBY_SUFFIX d13633 1 a13635 1 RUBY_USE_PTHREAD d13637 1 a13639 1 RUBY_VENDORLIB d13641 1 a13643 1 RUBY_VER d13645 1 a13647 1 RUBY_VERSIONS_ACCEPTED d13649 1 a13651 1 RUBY_VERSION_DEFAULT d13653 1 a13655 1 RUBY_VER_DIR d13657 1 a13659 1 RUN_LDCONFIG d13661 1 a13663 1 SCO d13665 1 a13667 1 SCREWS_USER d13669 1 a13671 1 SCROLLKEEPER_DATADIR d13673 1 a13675 1 SCROLLKEEPER_UPDATEDB d13677 1 a13679 1 SERIAL_DEVICES d13681 1 a13683 1 SETGID_GAMES_PERMS d13685 1 a13687 1 SH d13689 1 d13776 8 d13861 3 d13865 1 a13867 1 TYPE d13869 1 a13871 1 UCSPI_SSL_GROUP d13873 1 a13875 1 UNLIMIT_RESOURCES d13877 1 a13879 1 UNPRIVILEGED_GROUP d13881 1 a13883 1 UNPRIVILEGED_USER d13885 1 a13887 1 UNWRAP_PATTERNS d13889 1 a13891 1 UPDATE_TARGET d13893 1 a13895 1 USERGROUP_PHASE d13897 1 a13899 1 USER_SPECIFIC_PKGS d13901 1 a13903 1 USE_APR d13905 1 a13907 1 USE_BUILTIN d13909 1 a13911 1 USE_CURSES d13913 1 a13915 1 USE_DB185 d13917 1 a13919 1 USE_GAMESGROUP d13921 1 a13923 1 USE_IMAKE d13925 1 a13927 1 USE_JAVA2 d13929 1 a13931 1 USE_LIBTOOL d13933 1 a13935 1 USE_NETBSD_REPO d13937 1 a13939 1 USE_PKGSRC_GCC_RUNTIME d13941 1 a13943 1 USE_PKG_ADMIN_DIGEST d13945 1 a13947 1 USE_RUBY_INSTALL d13949 1 a13951 1 USE_RUBY_SETUP_PKG d13953 1 a13955 1 UUCP_GROUP d13957 1 a13959 1 VARBASE d13961 1 a13963 1 VIM_EXTRA_OPTS d13965 1 a13967 1 WCALC_CGIDIR d13969 1 a13971 1 WCALC_HTMLDIR d13973 1 a13975 1 WDM_MANAGERS d13977 1 a13979 1 WRAPPER_REORDER_CMDS d13981 1 a13983 1 WRKDIR_BASENAME d13985 1 a13987 1 WRKLOG d13989 1 a13991 1 WRKSRC d13993 1 a13995 1 X11 d13997 1 a13999 1 X11_PKGSRCDIR d14001 1 a14003 1 X509_CERTIFICATE d14005 1 a14007 1 XAW_TYPE d14009 1 a14011 1 XMKMF d14013 1 d14016 1 a14016 1 XXX d14157 3 d14161 1 a14163 1 declaration d14165 1 a14167 1 defined d14169 1 a14171 1 dependencies d14173 1 a14175 1 depends-checksum d14177 1 a14179 1 deps d14181 1 a14183 1 destdir d14185 1 a14187 1 distclean d14189 1 a14191 1 dl d14193 1 a14195 1 do-build d14197 1 a14199 1 do-clean d14201 1 a14203 1 do-configure-post-hook d14205 1 d14208 1 a14208 1 do-fetch d14224 1 d14226 2 d14229 1 a14231 1 errx d14233 1 a14235 1 exp d14237 1 a14239 1 fabs d14241 1 a14243 1 features d14245 1 a14247 1 fetch-list d14249 1 a14251 1 forbids d14253 1 a14255 1 format d14257 1 d14260 1 a14260 1 fortify_source d14293 3 d14297 1 d14320 1 d14322 2 d14325 1 a14327 1 inet_aton d14329 1 a14331 1 interpreter d14333 1 a14335 1 ip4 d14337 1 a14339 1 ipv4 d14341 1 a14343 1 iso d14345 1 a14347 1 krb d14349 1 a14351 1 ksh d14353 1 a14355 1 latex d14357 1 a14359 1 libintl_gettext d14361 1 a14363 1 libnbcompat d14365 1 a14367 1 libtool d14369 1 a14371 1 license d14373 1 a14375 1 little-endian d14377 1 a14379 1 locking d14381 1 a14383 1 make d14385 1 d14388 1 a14388 1 memory d14593 3 d14597 1 a14599 1 sunpro d14601 1 @ 1.327 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.40 2021/10/01 17:20:27 nia Exp $

    a11751 1 ALSA_PC d11753 1 a11755 1 AMANDA_TMP d11757 1 a11759 1 AMANDA_VAR d11761 1 a11763 1 APACHE_MODULE_NAME d11765 1 a11767 1 APACHE_MODULE_SRCDIR d11769 1 a11771 1 APACHE_SUEXEC_CONFIGURE_ARGS d11773 1 a11775 1 APACHE_USER d11777 1 a11779 1 APPEND_ELF d11781 1 a11783 1 AUDIT_PACKAGES_FLAGS d11785 1 a11787 1 AUTOMAKE_OVERRIDE d11789 1 a11791 1 AUTO_MKDIRS d11793 1 a11795 1 BDBBASE d11797 1 a11799 1 BDB_DEFAULT d11801 1 a11803 1 BDB_TYPE d11805 1 a11807 1 BINCIMAP_USER d11809 1 a11811 1 BIND_GROUP d11813 1 a11815 1 BINOWN d11817 1 a11819 1 BIN_INSTALL_FLAGS d11821 1 a11823 1 BLAS d11825 1 a11827 1 BLAS_C_INTERFACE d11829 1 a11831 1 BLAS_INDEX64 d11833 1 a11835 1 BLAS_TYPE d11837 1 a11839 1 BOOTSTRAP_SETUPTOOLS d11841 1 a11843 1 BROKEN_EXCEPT_ON_PLATFORM d11845 1 a11847 1 BSDSRCDIR d11849 1 a11851 1 BSD_MAKE_ENV d11853 1 a11855 1 BUILDLINK_AUTO_VARS d11857 1 a11859 1 BUILDLINK_CONTENTS_FILTER a11860 3 BUILDLINK_DEPMETHOD a11951 1 CHECKOUT_DATE d11953 1 a11955 1 CHECK_FAKEHOME d11957 1 a11959 1 CHECK_FILES_SKIP d11961 1 a11963 1 CHECK_HEADERS d11965 1 a11967 1 CHECK_INTERPRETER d11969 1 a11971 1 CHECK_PERMS d11973 1 a11975 1 CHECK_PERMS_SKIP d11977 1 a11979 1 CHECK_PORTABILITY_EXPERIMENTAL d11981 1 a11983 1 CHECK_RELRO d11985 1 a11987 1 CHECK_RELRO_SUPPORTED d11989 1 a11991 1 CHECK_SHLIBS_SKIP d11993 1 a11995 1 CHECK_SHLIBS_TOXIC d11997 1 a11999 1 CHECK_SSP_SKIP d12001 1 a12003 1 CHECK_STRIPPED d12005 1 a12007 1 CHECK_WRKREF d12009 1 a12011 1 CHECK_WRKREF_SKIP d12013 1 a12015 1 CLAMAV_GROUP d12017 1 a12019 1 CLANGBASE d12021 1 a12023 1 CMAKE_DEPENDENCIES_REWRITE d12025 1 a12027 1 CMAKE_INSTALL_PREFIX d12029 1 a12031 1 CMAKE_PKGSRC_BUILD_FLAGS a12032 2 a12033 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12095 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12097 1 a12099 1 CYRUS_GROUP d12101 1 a12103 1 CYRUS_USER d12105 1 a12107 1 DAEMONTOOLS_LOG_USER d12109 1 a12111 1 DARWIN_REQUIRES_FILTER d12113 1 a12115 1 DBUS_USER d12117 1 a12119 1 DEFANG_USER d12121 1 a12123 1 DEFAULT_DISTFILES d12125 1 a12127 1 DEFAULT_SERIAL_DEVICE d12129 1 a12131 1 DEINSTALLDEPENDS d12133 1 a12135 1 DEINSTALL_TEMPLATES d12137 1 a12139 1 DELAYED_WARNING_MSG d12141 1 a12143 1 DEPENDS_TARGET d12145 1 a12147 1 DESTDIR d12149 1 a12151 1 DIALER_GROUP d12153 1 a12155 1 DISTDIR d12157 1 a12159 1 DISTINFO_FILE d12161 1 a12163 1 DIST_PATH d12165 1 a12167 1 DJBDNS_AXFR_USER d12169 1 a12171 1 DJBDNS_DJBDNS_GROUP d12173 1 a12175 1 DJBDNS_RBL_USER d12177 1 a12179 1 DLOPEN_REQUIRE_PTHREADS d12181 1 a12183 1 DL_CFLAGS d12185 1 a12187 1 DL_LIBS d12189 1 a12191 1 DOCOWN d12193 1 a12195 1 DT_LAYOUT d12197 1 a12199 1 DYNAMIC_SITES_SCRIPT d12201 1 a12203 1 ECHO_N d12205 1 a12207 1 EMACS_TYPE d12209 1 a12211 1 EMULSUBDIR d12213 1 a12215 1 EMUL_ARCH d12217 1 a12219 1 EMUL_EXEC_FMT d12221 1 a12223 1 EMUL_MODULES d12225 1 a12227 1 EMUL_PKG_FMT d12229 1 a12231 1 EMUL_PLATFORMS d12233 1 a12235 1 EMUL_REQD d12237 1 a12239 1 ERROR_MSG d12241 1 a12243 1 EXIM_USER d12245 1 a12247 1 EXTRACTOR d12249 1 a12251 1 EXTRACT_CMD_DEFAULT d12253 1 a12255 1 EXTRACT_ELEMENTS d12257 1 a12259 1 EXTRACT_ONLY d12261 1 a12263 1 EXTRACT_SUFX d12265 1 a12267 1 FAIL d12269 1 a12271 1 FAIL_MSG d12273 1 a12275 1 FAM d12277 1 a12279 1 FAM_DEFAULT d12281 1 a12283 1 FCPATH d12285 1 a12287 1 FEATURE_LDFLAGS d12289 1 a12291 1 FETCH_AFTER_ARGS d12293 1 a12295 1 FETCH_CMD d12297 1 a12299 1 FETCH_PROXY d12301 1 a12303 1 FETCH_TIMEOUT d12305 1 a12307 1 FETCH_USING d12309 1 a12311 1 FILES_SUBST_SED d12313 1 a12315 1 FLUXBOX_USE_GNOME d12317 1 a12319 1 FLUXBOX_USE_XFT a12320 3 FONTDIR a12327 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12403 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12441 1 a12441 1 HASKELL_COMPILER a12443 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12445 1 a12447 1 HASKELL_ENABLE_SHARED_LIBRARY d12449 1 a12451 1 HAS_CONFIGURE a12452 7 HG_REPO HG_REPOSITORIES HG_TAG a12551 4 JAVA_APP_PATH JAVA_APP_TARGETS a12623 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12625 1 a12627 1 LOCALBASE d12629 1 a12631 1 LOCALPATCHES d12633 1 a12635 1 LOVE_GAME d12637 1 a12639 1 LP32PLATFORMS d12641 1 a12643 1 MACHINE_PLATFORM d12645 1 a12647 1 MAILAGENT_EMAIL d12649 1 a12651 1 MAILAGENT_ORGANIZATION a12652 3 MAJOR_OS_VERSION d12737 1 a12737 1 MUST a12739 1 MV d12741 1 a12743 1 MYSQL_DATADIR d12745 1 a12747 1 MYSQL_GROUP d12749 1 a12751 1 MYSQL_VERSION d12753 1 a12755 1 MYSQL_VERSIONS_ALL d12757 1 a12759 1 NAGIOSCMD_GROUP d12761 1 a12763 1 NAGIOS_GROUP d12765 1 a12767 1 NATIVE_APPEND_ABI d12769 1 a12771 1 NATIVE_EXEC_FMT d12773 1 a12775 1 NATIVE_OBJECT_FMT d12777 1 a12779 1 NETBSD_LOGIN_NAME d12781 1 a12783 1 NMH_MTA d12785 1 a12787 1 NOLOGIN d12789 1 a12791 1 NOT_FOR_PLATFORM d12793 1 a12795 1 NOT_PAX_MPROTECT_SAFE d12797 1 a12799 1 NO_CHECKSUM d12801 1 a12803 1 NO_SKIP d12805 1 a12807 1 NULLMAILER_GROUP d12809 1 a12811 1 OASIS d12813 1 a12815 1 OBJHOSTNAME d12817 1 a12819 1 OCAML_FINDLIB_DIRS d12821 1 a12823 1 OCAML_FINDLIB_REGISTER_VERBOSE d12825 1 a12827 1 OCAML_TOPKG_DOCDIR d12829 1 a12831 1 OCAML_USE_FINDLIB d12833 1 a12835 1 OCAML_USE_OASIS d12837 1 a12839 1 OCAML_USE_OPAM d12841 1 a12843 1 OCAML_USE_TOPKG d12845 1 a12847 1 ONLY_FOR_COMPILER d12849 1 a12851 1 OPENSSH_CHROOT d12853 1 a12855 1 OPENSSH_USER d12857 1 a12859 1 OPSYS_EMULDIR d12861 1 a12863 1 OS d12865 1 a12867 1 OSX d12869 1 a12871 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d12873 1 a12875 1 OTF_FONTS_DIR d12877 1 a12879 1 OVERRIDE_GEMSPEC a12880 3 OVERRIDE_ROCKSPEC a12927 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13308 4 RCD_DIR RCD_ORDER d13321 1 a13321 1 RCD_SUBR a13323 1 RDOC d13325 1 a13327 1 READLINE_TYPE d13329 1 a13331 1 REAL_ROOT_USER d13333 1 a13335 1 RELAY_CTRL_DIR d13337 1 a13339 1 REPLACE_AWK d13341 1 a13343 1 REPLACE_CSH d13345 1 a13347 1 REPLACE_PERL d13349 1 a13351 1 REPLACE_PHP d13353 1 a13355 1 REPLACE_R d13357 1 a13359 1 REPLACE_RUBY_DIRS d13361 1 a13363 1 REPLACE_SH d13365 1 a13367 1 REQD_DIRS d13369 1 a13371 1 REQD_FILES d13373 1 a13375 1 REQD_FILES_PERMS d13377 1 a13379 1 RESOLV_LDFLAGS a13380 2 a13381 1 ROCKSPEC_NAME a13383 1 ROCKSPEC_SPECFILE d13385 1 a13387 1 ROOT_GROUP d13389 1 a13391 1 RPCGEN d13393 1 a13395 1 RPM2PKG_PLIST d13397 1 a13399 1 RPM2PKG_STAGE d13401 1 a13403 1 RPM2PKG_SUBPREFIX d13405 1 a13407 1 RPMIGNOREPATH d13409 1 a13411 1 RSSH_CVS_PATH d13413 1 a13415 1 RSSH_RSYNC_PATH d13417 1 a13419 1 RSSH_SFTP_SERVER_PATH d13421 1 a13423 1 RUBYGEM d13425 1 a13427 1 RUBYGEM_OPTIONS d13429 1 a13431 1 RUBY_ABI_VERSION d13433 1 a13435 1 RUBY_ARCHINC d13437 1 a13439 1 RUBY_BASE d13441 1 a13443 1 RUBY_BUILD_DOCUMENT d13445 1 a13447 1 RUBY_DOC d13449 1 a13451 1 RUBY_EG d13453 1 a13455 1 RUBY_EXTCONF d13457 1 a13459 1 RUBY_EXTCONF_DEBUG d13461 1 a13463 1 RUBY_GEM_BASE d13465 1 a13467 1 RUBY_LIB d13469 1 a13471 1 RUBY_NAME d13473 1 a13475 1 RUBY_PKGPREFIX d13477 1 a13479 1 RUBY_RAILS52_VERSION d13481 1 d13484 1 a13484 1 RUBY_RAILS61_VERSION a13579 1 SHORTNAME d13581 1 a13583 1 SILC_CLIENT_WITH_PERL d13585 1 a13587 1 SKIP_DEPENDS d13589 1 a13591 1 SMF_MANIFEST d13593 1 a13595 1 SMF_METHOD_SHELL d13597 1 a13599 1 SMF_NAME d13601 1 a13603 1 SMF_SRCDIR d13605 1 a13607 1 SNIPROXY_USER d13609 1 a13611 1 SPECIAL_PERMS d13613 1 a13615 1 SSH_SUID d13617 1 a13619 1 SSYNC_PAWD d13621 1 a13623 1 STRIP d13625 1 a13627 1 STRIP_DEBUG d13629 1 a13631 1 STRIP_FILES_SKIP d13633 1 a13635 1 SUBDIR d13637 1 a13639 1 SUBST_CLASSES d13641 1 a13643 1 SUBST_FILTER_CMD d13645 1 a13647 1 SUBST_NOOP_OK d13649 1 a13651 1 SUBST_SHOW_DIFF d13653 1 a13655 1 SUBST_STAGE d13657 1 a13659 1 SUNWSPROBASE a13660 2 a13661 1 SVN_EXTRACTDIR a13663 5 SVN_REPO SVN_REPOSITORIES SVN_REVISION d13665 1 a13667 1 TBL d13669 1 a13671 1 TERMINFO_DEFAULT d13673 1 a13675 1 TEST d13677 1 a13679 1 TEST_DIRS d13681 1 a13683 1 TEST_ENV_SHELL d13685 1 a13687 1 TEST_MAKE_FLAGS d13689 1 a13691 1 TEXLIVE_IGNORE_PATTERNS d13693 1 a13695 1 TEXLIVE_UNVERSIONED d13697 1 a13699 1 TEX_FORMATS d13701 1 a13703 1 TEX_HYPHEN_DEF d13705 1 a13707 1 THTTPD_LOG_FACILITY d13709 1 a13711 1 TO d13713 1 a13715 1 TOOLS_ALWAYS_WRAP d13717 1 a13719 1 TOOLS_BROKEN d13721 1 a13723 1 TOOLS_CMDLINE_SED d13725 1 a13727 1 TOOLS_DIR d13729 1 a13731 1 TOOLS_GNU_MISSING d13733 1 a13735 1 TOOLS_NOOP d13737 1 a13739 1 TOOLS_SCRIPT a13740 3 TTF_FONTDIR d13893 1 a13893 1 XXXX a13895 1 YES d13897 1 a13899 1 __stdc__ d13901 1 a13903 1 accept d13905 1 a13907 1 acquire-lock d13909 1 a13911 1 administrator d13913 1 a13915 1 alternatives d13917 1 a13919 1 asprintf d13921 1 a13923 1 autoconf d13925 1 a13927 1 autoreconf d13929 1 a13931 1 bash d13933 1 a13935 1 bin-install d13937 1 a13939 1 binpkg-list d13941 1 a13943 1 bootstrap-depends d13945 1 a13947 1 broken_on_platform d13949 1 a13951 1 bsd.prog.mk d13953 1 a13955 1 build-env d13957 1 a13959 1 buildlink-oss-soundcard-h d13961 1 a13963 1 c++ d13965 1 a13967 1 cce d13969 1 a13971 1 ceil d13973 1 a13975 1 changes-entry d13977 1 a13979 1 check d13981 1 a13983 1 check-files d13985 1 a13987 1 check-vulnerable d13989 1 a13991 1 checksum-phase d13993 1 a13995 1 clean-depends d13997 1 a13999 1 commit d14001 1 a14003 1 compact d14005 1 a14007 1 conf d14009 1 a14011 1 config.sub d14013 1 a14015 1 configure d14017 1 a14019 1 configure-help d14021 1 a14023 1 connect d14025 1 a14027 1 cputime d14029 1 a14031 1 csh a14032 3 cvs d14081 1 a14081 1 do-install a14083 1 emul d14085 1 a14087 1 emul-fetch d14089 1 a14091 1 emulator a14092 2 a14093 1 endif d14129 1 a14129 1 fossil a14131 1 friend d14133 1 a14135 1 fts_close d14137 1 a14139 1 fts_read d14141 1 a14143 1 gcc d14145 1 a14147 1 gethostbyname d14149 1 a14151 1 getopt_long d14153 1 a14155 1 getservbyname d14157 1 a14159 1 getservent a14160 3 git a14163 1 gitlab d14165 1 a14167 1 gnu d14169 1 a14171 1 go d14173 1 a14175 1 golang d14177 1 a14179 1 hashbang a14180 2 a14181 1 hg d14249 1 a14249 1 mercurial a14251 1 meta d14253 1 a14255 1 meta_package d14257 1 a14259 1 mk.conf d14261 1 a14263 1 mount d14265 1 a14267 1 mremap d14269 1 a14271 1 nbcompat d14273 1 a14275 1 obstack d14277 1 a14279 1 occurs d14281 1 a14283 1 openblas d14285 1 a14287 1 options.mk d14289 1 a14291 1 override d14293 1 a14295 1 override-message-intltool d14297 1 a14299 1 parallel d14301 1 a14303 1 pax d14305 1 a14307 1 pbulk-index d14309 1 a14311 1 perl d14313 1 a14315 1 perms d14317 1 a14319 1 pkg-build-options d14321 1 a14323 1 pkg_build_options d14325 1 a14327 1 plist d14329 1 a14331 1 post-fetch d14333 1 a14335 1 pre-build-checks-hook d14337 1 a14339 1 pre-configure-checks-hook d14341 1 a14343 1 pre-fetch d14345 1 a14347 1 print-plist d14349 1 a14351 1 privileged-install-hook d14353 1 a14355 1 python d14357 1 a14359 1 readme-all d14361 1 a14363 1 recvfrom d14365 1 a14367 1 release-localbase-lock d14369 1 a14371 1 relro d14373 1 a14375 1 reorder d14377 1 a14379 1 replace_interpreter d14381 1 a14383 1 resolv d14385 1 a14387 1 ruby d14389 1 a14391 1 sendfile d14393 1 a14395 1 setenv d14397 1 a14399 1 setprogname d14401 1 a14403 1 sh d14405 1 a14407 1 show d14409 1 a14411 1 show-build-defs d14413 1 a14415 1 show-deps d14417 1 a14419 1 show-downlevel d14421 1 a14423 1 show-tools d14425 1 a14427 1 show-vars d14429 1 a14431 1 socket d14433 1 a14435 1 st_mode d14437 1 a14439 1 strcasestr d14441 1 a14443 1 strip d14445 1 a14447 1 strnlen d14449 1 a14451 1 subst a14452 3 subversion a14459 1 svn d14461 1 a14463 1 test d14465 1 a14467 1 tex d14469 1 a14471 1 tmp d14473 1 a14475 1 tools d14477 1 a14479 1 type d14481 1 a14483 1 undefined d14485 1 a14487 1 unlimit d14489 1 a14491 1 unprivileged-install-hook d14493 1 a14495 1 update d14497 1 a14499 1 upload-distfiles d14501 1 a14503 1 user d14505 1 a14507 1 vasprintf d14509 1 a14511 1 vsnprintf d14513 1 a14515 1 warning d14517 1 a14519 1 warnx d14521 1 a14523 1 wattr_on d14525 1 a14527 1 wrapper d14529 1 @ 1.326 log @doc/pkgsrc.*: regen @ text @d8486 9 a8494 2 currently are c, c++, and fortran (and any combination). The default is d10701 1 a10701 2 LOWER_OS_VERSION, LOWER_VENDOR, d11752 1 d11754 2 d11757 1 a11759 1 AMANDA_USER d11761 1 a11763 1 APACHE_GROUP d11765 1 a11767 1 APACHE_MODULE_SRC d11769 1 a11771 1 APACHE_PKG_PREFIX d11773 1 a11775 1 APACHE_SUEXEC_DOCROOT d11777 1 a11779 1 APPEND_ABI d11781 1 a11783 1 ARLA_CACHE d11785 1 a11787 1 AUTOCONF_REQD d11789 1 a11791 1 AUTOMAKE_REQD d11793 1 a11795 1 BDB185_DEFAULT d11797 1 a11799 1 BDB_ACCEPTED d11801 1 a11803 1 BDB_LIBS d11805 1 a11807 1 BINCIMAP_GROUP d11809 1 a11811 1 BIND_DIR d11813 1 a11815 1 BIND_USER d11817 1 a11819 1 BINPKG_SITES d11821 1 a11823 1 BISON_PKGDATADIR d11825 1 a11827 1 BLAS_ACCEPTED d11829 1 a11831 1 BLAS_INCLUDES d11833 1 a11835 1 BLAS_LIBS d11837 1 a11839 1 BOOTSTRAP_DEPENDS d11841 1 a11843 1 BROKEN d11845 1 a11847 1 BROKEN_ON_PLATFORM d11849 1 a11851 1 BSDXSRCDIR d11853 1 a11855 1 BUILDLINK_AUTO_DIRS d11857 1 a11859 1 BUILDLINK_CFLAGS d11861 1 d11864 1 a11864 1 BUILDLINK_CPPFLAGS d11956 1 d11958 2 d11961 1 a11963 1 CHECK_FILES d11965 1 a11967 1 CHECK_FILES_STRICT d11969 1 a11971 1 CHECK_HEADERS_SKIP d11973 1 a11975 1 CHECK_INTERPRETER_SKIP d11977 1 a11979 1 CHECK_PERMS_AUTOFIX d11981 1 a11983 1 CHECK_PORTABILITY d11985 1 a11987 1 CHECK_PORTABILITY_SKIP d11989 1 a11991 1 CHECK_RELRO_SKIP d11993 1 a11995 1 CHECK_SHLIBS d11997 1 a11999 1 CHECK_SHLIBS_SUPPORTED d12001 1 a12003 1 CHECK_SSP d12005 1 a12007 1 CHECK_SSP_SUPPORTED d12009 1 a12011 1 CHECK_STRIPPED_SKIP d12013 1 a12015 1 CHECK_WRKREF_EXTRA_DIRS d12017 1 a12019 1 CLAMAV_DBDIR d12021 1 a12023 1 CLAMAV_USER d12025 1 a12027 1 CLEANDEPENDS d12029 1 a12031 1 CMAKE_INSTALL_NAME_DIR d12033 1 a12035 1 CMAKE_MODULE_PATH_OVERRIDE d12037 1 a12039 1 CMAKE_PREFIX_PATH d12041 9 d12112 17 d12130 2 d12133 1 a12135 1 CYRUS_IDLE d12137 1 a12139 1 DAEMONTOOLS_GROUP d12141 1 a12143 1 DARWIN_NO_SYSTEM_LIBS d12145 1 a12147 1 DBUS_GROUP d12149 1 a12151 1 DEFANG_GROUP d12153 1 a12155 1 DEFAULT_ACCEPTABLE_LICENSES d12157 1 a12159 1 DEFAULT_IRC_SERVER d12161 1 a12163 1 DEF_UMASK d12165 1 a12167 1 DEINSTALL_SRC d12169 1 a12171 1 DELAYED_ERROR_MSG d12173 1 a12175 1 DEPENDS d12177 1 a12179 1 DEPENDS_TYPE d12181 1 a12183 1 DESTDIR_VARNAME d12185 1 a12187 1 DIGEST_REQD d12189 1 a12191 1 DISTFILES d12193 1 a12195 1 DISTNAME d12197 1 a12199 1 DIST_SUBDIR d12201 1 a12203 1 DJBDNS_CACHE_USER d12205 1 a12207 1 DJBDNS_LOG_USER d12209 1 a12211 1 DJBDNS_TINY_USER d12213 1 a12215 1 DL_AUTO_VARS d12217 1 a12219 1 DL_LDFLAGS d12221 1 a12223 1 DNS d12225 1 a12227 1 DOWNLOADED_DISTFILE d12229 1 a12231 1 DYNAMIC_SITES_CMD d12233 1 a12235 1 ECHO d12237 1 a12239 1 ELK_GUI d12241 1 a12243 1 EMULDIR d12245 1 a12247 1 EMULSUBDIRSLASH d12249 1 a12251 1 EMUL_DISTRO d12253 1 a12255 1 EMUL_IS_NATIVE d12257 1 a12259 1 EMUL_OPSYS d12261 1 a12263 1 EMUL_PLATFORM d12265 1 a12267 1 EMUL_PREFER d12269 1 a12271 1 EMUL_TYPE d12273 1 a12275 1 EXIM_GROUP d12277 1 a12279 1 EXPORT_SYMBOLS_LDFLAGS d12281 1 a12283 1 EXTRACT_CMD d12285 1 a12287 1 EXTRACT_DIR d12289 1 a12291 1 EXTRACT_ENV d12293 1 a12295 1 EXTRACT_OPTS d12297 1 a12299 1 EXTRACT_USING d12301 1 a12303 1 FAILOVER_FETCH d12305 1 a12307 1 FAKE_NCURSES d12309 1 a12311 1 FAM_ACCEPTED d12313 1 a12315 1 FAM_SERVER d12317 1 a12319 1 FEATURE_CPPFLAGS d12321 1 a12323 1 FEATURE_LIBS d12325 1 a12327 1 FETCH_BEFORE_ARGS d12329 1 a12331 1 FETCH_OUTPUT_ARGS d12333 1 a12335 1 FETCH_RESUME_ARGS d12337 1 a12339 1 FETCH_USE_IPV4_ONLY d12341 1 a12343 1 FILES_SUBST d12345 1 a12347 1 FIX_SYSTEM_HEADERS d12349 1 a12351 1 FLUXBOX_USE_KDE d12353 1 d12356 1 a12356 1 FLUXBOX_USE_XINERAMA d12364 8 d12448 20 d12505 3 d12509 1 a12511 1 HASKELL_ENABLE_LIBRARY_PROFILING d12513 1 a12515 1 HASKELL_OPTIMIZATION_LEVEL d12517 5 d12524 1 a12524 1 HEADER_TEMPLATES d12624 4 d12672 1 a12673 1 LEAFNODE_GROUP d12676 1 a12677 1 LIBDVDCSS_HOMEPAGE d12680 1 d12682 2 d12685 1 a12687 1 LIBTOOL d12689 1 a12691 1 LIBTOOL_M4_OVERRIDE d12693 1 a12695 1 LICENSE d12697 1 d12700 5 a12704 1 LINK_RPATH_FLAG d12736 1 d12738 2 d12741 1 a12743 1 MAKE_DIRS_PERMS d12745 1 a12747 1 MAKE_FILE d12749 1 a12751 1 MAKE_JOBS d12753 1 a12755 1 MAKE_PROGRAM d12757 1 a12759 1 MANINSTALL d12761 1 a12763 1 MASTER_SITES d12765 1 a12767 1 MASTER_SITE_LOCAL d12769 1 a12771 1 MASTER_SITE_OVERRIDE d12773 1 a12775 1 MASTER_SORT d12777 1 a12779 1 MASTER_SORT_REGEX d12781 1 a12783 1 MEDIATOMB_GROUP d12785 1 a12787 1 MIPSPROBASE d12789 1 a12791 1 MIREDO_USER d12793 1 a12795 1 MKDIR d12797 1 a12799 1 MLDONKEY_GROUP d12801 1 a12803 1 MLDONKEY_USER d12805 1 a12807 1 MONOTONE_USER d12809 1 a12811 1 MOTIF_TYPE d12813 1 a12815 1 MPI_TYPE d12817 1 a12819 1 MSGFMT_STRIP_MSGID_PLURAL d12821 1 d12945 3 d12949 1 a12951 1 OSS_TYPE d12953 5 a12959 1 OSX_TOLERATE_SDK_SKEW d12961 1 a12963 1 OS_VERSION d12965 1 a12967 1 OVERRIDE_DIRDEPTH d12969 1 d12972 1 a12972 1 OVERRIDE_GNU_CONFIG_SCRIPTS d13020 8 d13409 4 d13425 3 d13429 1 a13431 1 READLINE_DEFAULT d13433 1 a13435 1 REAL_ROOT_GROUP d13437 1 a13439 1 RECURSIVE_MAKE d13441 1 a13443 1 RELRO_SUPPORTED d13445 1 a13447 1 REPLACE_BASH d13449 1 a13451 1 REPLACE_KSH d13453 1 a13455 1 REPLACE_PERL6 d13457 1 a13459 1 REPLACE_PYTHON d13461 1 a13463 1 REPLACE_RUBY d13465 1 a13467 1 REPLACE_RUBY_PAT d13469 1 a13471 1 REPLACE_TEXLUA d13473 1 a13475 1 REQD_DIRS_PERMS d13477 1 a13479 1 REQD_FILES_MODE d13481 1 a13483 1 RESOLV_AUTO_VARS d13485 1 a13487 1 RESOLV_LIBS d13489 1 d13492 1 d13494 2 d13497 1 a13499 1 ROOT_USER d13501 1 a13503 1 RPM d13505 1 a13507 1 RPM2PKG_PREFIX d13509 1 a13511 1 RPM2PKG_STRIP d13513 1 a13515 1 RPMFILES d13517 1 a13519 1 RPM_DB_PREFIX d13521 1 a13523 1 RSSH_RDIST_PATH d13525 1 a13527 1 RSSH_SCP_PATH d13529 1 a13531 1 RUBY d13533 1 a13535 1 RUBYGEM_NAME d13537 1 a13539 1 RUBYGEM_VERBOSE d13541 1 a13543 1 RUBY_ARCH d13545 1 a13547 1 RUBY_ARCHLIB d13549 1 a13551 1 RUBY_BASERIDIR d13553 1 a13555 1 RUBY_DLEXT d13557 1 a13559 1 RUBY_DYNAMIC_DIRS d13561 1 a13563 1 RUBY_ENCODING_ARG d13565 1 a13567 1 RUBY_EXTCONF_CHECK d13569 1 a13571 1 RUBY_EXTCONF_MAKEFILE d13573 1 a13575 1 RUBY_INC d13577 1 a13579 1 RUBY_LIB_BASE d13581 1 a13583 1 RUBY_NOVERSION d13585 1 a13587 1 RUBY_RAILS d13589 1 a13591 1 RUBY_RAILS60_VERSION d13593 1 a13595 1 RUBY_RAILS_ACCEPTED d13597 1 a13599 1 RUBY_RAILS_REQD d13601 1 a13603 1 RUBY_RIDIR d13605 1 a13607 1 RUBY_SHLIB d13609 1 a13611 1 RUBY_SHLIBVER d13613 1 a13615 1 RUBY_SITEARCHLIB d13617 1 a13619 1 RUBY_SITELIB_BASE d13621 1 a13623 1 RUBY_SLEXT d13625 1 a13627 1 RUBY_STATICLIB d13629 1 a13631 1 RUBY_SYSRIDIR d13633 1 a13635 1 RUBY_VENDORARCHLIB d13637 1 a13639 1 RUBY_VENDORLIB_BASE d13641 1 a13643 1 RUBY_VERSION d13645 1 a13647 1 RUBY_VERSIONS_INCOMPATIBLE d13649 1 a13651 1 RUBY_VERSION_REQD d13653 1 a13655 1 RUN d13657 1 a13659 1 SAWFISH_THEMES d13661 1 a13663 1 SCREWS_GROUP d13665 1 a13667 1 SCRIPTS_ENV d13669 1 a13671 1 SCROLLKEEPER_REBUILDDB d13673 1 a13675 1 SDIST_PAWD d13677 1 a13679 1 SETGIDGAME d13681 1 a13683 1 SETUID_ROOT_PERMS d13685 1 d13688 1 a13688 1 SHLIB d13773 8 d13860 1 d13862 2 d13865 1 a13867 1 UAC_REQD_EXECS d13869 1 a13871 1 UCSPI_SSL_USER d13873 1 a13875 1 UNPRIVILEGED d13877 1 a13879 1 UNPRIVILEGED_GROUPS d13881 1 a13883 1 UNWRAP_FILES d13885 1 a13887 1 UPDATE_GEMSPEC d13889 1 a13891 1 URI d13893 1 a13895 1 USERPPP_GROUP d13897 1 a13899 1 USE_ABI_DEPENDS d13901 1 a13903 1 USE_BSD_MAKEFILE d13905 1 a13907 1 USE_CROSS_COMPILE d13909 1 a13911 1 USE_CWRAPPERS d13913 1 a13915 1 USE_FEATURES d13917 1 a13919 1 USE_GCC_RUNTIME d13921 1 a13923 1 USE_JAVA d13925 1 a13927 1 USE_LANGUAGES d13929 1 a13931 1 USE_NATIVE_GCC d13933 1 a13935 1 USE_PKGSRC_GCC d13937 1 a13939 1 USE_PKGTASKS d13941 1 a13943 1 USE_RUBY_EXTCONF d13945 1 a13947 1 USE_RUBY_SETUP d13949 1 a13951 1 USE_TOOLS d13953 1 a13955 1 UUCP_USER d13957 1 a13959 1 VARNAME d13961 1 a13963 1 WARNING_MSG d13965 1 a13967 1 WCALC_CGIPATH d13969 1 a13971 1 WCALC_HTMLPATH d13973 1 a13975 1 WRAPPER_CC d13977 1 a13979 1 WRKDIR d13981 1 a13983 1 WRKDIR_LOCKTYPE d13985 1 a13987 1 WRKOBJDIR d13989 1 a13991 1 X10_PORT d13993 1 a13995 1 X11BASE d13997 1 a13999 1 X11_TYPE d14001 1 a14003 1 X509_KEY d14005 1 a14007 1 XLOCK_DEFAULT_MODE d14009 1 a14011 1 XMKMF_FLAGS d14013 1 d14156 1 d14158 2 d14161 1 a14163 1 declare d14165 1 a14167 1 depend d14169 1 a14171 1 depends d14173 1 a14175 1 depends-fetch d14177 1 a14179 1 describe d14181 1 a14183 1 disable d14185 1 a14187 1 distinfo d14189 1 a14191 1 dlopen d14193 1 a14195 1 do-buildlink d14197 1 a14199 1 do-configure d14201 1 a14203 1 do-extract d14205 1 d14221 3 d14225 1 a14227 1 err d14229 1 a14231 1 etc d14233 1 a14235 1 extract-rpm d14237 1 a14239 1 feature d14241 1 a14243 1 fetch d14245 1 a14247 1 follows d14249 1 a14251 1 form d14253 1 a14255 1 fortify d14257 1 d14292 1 d14294 3 d14317 3 d14321 1 a14323 1 increment d14325 1 a14327 1 interp d14329 1 a14331 1 intl d14333 1 a14335 1 ip6 d14337 1 a14339 1 ipv6 d14341 1 a14343 1 kerberos d14345 1 a14347 1 krb5 d14349 1 a14351 1 lapack d14353 1 a14355 1 libintl_bindtextdomain d14357 1 a14359 1 libintl_textdomain d14361 1 a14363 1 libs d14365 1 a14367 1 licence d14369 1 a14371 1 lintl d14373 1 a14375 1 lock d14377 1 a14379 1 lvalue d14381 1 a14383 1 makesum d14385 1 d14592 1 d14594 2 d14597 1 d14600 1 a14600 1 sunwspro @ 1.325 log @doc/pkgsrc.*: regen @ text @d6443 1 a6443 1

    Also it is not needed to set d6446 4 a6449 1 BUILDLINK_API_DEPENDS.pkg.

    d8585 1 a8585 1 noted above, are defined centrally in d8587 4 a8590 4 languages define these variables within their own dedicated part of the tree, e.g., PHP defines REPLACE_PHP in lang/php/phpversion.mk, and Python defines REPLACE_PYTHON in d14343 1 a14343 1 readme-all d14346 1 a14347 1 recvfrom d14350 1 a14351 1 release-localbase-lock d14354 1 a14355 1 relro d14358 1 a14359 1 reorder d14362 1 a14363 1 replace_interpreter d14366 1 a14367 1 resolv d14370 1 a14371 1 ruby d14374 1 a14375 1 sendfile d14378 1 a14379 1 setenv d14382 1 a14383 1 setprogname d14386 1 a14387 1 sh d14390 1 a14391 1 show d14394 1 a14395 1 show-build-defs d14398 1 a14399 1 show-deps d14402 1 a14403 1 show-downlevel d14406 1 a14407 1 show-tools d14410 1 a14411 1 show-vars d14414 1 a14415 1 socket d14418 1 a14419 1 st_mode d14422 1 a14423 1 strcasestr d14426 1 a14427 1 strip d14430 1 a14431 1 strnlen d14434 1 a14435 1 subst d14438 1 a14439 1 sun d14442 1 a14443 1 sunwspro d14446 1 a14447 1 test d14450 1 a14451 1 tex d14454 1 a14455 1 tmp d14458 1 a14459 1 tools d14462 1 a14463 1 type d14466 1 a14467 1 undefined d14470 1 a14471 1 unlimit d14474 1 a14475 1 unprivileged-install-hook d14478 1 a14479 1 update d14482 1 a14483 1 upload-distfiles d14486 1 a14487 1 user d14490 1 a14491 1 vasprintf d14494 1 a14495 1 vsnprintf d14498 1 a14499 1 warning d14502 1 a14503 1 warnx d14506 1 a14507 1 wattr_on d14510 1 a14511 1 wrapper d14514 1 a14515 1   @ 1.324 log @doc/pkgsrc.*: regen @ text @d8552 2 a8553 2 replaced with the full path to the perl executable.

    If a particular version of perl is needed, set the d8557 3 a8559 1 about handling perl modules.

    d8579 13 a8591 1

    Currently, there is no special handling for other languages d11040 24 d11066 1 a11066 1 B.1.1.4. PKGSRC_USE_RELRO d11085 2 a11086 1 feature by default, at the "partial" level. a11094 24

    B.1.2. Not enabled by default

    B.1.2.1. PKGSRC_MKREPRO

    With this option, pkgsrc will try to build packages reproducibly. This allows packages built from the same tree and with the same options, to produce identical results bit by bit. This option should be combined with ASLR and PKGSRC_MKPIE to avoid predictable address offsets for attackers attempting to exploit security vulnerabilities.

    More details can be found here:

    More work likely needs to be done before pkgsrc is fully reproducible.

    d11097 1 a11097 1 B.1.2.2. PKGSRC_USE_STACK_CHECK
    a11742 1 ALSA_PC d11744 1 a11746 1 AMANDA_TMP d11748 1 a11750 1 AMANDA_VAR d11752 1 a11754 1 APACHE_MODULE_NAME d11756 1 a11758 1 APACHE_MODULE_SRCDIR d11760 1 a11762 1 APACHE_SUEXEC_CONFIGURE_ARGS d11764 1 a11766 1 APACHE_USER d11768 1 a11770 1 APPEND_ELF d11772 1 a11774 1 AUDIT_PACKAGES_FLAGS d11776 1 a11778 1 AUTOMAKE_OVERRIDE d11780 1 a11782 1 AUTO_MKDIRS d11784 1 a11786 1 BDBBASE d11788 1 a11790 1 BDB_DEFAULT d11792 1 a11794 1 BDB_TYPE d11796 1 a11798 1 BINCIMAP_USER d11800 1 a11802 1 BIND_GROUP d11804 1 a11806 1 BINOWN d11808 1 a11810 1 BIN_INSTALL_FLAGS d11812 1 a11814 1 BLAS d11816 1 a11818 1 BLAS_C_INTERFACE d11820 1 a11822 1 BLAS_INDEX64 d11824 1 a11826 1 BLAS_TYPE d11828 1 a11830 1 BOOTSTRAP_SETUPTOOLS d11832 1 a11834 1 BROKEN_EXCEPT_ON_PLATFORM d11836 1 a11838 1 BSDSRCDIR d11840 1 a11842 1 BSD_MAKE_ENV d11844 1 a11846 1 BUILDLINK_AUTO_VARS d11848 1 a11850 1 BUILDLINK_CONTENTS_FILTER a11851 3 BUILDLINK_DEPMETHOD a11942 1 CHECKOUT_DATE d11944 1 a11946 1 CHECK_FAKEHOME d11948 1 a11950 1 CHECK_FILES_SKIP d11952 1 a11954 1 CHECK_HEADERS d11956 1 a11958 1 CHECK_INTERPRETER d11960 1 a11962 1 CHECK_PERMS d11964 1 a11966 1 CHECK_PERMS_SKIP d11968 1 a11970 1 CHECK_PORTABILITY_EXPERIMENTAL d11972 1 a11974 1 CHECK_RELRO d11976 1 a11978 1 CHECK_RELRO_SUPPORTED d11980 1 a11982 1 CHECK_SHLIBS_SKIP d11984 1 a11986 1 CHECK_SHLIBS_TOXIC d11988 1 a11990 1 CHECK_SSP_SKIP d11992 1 a11994 1 CHECK_STRIPPED d11996 1 a11998 1 CHECK_WRKREF d12000 1 a12002 1 CHECK_WRKREF_SKIP d12004 1 a12006 1 CLAMAV_GROUP d12008 1 a12010 1 CLANGBASE d12012 1 a12014 1 CMAKE_DEPENDENCIES_REWRITE d12016 1 a12018 1 CMAKE_INSTALL_PREFIX d12020 1 a12022 1 CMAKE_PKGSRC_BUILD_FLAGS a12023 2 a12024 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a12086 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d12088 1 a12090 1 CYRUS_GROUP d12092 1 a12094 1 CYRUS_USER d12096 1 a12098 1 DAEMONTOOLS_LOG_USER d12100 1 a12102 1 DARWIN_REQUIRES_FILTER d12104 1 a12106 1 DBUS_USER d12108 1 a12110 1 DEFANG_USER d12112 1 a12114 1 DEFAULT_DISTFILES d12116 1 a12118 1 DEFAULT_SERIAL_DEVICE d12120 1 a12122 1 DEINSTALLDEPENDS d12124 1 a12126 1 DEINSTALL_TEMPLATES d12128 1 a12130 1 DELAYED_WARNING_MSG d12132 1 a12134 1 DEPENDS_TARGET d12136 1 a12138 1 DESTDIR d12140 1 a12142 1 DIALER_GROUP d12144 1 a12146 1 DISTDIR d12148 1 a12150 1 DISTINFO_FILE d12152 1 a12154 1 DIST_PATH d12156 1 a12158 1 DJBDNS_AXFR_USER d12160 1 a12162 1 DJBDNS_DJBDNS_GROUP d12164 1 a12166 1 DJBDNS_RBL_USER d12168 1 a12170 1 DLOPEN_REQUIRE_PTHREADS d12172 1 a12174 1 DL_CFLAGS d12176 1 a12178 1 DL_LIBS d12180 1 a12182 1 DOCOWN d12184 1 a12186 1 DT_LAYOUT d12188 1 a12190 1 DYNAMIC_SITES_SCRIPT d12192 1 a12194 1 ECHO_N d12196 1 a12198 1 EMACS_TYPE d12200 1 a12202 1 EMULSUBDIR d12204 1 a12206 1 EMUL_ARCH d12208 1 a12210 1 EMUL_EXEC_FMT d12212 1 a12214 1 EMUL_MODULES d12216 1 a12218 1 EMUL_PKG_FMT d12220 1 a12222 1 EMUL_PLATFORMS d12224 1 a12226 1 EMUL_REQD d12228 1 a12230 1 ERROR_MSG d12232 1 a12234 1 EXIM_USER d12236 1 a12238 1 EXTRACTOR d12240 1 a12242 1 EXTRACT_CMD_DEFAULT d12244 1 a12246 1 EXTRACT_ELEMENTS d12248 1 a12250 1 EXTRACT_ONLY d12252 1 a12254 1 EXTRACT_SUFX d12256 1 a12258 1 FAIL d12260 1 a12262 1 FAIL_MSG d12264 1 a12266 1 FAM d12268 1 a12270 1 FAM_DEFAULT d12272 1 a12274 1 FCPATH d12276 1 a12278 1 FEATURE_LDFLAGS d12280 1 a12282 1 FETCH_AFTER_ARGS d12284 1 a12286 1 FETCH_CMD d12288 1 a12290 1 FETCH_PROXY d12292 1 a12294 1 FETCH_TIMEOUT d12296 1 a12298 1 FETCH_USING d12300 1 a12302 1 FILES_SUBST_SED d12304 1 a12306 1 FLUXBOX_USE_GNOME d12308 1 a12310 1 FLUXBOX_USE_XFT a12311 3 FONTDIR a12318 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a12394 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d12432 1 a12432 1 HASKELL_COMPILER a12434 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12436 1 a12438 1 HASKELL_ENABLE_SHARED_LIBRARY d12440 1 a12442 1 HAS_CONFIGURE a12443 7 HG_REPO HG_REPOSITORIES HG_TAG a12542 4 JAVA_APP_PATH JAVA_APP_TARGETS d12612 1 a12612 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED a12614 1 LINUX_LOCALES d12616 1 a12618 1 LOCALBASE_LOCKTYPE d12620 1 a12622 1 LOVE_DATA d12624 1 a12626 1 LOVE_VERSION d12628 1 a12630 1 LP64PLATFORMS d12632 1 a12634 1 MAILAGENT_DOMAIN d12636 1 a12638 1 MAILAGENT_FQDN a12639 2 a12640 1 MAJOR_OS_VERSION a12726 1 MUST d12728 1 a12730 1 MYSQL_CHARSET d12732 1 a12734 1 MYSQL_EXTRA_CHARSET d12736 1 a12738 1 MYSQL_USER d12740 1 a12742 1 MYSQL_VERSIONS_ACCEPTED d12744 1 a12746 1 MYSQL_VERSION_DEFAULT d12748 1 a12750 1 NAGIOSDIR d12752 1 a12754 1 NAGIOS_USER d12756 1 a12758 1 NATIVE_APPEND_ELF d12760 1 a12762 1 NATIVE_MACHINE_PLATFORM d12764 1 a12766 1 NBPAX_PROGRAM_PREFIX d12768 1 a12770 1 NMH_EDITOR d12772 1 a12774 1 NMH_PAGER d12776 1 a12778 1 NOTE d12780 1 a12782 1 NOT_PAX_ASLR_SAFE d12784 1 a12786 1 NO_BUILD d12788 1 a12790 1 NO_CONFIGURE d12792 1 a12794 1 NS_PREFERRED d12796 1 a12798 1 NULLMAILER_USER d12800 1 a12802 1 OASIS_BUILD_ARGS d12804 1 a12806 1 OBJMACHINE d12808 1 a12810 1 OCAML_FINDLIB_REGISTER d12812 1 a12814 1 OCAML_SITELIBDIR d12816 1 a12818 1 OCAML_USE_DUNE d12820 1 a12822 1 OCAML_USE_JBUILDER d12824 1 a12826 1 OCAML_USE_OASIS_DYNRUN d12828 1 a12830 1 OCAML_USE_OPT_COMPILER d12832 1 a12834 1 OMF d12836 1 a12838 1 ONLY_FOR_PLATFORM d12840 1 a12842 1 OPENSSH_GROUP d12844 1 a12846 1 OPSYS d12848 1 a12850 1 OS d12852 1 a12854 1 OSX d12856 1 a12858 5 OS_HAVE_ALSA OS_HAVE_RCD OS_VARIANT d12860 1 a12862 1 OTF_FONTS_DIR d12864 1 a12866 1 OVERRIDE_GEMSPEC a12867 3 OVERRIDE_ROCKSPEC a12914 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a13295 4 RCD_DIR RCD_ORDER d13308 1 a13308 1 RCD_SUBR a13310 1 RDOC d13312 1 a13314 1 READLINE_TYPE d13316 1 a13318 1 REAL_ROOT_USER d13320 1 a13322 1 RELAY_CTRL_DIR d13324 1 a13326 1 REPLACE_AWK d13328 1 a13330 1 REPLACE_CSH d13332 1 a13334 1 REPLACE_PERL d13336 1 a13338 1 REPLACE_PHP d13340 1 a13342 1 REPLACE_R d13344 1 a13346 1 REPLACE_RUBY_DIRS d13348 1 a13350 1 REPLACE_SH d13352 1 a13354 1 REQD_DIRS d13356 1 a13358 1 REQD_FILES d13360 1 a13362 1 REQD_FILES_PERMS d13364 1 a13366 1 RESOLV_LDFLAGS a13367 2 a13368 1 ROCKSPEC_NAME a13370 1 ROCKSPEC_SPECFILE d13372 1 a13374 1 ROOT_GROUP d13376 1 a13378 1 RPCGEN d13380 1 a13382 1 RPM2PKG_PLIST d13384 1 a13386 1 RPM2PKG_STAGE d13388 1 a13390 1 RPM2PKG_SUBPREFIX d13392 1 a13394 1 RPMIGNOREPATH d13396 1 a13398 1 RSSH_CVS_PATH d13400 1 a13402 1 RSSH_RSYNC_PATH d13404 1 a13406 1 RSSH_SFTP_SERVER_PATH d13408 1 a13410 1 RUBYGEM d13412 1 a13414 1 RUBYGEM_OPTIONS d13416 1 a13418 1 RUBY_ABI_VERSION d13420 1 a13422 1 RUBY_ARCHINC d13424 1 a13426 1 RUBY_BASE d13428 1 a13430 1 RUBY_BUILD_DOCUMENT d13432 1 a13434 1 RUBY_DOC d13436 1 a13438 1 RUBY_EG d13440 1 a13442 1 RUBY_EXTCONF d13444 1 a13446 1 RUBY_EXTCONF_DEBUG d13448 1 a13450 1 RUBY_GEM_BASE d13452 1 a13454 1 RUBY_LIB d13456 1 a13458 1 RUBY_NAME d13460 1 a13462 1 RUBY_PKGPREFIX d13464 1 a13466 1 RUBY_RAILS52_VERSION d13468 1 a13470 1 RUBY_RAILS61_VERSION d13472 1 a13474 1 RUBY_RAILS_DEFAULT d13476 1 a13478 1 RUBY_RAILS_STRICT_DEP d13480 1 a13482 1 RUBY_SETUP d13484 1 a13486 1 RUBY_SHLIBALIAS d13488 1 a13490 1 RUBY_SIMPLE_INSTALL d13492 1 a13494 1 RUBY_SITELIB d13496 1 a13498 1 RUBY_SITERIDIR d13500 1 a13502 1 RUBY_SRCDIR d13504 1 a13506 1 RUBY_SUFFIX d13508 1 a13510 1 RUBY_USE_PTHREAD d13512 1 a13514 1 RUBY_VENDORLIB d13516 1 a13518 1 RUBY_VER d13520 1 a13522 1 RUBY_VERSIONS_ACCEPTED d13524 1 a13526 1 RUBY_VERSION_DEFAULT d13528 1 a13530 1 RUBY_VER_DIR d13532 1 a13534 1 RUN_LDCONFIG d13536 1 a13538 1 SCO d13540 1 a13542 1 SCREWS_USER d13544 1 a13546 1 SCROLLKEEPER_DATADIR d13548 1 a13550 1 SCROLLKEEPER_UPDATEDB d13552 1 a13554 1 SERIAL_DEVICES d13556 1 a13558 1 SETGID_GAMES_PERMS d13560 1 a13562 1 SH a13563 3 SHORTNAME a13647 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION a13726 1 TTF_FONTDIR d13728 1 a13730 1 TYPE d13732 1 a13734 1 UCSPI_SSL_GROUP d13736 1 a13738 1 UNLIMIT_RESOURCES d13740 1 a13742 1 UNPRIVILEGED_GROUP d13744 1 a13746 1 UNPRIVILEGED_USER d13748 1 a13750 1 UNWRAP_PATTERNS d13752 1 a13754 1 UPDATE_TARGET d13756 1 a13758 1 USERGROUP_PHASE d13760 1 a13762 1 USER_SPECIFIC_PKGS d13764 1 a13766 1 USE_APR d13768 1 a13770 1 USE_BUILTIN d13772 1 a13774 1 USE_CURSES d13776 1 a13778 1 USE_DB185 d13780 1 a13782 1 USE_GAMESGROUP d13784 1 a13786 1 USE_IMAKE d13788 1 a13790 1 USE_JAVA2 d13792 1 a13794 1 USE_LIBTOOL d13796 1 a13798 1 USE_NETBSD_REPO d13800 1 a13802 1 USE_PKGSRC_GCC_RUNTIME d13804 1 a13806 1 USE_PKG_ADMIN_DIGEST d13808 1 a13810 1 USE_RUBY_INSTALL d13812 1 a13814 1 USE_RUBY_SETUP_PKG d13816 1 a13818 1 UUCP_GROUP d13820 1 a13822 1 VARBASE d13824 1 a13826 1 VIM_EXTRA_OPTS d13828 1 a13830 1 WCALC_CGIDIR d13832 1 a13834 1 WCALC_HTMLDIR d13836 1 a13838 1 WDM_MANAGERS d13840 1 a13842 1 WRAPPER_REORDER_CMDS d13844 1 a13846 1 WRKDIR_BASENAME d13848 1 a13850 1 WRKLOG d13852 1 a13854 1 WRKSRC d13856 1 a13858 1 X11 d13860 1 a13862 1 X11_PKGSRCDIR d13864 1 a13866 1 X509_CERTIFICATE d13868 1 a13870 1 XAW_TYPE d13872 1 a13874 1 XMKMF a13875 2 a13876 1 XXXX a14018 1 cvs d14020 1 a14022 1 declaration d14024 1 a14026 1 defined d14028 1 a14030 1 dependencies d14032 1 a14034 1 depends-checksum d14036 1 a14038 1 deps d14040 1 a14042 1 destdir d14044 1 a14046 1 distclean d14048 1 a14050 1 dl d14052 1 a14054 1 do-build d14056 1 a14058 1 do-clean d14060 1 a14062 1 do-configure-post-hook a14063 2 a14064 1 do-install d14080 1 a14080 1 endif a14082 1 enomem d14084 1 a14086 1 errx d14088 1 a14090 1 exp d14092 1 a14094 1 fabs d14096 1 a14098 1 features d14100 1 a14102 1 fetch-list d14104 1 a14106 1 forbids d14108 1 a14110 1 format a14111 2 a14112 1 fossil a14146 1 git a14147 3 gitlab d14168 1 a14168 1 hg a14170 1 imake d14172 1 a14174 1 inet_aton d14176 1 a14178 1 interpreter d14180 1 a14182 1 ip4 d14184 1 a14186 1 ipv4 d14188 1 a14190 1 iso d14192 1 a14194 1 krb d14196 1 a14198 1 ksh d14200 1 a14202 1 latex d14204 1 a14206 1 libintl_gettext d14208 1 a14210 1 libnbcompat d14212 1 a14214 1 libtool d14216 1 a14218 1 license d14220 1 a14222 1 little-endian d14224 1 a14226 1 locking d14228 1 a14230 1 make a14231 2 a14232 1 mercurial d14436 1 a14436 1 subversion a14438 1 sun a14439 2 a14440 1 svn @ 1.323 log @doc/pkgsrc.*: regen @ text @d11255 4 a11971 1 CHECK_SHLIBS_BLACKLIST d11973 1 d11976 1 a11976 1 CHECK_SHLIBS_SUPPORTED d12464 1 a12465 1 GO_SRCPATH d12468 1 a12469 1 GROUP_SPECIFIC_PKGS d12472 1 a12473 1 GRUB_PRESET_COMMAND d12476 1 a12477 1 GZIP d12480 1 a12481 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d12484 1 a12485 1 HASKELL_ENABLE_SHARED_LIBRARY d12488 1 a12489 1 HAS_CONFIGURE d12492 1 a12493 1 HG_REPO d12496 1 a12497 1 HG_TAG d12500 1 a12501 1 HOST_PKGTOOLS_ARGS d12504 1 a12505 1 HOWL_GROUP d12508 1 a12509 1 ICCBASE d12512 1 a12513 1 ICON_THEMES d12516 1 a12517 1 IGNORE_CCACHE d12520 1 a12521 1 IGNORE_INTERACTIVE_FETCH d12524 1 a12525 1 IMAKEOPTS d12528 1 a12529 1 IMAKE_MANINSTALL d12532 1 a12533 1 IMDICTDIR d12536 1 a12537 1 INFO_DIR d12540 1 a12541 1 INFO_FILES_VERBOSE d12544 1 a12545 1 INIT_SYSTEM d12548 1 a12549 1 INN_GROUP d12552 1 a12553 1 INSTALLATION_DIRS d12556 1 a12557 1 INSTALL_ENV d12560 1 a12561 1 INSTALL_SRC d12564 1 a12565 1 INSTALL_UNSTRIPPED d12568 1 a12569 1 IRCD_HYBRID_IRC_USER d12572 1 a12573 1 IRCD_HYBRID_NICLEN d12576 1 a12577 1 IRCD_HYBRID_SYSLOG_FACILITY d12580 1 a12581 1 IRIX d12584 1 a12585 1 JABBERD_GROUP d12588 1 a12589 1 JABBERD_PIDDIR d12592 1 a12593 1 JABBERD_USER d12596 1 a12597 1 JAVA_APP_PATH d12600 1 a12601 1 JAVA_BINPREFIX d12604 1 a12605 1 JAVA_HOME d12608 1 a12609 1 JAVA_NAME d12612 1 a12613 1 JAVA_WRAPPERS d12616 1 a12617 1 JPEG_DEFAULT d12620 1 a12621 1 KERMIT_SUID_UUCP d12624 1 a12625 1 KNEWS_DOMAIN_FILE d12628 1 a12629 1 KRB5_ACCEPTED d12632 1 a12633 1 LANGUAGES d12636 1 a12637 1 LAPACK_LIBS d12640 1 a12641 1 LDCONFIG_ADD_CMD d12644 1 a12645 1 LEAFNODE_DATA_DIR d12648 1 a12649 1 LEAFNODE_USER d12652 1 a12653 1 LIBDVDCSS_MASTER_SITES d12656 1 a12657 1 LIBTOOL d12660 1 a12661 1 LIBTOOL_M4_OVERRIDE d12664 1 a12665 1 LICENSE d12668 1 a12669 1 LINK_RPATH_FLAG d12672 1 a12673 1 LINUX_BASE_PREFERRED d12676 1 a12677 1 LINUX_LOCALES d12680 1 a12681 1 LOCALBASE_LOCKTYPE d12684 1 a12685 1 LOVE_DATA d12688 1 a12689 1 LOVE_VERSION d12692 1 a12693 1 LP64PLATFORMS d12696 1 a12697 1 MAILAGENT_DOMAIN d12700 1 a12701 1 MAILAGENT_FQDN d12704 1 a12705 1 MAJORDOMO_HOMEDIR d12708 1 a12709 1 MAKEINFO_ARGS d12712 1 a12713 1 MAKE_DIRS_PERMS d12716 1 a12717 1 MAKE_FILE d12720 1 a12721 1 MAKE_JOBS d12724 1 a12725 1 MAKE_PROGRAM d12728 1 a12729 1 MANINSTALL d12732 1 a12733 1 MASTER_SITES d12736 1 a12737 1 MASTER_SITE_LOCAL d12740 1 a12741 1 MASTER_SITE_OVERRIDE d12744 1 a12745 1 MASTER_SORT d12748 1 a12749 1 MASTER_SORT_REGEX d12752 1 a12753 1 MEDIATOMB_GROUP d12756 1 a12757 1 MIPSPROBASE d12760 1 a12761 1 MIREDO_USER d12764 1 a12765 1 MKDIR d12768 1 a12769 1 MLDONKEY_GROUP d12772 1 a12773 1 MLDONKEY_USER d12776 1 a12777 1 MONOTONE_USER d12780 1 a12781 1 MOTIF_TYPE d12784 1 a12785 1 MPI_TYPE d12788 1 a12789 1 MSGFMT_STRIP_MSGID_PLURAL d12792 1 a12793 1 MUST d12796 1 a12797 1 MYSQL_CHARSET d12800 1 a12801 1 MYSQL_EXTRA_CHARSET d12804 1 a12805 1 MYSQL_USER d12808 1 a12809 1 MYSQL_VERSIONS_ACCEPTED d12812 1 a12813 1 MYSQL_VERSION_DEFAULT d12816 1 a12817 1 NAGIOSDIR d12820 1 a12821 1 NAGIOS_USER d12824 1 a12825 1 NATIVE_APPEND_ELF d12828 1 a12829 1 NATIVE_MACHINE_PLATFORM d12832 1 a12833 1 NBPAX_PROGRAM_PREFIX d12836 1 a12837 1 NMH_EDITOR d12840 1 a12841 1 NMH_PAGER d12844 1 a12845 1 NOTE d12848 1 a12849 1 NOT_PAX_ASLR_SAFE d12852 1 a12853 1 NO_BUILD d12856 1 a12857 1 NO_CONFIGURE d12860 1 a12861 1 NS_PREFERRED d12864 1 a12865 1 NULLMAILER_USER d12868 1 a12869 1 OASIS_BUILD_ARGS d12872 1 a12873 1 OBJMACHINE d12876 1 a12877 1 OCAML_FINDLIB_REGISTER d12880 1 a12881 1 OCAML_SITELIBDIR d12884 1 a12885 1 OCAML_USE_DUNE d12888 1 a12889 1 OCAML_USE_JBUILDER d12892 1 a12893 1 OCAML_USE_OASIS_DYNRUN d12896 1 a12897 1 OCAML_USE_OPT_COMPILER d12900 1 a12901 1 OMF d12904 1 a12905 1 ONLY_FOR_PLATFORM d12908 1 a12909 1 OPENSSH_GROUP d12912 1 a12913 1 OPSYS d12916 1 a12917 1 OS d12920 1 a12921 1 OSX d12924 1 a12925 1 OS_HAVE_ALSA d12928 1 a12929 1 OS_VARIANT d12932 1 a12933 1 OTF_FONTS_DIR d12936 1 a12937 1 OVERRIDE_GEMSPEC d12940 1 a12941 1 OVERRIDE_ROCKSPEC d12944 1 a12945 1 OWN_DIRS_PERMS d12948 1 a12949 1 P4PORT d12952 1 a12953 1 P4USER d12956 1 a12957 1 PALMOS_DEFAULT_SDK d12960 1 a12961 1 PAM_DEFAULT d12964 1 a12965 1 PASSIVE_FETCH d12968 1 d12970 2 d12973 1 a12975 1 PATCH_ARGS d12977 1 a12979 1 PATCH_DIST_ARGS d12981 1 a12983 1 PATCH_DIST_STRIP d12985 1 a12987 1 PATCH_STRIP d12989 1 a12991 1 PCCBASE d12993 1 a12995 1 PEAR_CHANNEL d12997 1 a12999 1 PEAR_CHANNEL_VERSION d13001 1 a13003 1 PEAR_LIB d13005 1 a13007 1 PERL5 d13009 1 a13011 1 PERL5_CONFIGURE_DIRS d13013 1 a13015 1 PERL5_LICENSE d13017 1 a13019 1 PERL5_PACKLIST d13021 1 a13023 1 PERL5_PERLBASE d13025 1 a13027 1 PERL5_USE_PACKLIST d13029 1 a13031 1 PFCTL d13033 1 a13035 1 PF_VERSION d13037 1 a13039 1 PGHOME d13041 1 a13043 1 PGSQL_TYPE d13045 1 a13047 1 PGSQL_VERSIONS_ACCEPTED d13049 1 a13051 1 PGUSER d13053 1 a13055 1 PHP d13057 1 a13059 1 PHPPKGSRCDIR d13061 1 a13063 1 PHP_CHECK_INSTALLED d13065 1 a13067 1 PHP_INITIAL_TEENY d13069 1 a13071 1 PHP_VERSION d13073 1 a13075 1 PHP_VERSIONS_INCOMPATIBLE d13077 1 a13079 1 PHP_VERSION_REQD d13081 1 a13083 1 PKGCONFIG_BASE d13085 1 a13087 1 PKGCONFIG_OVERRIDE d13089 1 a13091 1 PKGDIR d13093 1 a13095 1 PKGINFODIR d13097 1 a13099 1 PKGMANDIR d13101 1 a13103 1 PKGNAME_REQD d13105 1 a13107 1 PKGREVISION d13109 1 a13111 1 PKGSRC_CHANGES d13113 1 a13115 1 PKGSRC_KEEP_BIN_PKGS d13117 1 a13119 1 PKGSRC_MAKE_ENV d13121 1 a13123 1 PKGSRC_MKPIE d13125 1 a13127 1 PKGSRC_RUN_TEST d13129 1 a13131 1 PKGSRC_SLEEPSECS d13133 1 a13135 1 PKGSRC_USE_CTF d13137 1 a13139 1 PKGSRC_USE_RELRO d13141 1 a13143 1 PKGSRC_USE_STACK_CHECK d13145 1 a13147 1 PKGTOOLS_ARGS d13149 1 a13151 1 PKG_ALTERNATIVES d13153 1 a13155 1 PKG_APACHE_ACCEPTED d13157 1 a13159 1 PKG_BEST_EXISTS d13161 1 a13163 1 PKG_COMPRESSION d13165 1 a13167 1 PKG_CONFIG_PERMS d13169 1 a13171 1 PKG_DB_TMPDIR d13173 1 a13175 1 PKG_DEFAULT_OPTIONS d13177 1 a13179 1 PKG_DEVELOPER d13181 1 a13183 1 PKG_FATAL_ERRORS d13185 1 a13187 1 PKG_FILELIST_CMD d13189 1 a13191 1 PKG_GID d13193 1 a13195 1 PKG_GROUPS_VARS d13197 1 a13199 1 PKG_INIT_SCRIPTS d13201 1 a13203 1 PKG_JVM d13205 1 a13207 1 PKG_JVM_DEFAULT d13209 1 a13211 1 PKG_LIBTOOL d13213 1 a13215 1 PKG_OPTIONS_DEPRECATED_WARNINGS d13217 1 a13219 1 PKG_OPTIONS_LEGACY_VARS d13221 1 a13223 1 PKG_OPTIONS_OPTIONAL_GROUPS d13225 1 a13227 1 PKG_OPTIONS_VAR d13229 1 a13231 1 PKG_PHP_MAJOR_VERS d13233 1 a13235 1 PKG_RCD_SCRIPTS d13237 1 a13239 1 PKG_REGISTER_SHELLS d13241 1 a13243 1 PKG_SHELL d13245 1 a13247 1 PKG_SUPPORTED_OPTIONS d13249 1 a13251 1 PKG_SYSCONFBASEDIR d13253 1 a13255 1 PKG_SYSCONFDIR_PERMS d13257 1 a13259 1 PKG_SYSCONFVAR d13261 1 a13263 1 PKG_UID d13265 1 a13267 1 PKG_USERS d13269 1 a13271 1 PKG_VERBOSE d13273 1 a13275 1 PLIST d13277 1 a13279 1 PLIST_AWK_ENV d13281 1 a13283 1 PLIST_SUBST d13285 1 a13287 1 PLIST_VARS d13289 1 a13291 1 POSSIBLE_GFORTRAN_VERSION d13293 1 a13295 1 PREFER d13297 1 a13299 1 PREFER_NATIVE_PTHREADS d13301 1 a13303 1 PREFIX d13305 1 a13307 1 PRE_ROOT_CMD d13309 1 a13311 1 PS d13313 1 a13315 1 PTHREAD_CFLAGS d13317 1 a13319 1 PTHREAD_LIBS d13321 1 a13323 1 PTHREAD_TYPE d13325 1 a13327 1 PYPKGPREFIX d13329 1 a13331 1 PYTHON_SELF_CONFLICT d13333 1 a13335 1 PYTHON_VERSIONS_ACCEPTED d13337 1 a13339 1 PYTHON_VERSION_DEFAULT d13341 1 a13343 1 PYVERSSUFFIX d13345 1 a13347 1 QMAILDIR d13349 1 a13351 1 QMAIL_DAEMON_USER d13353 1 a13355 1 QMAIL_NOFILES_GROUP d13357 1 a13359 1 QMAIL_QMAIL_GROUP d13361 1 a13363 1 QMAIL_QUEUE_EXTRA d13365 1 a13367 1 QMAIL_REMOTE_USER d13369 1 a13371 1 QMAIL_SEND_USER d13373 1 a13375 1 QPOPPER_SPOOL_DIR d13377 1 a13379 1 RAKE_NAME d13381 1 a13383 1 RCD_DIR d13385 1 a13387 1 RCD_SCRIPTS d13389 1 a13391 1 RCD_SCRIPTS_EXAMPLEDIR d13393 1 a13395 1 RCD_SCRIPTS_SHELL d13397 1 a13399 1 RCD_SUBR d13401 1 a13403 1 READLINE_DEFAULT d13405 1 a13407 1 REAL_ROOT_GROUP d13409 1 a13411 1 RECURSIVE_MAKE d13413 1 a13415 1 RELRO_SUPPORTED d13417 1 a13419 1 REPLACE_BASH d13421 1 a13423 1 REPLACE_KSH d13425 1 a13427 1 REPLACE_PERL6 d13429 1 a13431 1 REPLACE_PYTHON d13433 1 a13435 1 REPLACE_RUBY d13437 1 a13439 1 REPLACE_RUBY_PAT d13441 1 a13443 1 REPLACE_TEXLUA d13445 1 a13447 1 REQD_DIRS_PERMS d13449 1 a13451 1 REQD_FILES_MODE d13453 1 a13455 1 RESOLV_AUTO_VARS d13457 1 a13459 1 RESOLV_LIBS d13461 1 a13463 1 ROCKSPEC_NAME d13465 1 a13467 1 ROOT_CMD d13469 1 a13471 1 ROOT_USER d13473 1 a13475 1 RPM d13477 1 a13479 1 RPM2PKG_PREFIX d13481 1 a13483 1 RPM2PKG_STRIP d13485 1 a13487 1 RPMFILES d13489 1 a13491 1 RPM_DB_PREFIX d13493 1 a13495 1 RSSH_RDIST_PATH d13497 1 a13499 1 RSSH_SCP_PATH d13501 1 a13503 1 RUBY d13505 1 a13507 1 RUBYGEM_NAME d13509 1 a13511 1 RUBYGEM_VERBOSE d13513 1 a13515 1 RUBY_ARCH d13517 1 a13519 1 RUBY_ARCHLIB d13521 1 a13523 1 RUBY_BASERIDIR d13525 1 a13527 1 RUBY_DLEXT d13529 1 a13531 1 RUBY_DYNAMIC_DIRS d13533 1 a13535 1 RUBY_ENCODING_ARG d13537 1 a13539 1 RUBY_EXTCONF_CHECK d13541 1 a13543 1 RUBY_EXTCONF_MAKEFILE d13545 1 a13547 1 RUBY_INC d13549 1 a13551 1 RUBY_LIB_BASE d13553 1 a13555 1 RUBY_NOVERSION d13557 1 a13559 1 RUBY_RAILS d13561 1 a13563 1 RUBY_RAILS60_VERSION d13565 1 a13567 1 RUBY_RAILS_ACCEPTED d13569 1 a13571 1 RUBY_RAILS_REQD d13573 1 a13575 1 RUBY_RIDIR d13577 1 a13579 1 RUBY_SHLIB d13581 1 a13583 1 RUBY_SHLIBVER d13585 1 a13587 1 RUBY_SITEARCHLIB d13589 1 a13591 1 RUBY_SITELIB_BASE d13593 1 a13595 1 RUBY_SLEXT d13597 1 a13599 1 RUBY_STATICLIB d13601 1 a13603 1 RUBY_SYSRIDIR d13605 1 a13607 1 RUBY_VENDORARCHLIB d13609 1 a13611 1 RUBY_VENDORLIB_BASE d13613 1 a13615 1 RUBY_VERSION d13617 1 a13619 1 RUBY_VERSIONS_INCOMPATIBLE d13621 1 a13623 1 RUBY_VERSION_REQD d13625 1 a13627 1 RUN d13629 1 a13631 1 SAWFISH_THEMES d13633 1 a13635 1 SCREWS_GROUP d13637 1 a13639 1 SCRIPTS_ENV d13641 1 a13643 1 SCROLLKEEPER_REBUILDDB d13645 1 a13647 1 SDIST_PAWD d13649 1 a13651 1 SETGIDGAME d13653 1 a13655 1 SETUID_ROOT_PERMS d13657 1 a13659 1 SHLIB d13661 1 a13663 1 SIGN_PACKAGES d13665 1 a13667 1 SITE_SPECIFIC_PKGS d13669 1 a13671 1 SMF_INSTANCES d13673 1 a13675 1 SMF_METHODS d13677 1 a13679 1 SMF_METHOD_SRC d13681 1 a13683 1 SMF_PREFIX d13685 1 a13687 1 SNIPROXY_GROUP d13689 1 a13691 1 SOURCE_BUFFSIZE d13693 1 a13695 1 SPECIFIC_PKGS d13697 1 a13699 1 SSP_SUPPORTED d13701 1 a13703 1 STEP_MSG d13705 1 a13707 1 STRIP_DBG d13709 1 a13711 1 STRIP_DEBUG_SUPPORTED d13713 1 a13715 1 SU d13717 1 a13719 1 SUBST d13721 1 a13723 1 SUBST_FILES d13725 1 a13727 1 SUBST_MESSAGE d13729 1 a13731 1 SUBST_SED d13733 1 a13735 1 SUBST_SKIP_TEXT_CHECK d13737 1 a13739 1 SUBST_VARS d13741 1 a13743 1 SUSE_PREFER d13745 1 a13747 1 SVN_EXTRACTDIR d13749 1 a13751 1 SVN_REPOSITORIES d13753 1 a13755 1 SYSCONFBASE d13757 1 a13759 1 TERMCAP_TYPE d13761 1 a13763 1 TERMINFO_TYPE d13765 1 a13767 1 TEST_DEPENDS d13769 1 a13771 1 TEST_ENV d13773 1 a13775 1 TEST_MAKE_CMD d13777 1 a13779 1 TEST_TARGET d13781 1 a13783 1 TEXLIVE_REV d13785 1 a13787 1 TEXMFSITE d13789 1 a13791 1 TEX_HYPHEN_DAT d13793 1 a13795 1 TEX_TEXMF_DIRS d13797 1 a13799 1 TINYDYN_USER d13801 1 a13803 1 TOOLS_ALIASES d13805 1 a13807 1 TOOLS_ARGS d13809 1 a13811 1 TOOLS_CMD d13813 1 a13815 1 TOOLS_CREATE d13817 1 a13819 1 TOOLS_FAIL d13821 1 a13823 1 TOOLS_LDCONFIG d13825 1 a13827 1 TOOLS_PATH d13829 1 a13831 1 TOOL_DEPENDS d13833 1 a13835 1 TTF_FONTS_DIR d13837 1 a13839 1 UAC_REQD_EXECS d13841 1 a13843 1 UCSPI_SSL_USER d13845 1 a13847 1 UNPRIVILEGED d13849 1 a13851 1 UNPRIVILEGED_GROUPS d13853 1 a13855 1 UNWRAP_FILES d13857 1 a13859 1 UPDATE_GEMSPEC d13861 1 a13863 1 URI d13865 1 a13867 1 USERPPP_GROUP d13869 1 a13871 1 USE_ABI_DEPENDS d13873 1 a13875 1 USE_BSD_MAKEFILE d13877 1 a13879 1 USE_CROSS_COMPILE d13881 1 a13883 1 USE_CWRAPPERS d13885 1 a13887 1 USE_FEATURES d13889 1 a13891 1 USE_GCC_RUNTIME d13893 1 a13895 1 USE_JAVA d13897 1 a13899 1 USE_LANGUAGES d13901 1 a13903 1 USE_NATIVE_GCC d13905 1 a13907 1 USE_PKGSRC_GCC d13909 1 a13911 1 USE_PKGTASKS d13913 1 a13915 1 USE_RUBY_EXTCONF d13917 1 a13919 1 USE_RUBY_SETUP d13921 1 a13923 1 USE_TOOLS d13925 1 a13927 1 UUCP_USER d13929 1 a13931 1 VARNAME d13933 1 a13935 1 WARNING_MSG d13937 1 a13939 1 WCALC_CGIPATH d13941 1 a13943 1 WCALC_HTMLPATH d13945 1 a13947 1 WRAPPER_CC d13949 1 a13951 1 WRKDIR d13953 1 a13955 1 WRKDIR_LOCKTYPE d13957 1 a13959 1 WRKOBJDIR d13961 1 a13963 1 X10_PORT d13965 1 a13967 1 X11BASE d13969 1 a13971 1 X11_TYPE d13973 1 a13975 1 X509_KEY d13977 1 a13979 1 XLOCK_DEFAULT_MODE d13981 1 a13983 1 XMKMF_FLAGS d13985 1 a13987 1 XXXX d13989 1 a13991 1 ZSH_STATIC d13993 1 a13995 1 _vargroups d13997 1 a13999 1 acquire-localbase-lock d14001 1 a14003 1 add d14005 1 a14007 1 alloca d14009 1 a14011 1 aslr d14013 1 a14015 1 atlas d14017 1 a14019 1 automake d14021 1 a14023 1 awk d14025 1 a14027 1 big-endian d14029 1 a14031 1 bind d14033 1 a14035 1 blas d14037 1 a14039 1 broken d14041 1 a14043 1 bsd d14045 1 a14047 1 build d14049 1 a14051 1 buildlink-directories d14053 1 a14055 1 c d14057 1 a14059 1 ccache d14061 1 a14063 1 cdefs d14065 1 a14067 1 changes d14069 1 a14071 1 changes-entry-noupdate d14073 1 a14075 1 check-clean d14077 1 a14079 1 check-files-clean d14081 1 a14083 1 checksum d14085 1 a14087 1 clean d14089 1 a14091 1 cleandir d14093 1 a14095 1 commit-changes-entry d14097 1 a14099 1 compiler d14101 1 a14103 1 config.guess d14105 1 a14107 1 configuration d14109 1 a14111 1 configure-env d14113 1 a14115 1 configure_args d14117 1 a14119 1 cos d14121 1 a14123 1 create-usergroup d14125 1 a14127 1 ctf d14129 1 a14131 1 debug d14133 1 a14135 1 declare d14137 1 a14139 1 depend d14141 1 a14143 1 depends d14145 1 a14147 1 depends-fetch d14149 1 a14151 1 describe d14153 1 a14155 1 disable d14157 1 a14159 1 distinfo d14161 1 a14163 1 dlopen d14165 1 a14167 1 do-buildlink d14169 1 a14171 1 do-configure d14173 1 a14175 1 do-extract d14177 1 a14179 1 do-install d14181 1 a14183 1 emul-distinfo d14185 1 a14187 1 emulation d14189 1 a14191 1 enable d14193 1 a14195 1 endif d14197 1 a14199 1 err d14201 1 a14203 1 etc d14205 1 a14207 1 extract-rpm d14209 1 a14211 1 feature d14213 1 a14215 1 fetch d14217 1 a14219 1 follows d14221 1 a14223 1 form d14225 1 a14227 1 fortify d14229 1 a14231 1 fossil d14233 1 a14235 1 fts d14237 1 a14239 1 fts_open d14241 1 a14243 1 fts_set d14245 1 a14247 1 gethostbyaddr d14249 1 a14251 1 gethostbyname2 d14253 1 a14255 1 getprogname d14257 1 a14259 1 getservbyport d14261 1 a14263 1 gettext d14265 1 a14267 1 github d14269 1 a14271 1 glob d14273 1 a14275 1 gnu_configure_strict d14277 1 a14279 1 go-deps d14281 1 a14283 1 guess-license d14285 1 a14287 1 heimdal d14289 1 a14291 1 hg d14293 1 a14295 1 increment d14297 1 a14299 1 interp d14301 1 a14303 1 intl d14305 1 a14307 1 ip6 d14309 1 a14311 1 ipv6 d14313 1 a14315 1 kerberos d14317 1 a14319 1 krb5 d14321 1 a14323 1 lapack d14325 1 a14327 1 libintl_bindtextdomain d14329 1 a14331 1 libintl_textdomain d14333 1 a14335 1 libs d14337 1 a14339 1 licence d14341 1 a14343 1 lintl d14345 1 a14347 1 lock d14349 1 a14351 1 lvalue d14353 1 a14355 1 makesum d14357 1 a14359 1 mercurial d14361 1 a14363 1 meta-package d14365 1 a14367 1 mit-krb5 d14369 1 a14371 1 mkl d14373 1 a14375 1 mprotect d14377 1 a14379 1 nb d14381 1 a14383 1 netlib d14385 1 a14387 1 obstack_ptr_grow d14389 1 a14391 1 only d14393 1 a14395 1 options d14397 1 a14399 1 order d14401 1 a14403 1 override-intltool d14405 1 a14407 1 package d14409 1 a14411 1 path d14413 1 a14415 1 paxctl d14417 1 a14419 1 pc d14421 1 a14423 1 perl5 d14425 1 a14427 1 php d14429 1 a14431 1 pkg-config d14433 1 a14435 1 platform d14437 1 a14439 1 post-extract d14441 1 a14443 1 post-wrapper d14445 1 a14447 1 pre-configure d14449 1 a14451 1 pre-extract d14453 1 a14455 1 print-go-deps d14457 1 a14459 1 print-summary-data d14461 1 a14463 1 pypi d14465 1 a14467 1 readme-all d14469 1 a14471 1 recvfrom d14473 1 a14475 1 release-localbase-lock d14477 1 a14479 1 relro d14481 1 a14483 1 reorder d14485 1 a14487 1 replace_interpreter d14489 1 a14491 1 resolv d14493 1 a14495 1 ruby d14497 1 a14499 1 sendfile d14501 1 a14503 1 setenv d14505 1 a14507 1 setprogname d14509 1 a14511 1 sh d14513 1 a14515 1 show d14517 1 a14519 1 show-build-defs d14521 1 a14523 1 show-deps d14525 1 a14527 1 show-downlevel d14529 1 a14531 1 show-tools d14533 1 a14535 1 show-vars d14537 1 a14539 1 socket d14541 1 a14543 1 st_mode d14545 1 a14547 1 strcasestr d14549 1 a14551 1 strip d14553 1 a14555 1 strnlen d14557 1 a14559 1 subst d14561 1 a14563 1 subversion d14565 1 a14567 1 sunpro d14569 1 a14571 1 svn d14573 1 a14575 1 test d14577 1 a14579 1 tex d14581 1 a14583 1 tmp d14585 1 a14587 1 tools d14589 1 a14591 1 type d14593 1 a14595 1 undefined d14597 1 a14599 1 unlimit d14601 1 a14603 1 unprivileged-install-hook d14605 1 a14607 1 update d14609 1 a14611 1 upload-distfiles d14613 1 a14615 1 user d14617 1 a14619 1 vasprintf d14621 1 a14623 1 vsnprintf d14625 1 a14627 1 warning d14629 1 a14631 1 warnx d14633 1 a14635 1 wattr_on d14637 1 a14639 1 wrapper d14641 1 @ 1.322 log @doc/pkgsrc.*: regen @ text @d11417 8 @ 1.321 log @doc/pkgsrc.*: regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.39 2021/01/02 08:32:15 jnemeth Exp $

    d444 1 a444 1
    B. Build logs
    d446 24 a469 2
    B.1. Building figlet
    B.2. Packaging figlet
    d471 1 a471 1
    C. Directory layout of the pkgsrc FTP server
    d473 5 a477 5
    C.1. distfiles: The distributed source files
    C.2. misc: Miscellaneous things
    C.3. packages: Binary packages
    C.4. reports: Bulk build reports
    C.5. current, d482 2 a483 2
    D. Help topics
    E. Editing guidelines for the pkgsrc guide
    d485 2 a486 2
    E.1. Make targets
    E.2. Procedure
    d531 1 a531 1
  • www/apache24 - The Apache d533 1 a533 1

  • www/firefox - The Firefox d535 1 a535 1

  • meta-pkgs/gnome - The GNOME d537 1 a537 1

  • meta-pkgs/kde4 - The K d585 1 a585 1 find such bugs: static analysis tools (pkgtools/pkglint), build-time checks (portability d967 1 a967 1

    The available help topics are listed in Appendix D, Help topics.

    d1028 1 a1028 1 2021Q1.

    d1042 1 a1042 1 which are described in detail in Appendix C, Directory layout of the pkgsrc FTP server.

    d1054 2 a1055 2

    The tar file for the stable branch 2021Q1 is in the directory pkgsrc-2021Q1 and is also called pkgsrc.tar.gz.

    d1058 1 a1058 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2021Q1/pkgsrc.tar.gz
  • d1073 1 a1073 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2021Q1 -P pkgsrc
    d1158 1
    a1158 1
    	-rpkgsrc-2021Q1 option.

    d1412 1 a1412 1 to the root users crontab(5) entry. For example the entry d1441 1 a1441 1 see daily.conf(5) and security.conf(5) for more details. d1448 1 a1448 1 Install pkgtools/lintpkgsrc and run d1473 1 a1473 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

    d1531 1 a1531 1 meta-pkgs/kde4), the build process may d1597 1 a1597 1 system by building as shown in Appendix B, Build logs.

    d1629 1 a1629 1

    If you invoke the make(1) command with d1637 1 a1637 1

    If you want to know the value of a certain make(1) d1640 1 a1640 1 target. e.g. to show the expansion of the make(1) d1653 1 a1653 1 install a binary package - if available - via pkg_add(1), d1657 1 a1657 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1696 1 a1696 1 make(1) from the base system, it is in the directory d1838 1 a1838 1 privileges using su(1) d1938 1 a1938 1 at the devel/cpuflags d2078 1 a2078 1 another system with pkg_add(1). This saves having to build d2094 2 a2095 2 gzipped tar file. See Section B.2, “Packaging figlet” for a continuation of the above misc/figlet example.

    d2510 1 a2510 1 pkgtools/cdpack package provides d2760 1 a2760 1
    d10901 19 a10919 2
    B.1. Building figlet
    B.2. Packaging figlet
    d10922 22 d10946 79 a11024 89 B.1. Building figlet
    # make
    ===> Checking for vulnerabilities in figlet-2.2.1nb2
    => figlet221.tar.gz doesn't seem to exist on this system.
    => Attempting to fetch figlet221.tar.gz from ftp://ftp.figlet.org/pub/figlet/program/unix/.
    => [172219 bytes]
    Connected to ftp.plig.net.
    220 ftp.plig.org NcFTPd Server (licensed copy) ready.
    331 Guest login ok, send your complete e-mail address as password.
    230-You are user #5 of 500 simultaneous users allowed.
    230-
    230-  ___ _             _ _
    230- |  _| |_ ___   ___| |_|___   ___ ___ ___
    230- |  _|  _| . |_| . | | | . |_| . |  _| . |
    230- |_| |_| |  _|_|  _|_|_|_  |_|___|_| |_  |
    230-         |_|   |_|     |___|         |___|
    230-
    230-** Welcome to ftp.plig.org **
    230-
    230-Please note that all transfers from this FTP site are logged. If you
    230-do not like this, please disconnect now.
    230-
    230-This archive is available via
    230-
    230-HTTP:  http://ftp.plig.org/
    230-FTP:   ftp://ftp.plig.org/     (max 500 connections)
    230-RSYNC: rsync://ftp.plig.org/   (max  30 connections)
    230-
    230-Please email comments, bug reports and requests for packages to be
    230-mirrored to ftp-admin@@plig.org.
    230-
    230-
    230 Logged in anonymously.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    200 Type okay.
    250 "/pub" is new cwd.
    250-"/pub/figlet" is new cwd.
    250-
    250-Welcome to the figlet archive at ftp.figlet.org
    250-
    250-	ftp://ftp.figlet.org/pub/figlet/
    250-
    250-The official FIGlet web page is:
    250-	http://www.figlet.org/
    250-
    250-If you have questions, please mailto:info@@figlet.org. If you want to
    250-contribute a font or something else, you can email us.
    250
    250 "/pub/figlet/program" is new cwd.
    250 "/pub/figlet/program/unix" is new cwd.
    local: figlet221.tar.gz remote: figlet221.tar.gz
    502 Unimplemented command.
    227 Entering Passive Mode (195,40,6,41,246,104)
    150 Data connection accepted from 84.128.86.72:65131; transfer starting for figlet221.tar.gz (172219 bytes).
    38% |**************                       | 65800      64.16 KB/s    00:01 ETA
    226 Transfer completed.
    172219 bytes received in 00:02 (75.99 KB/s)
    221 Goodbye.
    => Checksum OK for figlet221.tar.gz.
    ===> Extracting for figlet-2.2.1nb2
    ===> Required installed package ccache-[0-9]*: ccache-2.3nb1 found
    ===> Patching for figlet-2.2.1nb2
    ===> Applying pkgsrc patches for figlet-2.2.1nb2
    ===> Overriding tools for figlet-2.2.1nb2
    ===> Creating toolchain wrappers for figlet-2.2.1nb2
    ===> Configuring for figlet-2.2.1nb2
    ===> Building for figlet-2.2.1nb2
    gcc -O2 -DDEFAULTFONTDIR=\"/usr/pkg/share/figlet\"  -DDEFAULTFONTFILE=\"standard.flf\"  figlet.c zipio.c crc.c inflate.c -o figlet
    chmod a+x figlet
    gcc -O2 -o chkfont chkfont.c
    => Unwrapping files-to-be-installed.
    #
    # make install
    ===> Checking for vulnerabilities in figlet-2.2.1nb2
    ===> Installing for figlet-2.2.1nb2
    install -d -o root -g wheel -m 755 /usr/pkg/bin
    install -d -o root -g wheel -m 755 /usr/pkg/man/man6
    mkdir -p /usr/pkg/share/figlet
    cp figlet /usr/pkg/bin
    cp chkfont /usr/pkg/bin
    chmod 555 figlist showfigfonts
    cp figlist /usr/pkg/bin
    cp showfigfonts /usr/pkg/bin
    cp fonts/*.flf /usr/pkg/share/figlet
    cp fonts/*.flc /usr/pkg/share/figlet
    cp figlet.6 /usr/pkg/man/man6
    ===> Registering installation for figlet-2.2.1nb2
    #
    d11026 29 a11054 11

    B.2. Packaging figlet

    # make package
    ===> Checking for vulnerabilities in figlet-2.2.1nb2
    ===> Packaging figlet-2.2.1nb2
    ===> Building binary package for figlet-2.2.1nb2
    Creating package /home/cvs/pkgsrc/packages/i386/All/figlet-2.2.1nb2.tgz
    Using SrcDir value of /usr/pkg
    Registering depends:.
    #
    d11057 22 a11078 15

    Appendix C. Directory layout of the pkgsrc FTP server

    Table of Contents

    C.1. distfiles: The distributed source files
    C.2. misc: Miscellaneous things
    C.3. packages: Binary packages
    C.4. reports: Bulk build reports
    C.5. current, stable, pkgsrc-20xxQy: source packages
    d11080 12 a11091 17

    As in other big projects, the directory layout of pkgsrc is quite complex for newbies. This chapter explains where you find things on the FTP server. The base directory on ftp.NetBSD.org is /pub/pkgsrc/. On other servers it may be different, but inside this directory, everything should look the same, no matter on which server you are. This directory contains some subdirectories, which are explained below.

    C.1. distfiles: The distributed source files

    The directory distfiles contains lots of archive files from all pkgsrc packages, which are mirrored here. The subdirectories are called after their package names and are used when the distributed files have names that don't explicitly contain a version number or are otherwise too generic (for example release.tar.gz).

    a11092 5

    C.2. misc: Miscellaneous things

    This directory contains things that individual pkgsrc developers find worth publishing.

    a11093 43

    C.3. packages: Binary packages

    This directory contains binary packages for the various platforms that are supported by pkgsrc. Each subdirectory is of the form OPSYS/ARCH/OSVERSION_TAG. The meaning of these variables is:

    • OPSYS is the name of the operating system for which the packages have been built. The name is taken from the output of the uname command, so it may differ from the one you are used to hear.

    • ARCH is the hardware architecture of the platform for which the packages have been built. It also includes the ABI (Application Binary Interface) for platforms that have several of them.

    • OSVERSION is the version of the operating system. For version numbers that change often (for example NetBSD-current), the often-changing part should be replaced with an x, for example 4.99.x.

    • TAG is either 20xxQy for a stable branch, or head for packages built from the HEAD branch. The latter should only be used when the packages are updated on a regular basis. Otherwise the date from checking out pkgsrc should be appended, for example head_20071015.

    The rationale for exactly this scheme is that the pkgsrc users looking for binary packages can quickly click through the directories on the server and find the best binary packages for their machines. Since they usually know the operating system and the hardware architecture, OPSYS and ARCH are placed first. After these choices, they can select the best combination of OSVERSION and TAG together, since it is usually the case that packages stay compatible between different version of the operating system.

    In each of these directories, there is a whole binary packages collection for a specific platform. It has a directory called All which contains all binary packages. Besides that, there are various category directories that contain symbolic links to the real binary packages.

    d11097 542 a11638 1 C.4. reports: Bulk build reports
    d11641 1 a11641 1 structure of subdirectories should look like the one in Section C.3, “packages: Binary packages”.

    d11645 1 a11645 1 C.5. current, d11685 1 a11685 1 Appendix D. Help topics
    d12756 1 d12758 2 d12761 1 a12763 1 MLDONKEY_USER d12765 1 a12767 1 MONOTONE_USER d12769 1 a12771 1 MOTIF_TYPE d12773 1 a12775 1 MPI_TYPE d12777 1 a12779 1 MSGFMT_STRIP_MSGID_PLURAL d12781 1 a12783 1 MUST d12785 1 a12787 1 MYSQL_CHARSET d12789 1 a12791 1 MYSQL_EXTRA_CHARSET d12793 1 a12795 1 MYSQL_USER d12797 1 a12799 1 MYSQL_VERSIONS_ACCEPTED d12801 1 a12803 1 MYSQL_VERSION_DEFAULT d12805 1 a12807 1 NAGIOSDIR d12809 1 a12811 1 NAGIOS_USER d12813 1 a12815 1 NATIVE_APPEND_ELF d12817 1 a12819 1 NATIVE_MACHINE_PLATFORM d12821 1 a12823 1 NBPAX_PROGRAM_PREFIX d12825 1 a12827 1 NMH_EDITOR d12829 1 a12831 1 NMH_PAGER d12833 1 a12835 1 NOTE d12837 1 a12839 1 NOT_PAX_ASLR_SAFE d12841 1 a12843 1 NO_BUILD d12845 1 a12847 1 NO_CONFIGURE d12849 1 a12851 1 NS_PREFERRED d12853 1 a12855 1 NULLMAILER_USER d12857 1 a12859 1 OASIS_BUILD_ARGS d12861 1 a12863 1 OBJMACHINE d12865 1 a12867 1 OCAML_FINDLIB_REGISTER d12869 1 a12871 1 OCAML_SITELIBDIR d12873 1 a12875 1 OCAML_USE_DUNE d12877 1 a12879 1 OCAML_USE_JBUILDER d12881 1 a12883 1 OCAML_USE_OASIS_DYNRUN d12885 1 a12887 1 OCAML_USE_OPT_COMPILER d12889 1 a12891 1 OMF d12893 1 a12895 1 ONLY_FOR_PLATFORM d12897 1 a12899 1 OPENSSH_GROUP d12901 1 a12903 1 OPSYS d12905 1 a12907 1 OS d12909 1 a12911 1 OSX d12913 1 a12915 1 OS_HAVE_ALSA d12917 1 a12919 1 OS_VARIANT d12921 1 a12923 1 OTF_FONTS_DIR d12925 1 a12927 1 OVERRIDE_GEMSPEC d12929 1 a12931 1 OVERRIDE_ROCKSPEC d12933 1 a12935 1 OWN_DIRS_PERMS d12937 1 a12939 1 P4PORT d12941 1 a12943 1 P4USER d12945 1 a12947 1 PALMOS_DEFAULT_SDK d12949 1 a12951 1 PAM_DEFAULT d12953 1 a12955 1 PASSIVE_FETCH d12957 1 a12959 1 PATCHFILES d12961 1 a12963 1 PATCH_DEBUG d12965 1 a12967 1 PATCH_DIST_CAT d12969 1 a12971 1 PATCH_FUZZ_FACTOR d12973 1 a12975 1 PATH d12977 1 a12979 1 PEAR d12981 1 a12983 1 PEAR_CHANNEL_ALIAS d12985 1 a12987 1 PEAR_CMD d12989 1 a12991 1 PEAR_PACKAGE_XML d12993 1 a12995 1 PERL5_CONFIGURE d12997 1 a12999 1 PERL5_LDFLAGS d13001 1 a13003 1 PERL5_MODULE_TYPE d13005 1 a13007 1 PERL5_PACKLIST_DIR d13009 1 a13011 1 PERL5_SITEBASE d13013 1 a13015 1 PERL5_VENDORBASE d13017 1 a13019 1 PFVAR_H d13021 1 a13023 1 PGGROUP d13025 1 a13027 1 PGPKGSRCDIR d13029 1 a13031 1 PGSQL_VERSION d13033 1 a13035 1 PGSQL_VERSION_DEFAULT d13037 1 a13039 1 PG_LIB_EXT d13041 1 a13043 1 PHPCOMMON_MK d13045 1 a13047 1 PHP_BASE_VERS d13049 1 a13051 1 PHP_EXTENSION_DIR d13053 1 a13055 1 PHP_PKG_PREFIX d13057 1 a13059 1 PHP_VERSIONS_ACCEPTED d13061 1 a13063 1 PHP_VERSION_DEFAULT d13065 1 a13067 1 PILRC_USE_GTK d13069 1 a13071 1 PKGCONFIG_FILE d13073 1 a13075 1 PKGCONFIG_OVERRIDE_STAGE d13077 1 a13079 1 PKGGNUDIR d13081 1 a13083 1 PKGLOCALEDIR d13085 1 a13087 1 PKGNAME d13089 1 a13091 1 PKGPATH d13093 1 a13095 1 PKGSRC_BLAS_TYPES d13097 1 a13099 1 PKGSRC_COMPILER d13101 1 a13103 1 PKGSRC_LOCKTYPE d13105 1 a13107 1 PKGSRC_MESSAGE_RECIPIENTS d13109 1 a13111 1 PKGSRC_MKREPRO d13113 1 a13115 1 PKGSRC_SETENV d13117 1 a13119 1 PKGSRC_TODO d13121 1 a13123 1 PKGSRC_USE_FORTIFY d13125 1 a13127 1 PKGSRC_USE_SSP d13129 1 a13131 1 PKGTASKS_DATAFILE d13133 1 a13135 1 PKGTOOLS_ENV d13137 1 a13139 1 PKG_APACHE d13141 1 a13143 1 PKG_APACHE_DEFAULT d13145 1 a13147 1 PKG_BUILD_OPTIONS d13149 1 a13151 1 PKG_CONFIG d13153 1 a13155 1 PKG_CREATE_USERGROUP d13157 1 a13159 1 PKG_DEBUG_LEVEL d13161 1 a13163 1 PKG_DESTDIR_SUPPORT d13165 1 a13167 1 PKG_DISABLED_OPTIONS d13169 1 a13171 1 PKG_FC d13173 1 a13175 1 PKG_GECOS d13177 1 a13179 1 PKG_GROUPS d13181 1 a13183 1 PKG_HOME d13185 1 a13187 1 PKG_JAVA_HOME d13189 1 a13191 1 PKG_JVMS_ACCEPTED d13193 1 a13195 1 PKG_LEGACY_OPTIONS d13197 1 a13199 1 PKG_OPTIONS d13201 1 a13203 1 PKG_OPTIONS_LEGACY_OPTS d13205 1 a13207 1 PKG_OPTIONS_NONEMPTY_SETS d13209 1 a13211 1 PKG_OPTIONS_REQUIRED_GROUPS d13213 1 a13215 1 PKG_PHP d13217 1 a13219 1 PKG_PHP_VERSION d13221 1 a13223 1 PKG_REFCOUNT_DBDIR d13225 1 a13227 1 PKG_RESUME_TRANSFERS d13229 1 a13231 1 PKG_SUGGESTED_OPTIONS d13233 1 a13235 1 PKG_SYSCONFBASE d13237 1 a13239 1 PKG_SYSCONFDIR d13241 1 a13243 1 PKG_SYSCONFSUBDIR d13245 1 a13247 1 PKG_TOOLS_BIN d13249 1 a13251 1 PKG_UPDATE_FONTS_DB d13253 1 a13255 1 PKG_USERS_VARS d13257 1 a13259 1 PLEASE d13261 1 a13263 1 PLIST_AWK d13265 1 a13267 1 PLIST_SRC d13269 1 a13271 1 PLIST_TYPE d13273 1 a13275 1 POPTOP_USE_MPPE d13277 1 a13279 1 POST_FETCH_HOOK d13281 1 a13283 1 PREFER_NATIVE d13285 1 a13287 1 PREFER_PKGSRC d13289 1 a13291 1 PREPEND_PATH d13293 1 a13295 1 PRIVILEGED_STAGES d13297 1 a13299 1 PTHREAD_AUTO_VARS d13301 1 a13303 1 PTHREAD_LDFLAGS d13305 1 a13307 1 PTHREAD_OPTS d13309 1 a13311 1 PVM_SSH d13313 1 a13315 1 PYTHON_FOR_BUILD_ONLY d13317 1 a13319 1 PYTHON_VERSIONED_DEPENDENCIES d13321 1 a13323 1 PYTHON_VERSIONS_INCOMPATIBLE d13325 1 a13327 1 PYTHON_VERSION_REQD d13329 1 a13331 1 PY_NO_EGG d13333 1 a13335 1 QMAIL_ALIAS_USER d13337 1 a13339 1 QMAIL_LOG_USER d13341 1 a13343 1 QMAIL_PASSWD_USER d13345 1 a13347 1 QMAIL_QUEUE_DIR d13349 1 a13351 1 QMAIL_QUEUE_USER d13353 1 a13355 1 QMAIL_ROOT_USER d13357 1 a13359 1 QPOPPER_FAC d13361 1 a13363 1 QPOPPER_USER d13365 1 a13367 1 RASMOL_DEPTH d13369 1 a13371 1 RCD_ORDER d13373 1 a13375 1 RCD_SCRIPTS_DIR d13377 1 a13379 1 RCD_SCRIPTS_MODE d13381 1 a13383 1 RCD_SCRIPT_SRC d13385 1 a13387 1 RDOC d13389 1 a13391 1 READLINE_TYPE d13393 1 a13395 1 REAL_ROOT_USER d13397 1 a13399 1 RELAY_CTRL_DIR d13401 1 a13403 1 REPLACE_AWK d13405 1 a13407 1 REPLACE_CSH d13409 1 a13411 1 REPLACE_PERL d13413 1 a13415 1 REPLACE_PHP d13417 1 d14631 1 a14631 1 Appendix E. Editing guidelines for the pkgsrc guide d14635 2 a14636 2
    E.1. Make targets
    E.2. Procedure
    d14643 1 a14643 1 E.1. Make targets d14659 1 a14659 1 E.2. Procedure d14668 1 a14668 1 you install the meta-pkgs/pkgsrc-guide-tools package.

    @ 1.320 log @doc/pkgsrc.*: regen @ text @d7788 1 a7788 1 foo>'=1<1.2 would mark d7796 1 a7796 1 foo>'=1<1.1nb2.

    @ 1.319 log @doc/pkgsrc.*: regen @ text @d342 4 a345 3
    21.4.3. Packages containing Perl scripts
    21.4.4. Packages containing shell scripts
    21.4.5. Other programming languages
    d2210 6 a2215 1 unprivileged bulk build and helps configuring distributed bulk builds.

    d2227 2 a2228 2
  • 40 GB for the distfiles (read-write, remote, temporary)

  • 30 GB for the binary packages (read-write, remote, permanent)

  • d3288 4 a3291 3
    21.4.3. Packages containing Perl scripts
    21.4.4. Packages containing shell scripts
    21.4.5. Other programming languages
    d7286 4 a7289 3
    21.4.3. Packages containing Perl scripts
    21.4.4. Packages containing shell scripts
    21.4.5. Other programming languages
    d7776 28 a7803 2 localsrc/security/advisories/pkg-vulnerabilities, and after committing that file, ask pkgsrc-security@@NetBSD.org to d7814 2 d8498 25 a8522 1 21.4.3. Packages containing Perl scripts d8539 1 a8539 1 21.4.4. Packages containing shell scripts d8554 1 a8554 1 21.4.5. Other programming languages d11132 1 d11134 2 d11137 1 a11139 1 ACCEPTABLE_LICENSES d11141 1 a11143 1 ADDITIONAL d11145 1 a11147 1 AIX d11149 1 d11152 1 a11152 1 ALL_ENV d11224 1 d11226 7 d11264 1 d11266 2 d11269 1 a11271 1 BUILDLINK_FNAME_TRANSFORM d11273 1 a11275 1 BUILDLINK_LIBS d11277 1 a11279 1 BUILDLINK_PKGNAME d11281 1 a11283 1 BUILDLINK_RPATHDIRS d11285 1 a11287 1 BUILD_DEFS d11289 1 a11291 1 BUILD_DEPENDS d11293 1 a11295 1 BUILD_ENV_SHELL d11297 1 a11299 1 BUILD_MAKE_FLAGS d11301 1 a11303 1 BUILTIN_FIND_FILES d11305 1 a11307 1 BUILTIN_FIND_GREP d11309 1 a11311 1 BUILTIN_FIND_HEADERS_VAR d11313 1 a11315 1 BUILTIN_FIND_PKGCONFIG_VAR d11317 1 a11319 1 BUILTIN_TEST_CURSES_DEFINES d11321 1 a11323 1 BUILTIN_VERSION_SCRIPT d11325 1 a11327 1 BUILTIN_X11_VERSION d11329 1 a11331 1 CACTI_USER d11333 1 a11335 1 CANNA_USER d11337 1 d11356 1 d11358 2 d11361 1 a11363 1 CHECK_FILES d11365 1 a11367 1 CHECK_FILES_STRICT d11369 1 a11371 1 CHECK_HEADERS_SKIP d11373 1 a11375 1 CHECK_INTERPRETER_SKIP d11377 1 a11379 1 CHECK_PERMS_AUTOFIX d11381 1 a11383 1 CHECK_PORTABILITY d11385 1 a11387 1 CHECK_PORTABILITY_SKIP d11389 1 a11391 1 CHECK_RELRO_SKIP d11393 1 a11395 1 CHECK_SHLIBS d11397 1 a11399 1 CHECK_SHLIBS_SKIP d11401 1 a11403 1 CHECK_SSP d11405 1 a11407 1 CHECK_SSP_SUPPORTED d11409 1 a11411 1 CHECK_STRIPPED_SKIP d11413 1 a11415 1 CHECK_WRKREF_EXTRA_DIRS d11417 1 a11419 1 CLAMAV_DBDIR d11421 1 a11423 1 CLAMAV_USER d11425 1 a11427 1 CLEANDEPENDS d11429 1 a11431 1 CMAKE_INSTALL_NAME_DIR d11433 1 a11435 1 CMAKE_MODULE_PATH_OVERRIDE d11437 1 a11439 1 CMAKE_PREFIX_PATH d11441 9 d11512 17 d11530 2 d11533 1 a11535 1 CYRUS_IDLE d11537 1 a11539 1 DAEMONTOOLS_GROUP d11541 1 a11543 1 DARWIN_NO_SYSTEM_LIBS d11545 1 a11547 1 DBUS_GROUP d11549 1 a11551 1 DEFANG_GROUP d11553 1 a11555 1 DEFAULT_ACCEPTABLE_LICENSES d11557 1 a11559 1 DEFAULT_IRC_SERVER d11561 1 a11563 1 DEF_UMASK d11565 1 a11567 1 DEINSTALL_SRC d11569 1 a11571 1 DELAYED_ERROR_MSG d11573 1 a11575 1 DEPENDS d11577 1 a11579 1 DEPENDS_TYPE d11581 1 a11583 1 DESTDIR_VARNAME d11585 1 a11587 1 DIGEST_REQD d11589 1 a11591 1 DISTFILES d11593 1 a11595 1 DISTNAME d11597 1 a11599 1 DIST_SUBDIR d11601 1 a11603 1 DJBDNS_CACHE_USER d11605 1 a11607 1 DJBDNS_LOG_USER d11609 1 a11611 1 DJBDNS_TINY_USER d11613 1 a11615 1 DL_AUTO_VARS d11617 1 a11619 1 DL_LDFLAGS d11621 1 a11623 1 DNS d11625 1 a11627 1 DOWNLOADED_DISTFILE d11629 1 a11631 1 DYNAMIC_SITES_CMD d11633 1 a11635 1 ECHO d11637 1 a11639 1 ELK_GUI d11641 1 a11643 1 EMULDIR d11645 1 a11647 1 EMULSUBDIRSLASH d11649 1 a11651 1 EMUL_DISTRO d11653 1 a11655 1 EMUL_IS_NATIVE d11657 1 a11659 1 EMUL_OPSYS d11661 1 a11663 1 EMUL_PLATFORM d11665 1 a11667 1 EMUL_PREFER d11669 1 a11671 1 EMUL_TYPE d11673 1 a11675 1 EXIM_GROUP d11677 1 a11679 1 EXPORT_SYMBOLS_LDFLAGS d11681 1 a11683 1 EXTRACT_CMD d11685 1 a11687 1 EXTRACT_DIR d11689 1 a11691 1 EXTRACT_ENV d11693 1 a11695 1 EXTRACT_OPTS d11697 1 a11699 1 EXTRACT_USING d11701 1 a11703 1 FAILOVER_FETCH d11705 1 a11707 1 FAKE_NCURSES d11709 1 a11711 1 FAM_ACCEPTED d11713 1 a11715 1 FAM_SERVER d11717 1 a11719 1 FEATURE_CPPFLAGS d11721 1 a11723 1 FEATURE_LIBS d11725 1 a11727 1 FETCH_BEFORE_ARGS d11729 1 a11731 1 FETCH_OUTPUT_ARGS d11733 1 a11735 1 FETCH_RESUME_ARGS d11737 1 a11739 1 FETCH_USE_IPV4_ONLY d11741 1 a11743 1 FILES_SUBST d11745 1 a11747 1 FIX_SYSTEM_HEADERS d11749 1 a11751 1 FLUXBOX_USE_KDE d11753 1 d11756 1 a11756 1 FLUXBOX_USE_XINERAMA d11764 8 d11848 20 d11904 1 d11906 2 d11909 1 a11911 1 HASKELL_ENABLE_SHARED_LIBRARY d11913 1 a11915 1 HAS_CONFIGURE d11917 5 d12021 4 d12060 1 a12061 1 LATEX2HTML_ICONPATH d12064 1 a12065 1 LDCONFIG_REMOVE_CMD d12068 1 a12069 1 LEAFNODE_GROUP d12072 1 d12074 2 d12077 1 a12079 1 LIBDVDCSS_MASTER_SITES d12081 1 a12083 1 LIBTOOL d12085 1 a12087 1 LIBTOOL_M4_OVERRIDE d12089 1 a12091 1 LICENSE d12093 1 d12096 5 a12100 1 LINK_RPATH_FLAG d12116 1 d12118 2 d12121 1 a12123 1 MAILAGENT_DOMAIN d12125 1 a12127 1 MAILAGENT_FQDN d12129 1 d12132 1 a12132 1 MAJORDOMO_HOMEDIR d12216 1 d12218 2 d12221 1 a12223 1 MYSQL_DATADIR d12225 1 a12227 1 MYSQL_GROUP d12229 1 a12231 1 MYSQL_VERSION d12233 1 a12235 1 MYSQL_VERSIONS_ALL d12237 1 a12239 1 NAGIOSCMD_GROUP d12241 1 a12243 1 NAGIOS_GROUP d12245 1 a12247 1 NATIVE_APPEND_ABI d12249 1 a12251 1 NATIVE_EXEC_FMT d12253 1 a12255 1 NATIVE_OBJECT_FMT d12257 1 a12259 1 NETBSD_LOGIN_NAME d12261 1 a12263 1 NMH_MTA d12265 1 a12267 1 NOLOGIN d12269 1 a12271 1 NOT_FOR_PLATFORM d12273 1 a12275 1 NOT_PAX_MPROTECT_SAFE d12277 1 a12279 1 NO_CHECKSUM d12281 1 a12283 1 NO_SKIP d12285 1 a12287 1 NULLMAILER_GROUP d12289 1 a12291 1 OASIS d12293 1 a12295 1 OBJHOSTNAME d12297 1 a12299 1 OCAML_FINDLIB_DIRS d12301 1 a12303 1 OCAML_FINDLIB_REGISTER_VERBOSE d12305 1 a12307 1 OCAML_TOPKG_DOCDIR d12309 1 a12311 1 OCAML_USE_FINDLIB d12313 1 a12315 1 OCAML_USE_OASIS d12317 1 a12319 1 OCAML_USE_OPAM d12321 1 a12323 1 OCAML_USE_TOPKG d12325 1 a12327 1 ONLY_FOR_COMPILER d12329 1 a12331 1 OPENSSH_CHROOT d12333 1 a12335 1 OPENSSH_USER d12337 1 a12339 1 OPSYS_EMULDIR d12341 1 a12343 1 OSS_TYPE d12345 5 a12351 1 OSX_TOLERATE_SDK_SKEW d12353 1 a12355 1 OS_VERSION d12357 1 a12359 1 OVERRIDE_DIRDEPTH d12361 1 d12364 1 a12364 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12412 8 d12801 4 d12817 3 d12821 1 a12823 1 READLINE_DEFAULT d12825 1 a12827 1 REAL_ROOT_GROUP d12829 1 a12831 1 RECURSIVE_MAKE d12833 1 a12835 1 RELRO_SUPPORTED d12837 1 a12839 1 REPLACE_BASH d12841 1 a12843 1 REPLACE_KSH d12845 1 a12847 1 REPLACE_PERL6 d12849 1 a12851 1 REPLACE_PYTHON d12853 1 a12855 1 REPLACE_RUBY_DIRS d12857 1 a12859 1 REPLACE_SH d12861 1 a12863 1 REQD_DIRS d12865 1 a12867 1 REQD_FILES d12869 1 a12871 1 REQD_FILES_PERMS d12873 1 a12875 1 RESOLV_LDFLAGS d12877 5 a12883 1 RM d12885 1 a12887 1 ROOT_GROUP d12889 1 a12891 1 RPCGEN d12893 1 a12895 1 RPM2PKG_PLIST d12897 1 a12899 1 RPM2PKG_STAGE d12901 1 a12903 1 RPM2PKG_SUBPREFIX d12905 1 a12907 1 RPMIGNOREPATH d12909 1 a12911 1 RSSH_CVS_PATH d12913 1 a12915 1 RSSH_RSYNC_PATH d12917 1 a12919 1 RSSH_SFTP_SERVER_PATH d12921 1 a12923 1 RUBYGEM d12925 1 a12927 1 RUBYGEM_OPTIONS d12929 1 a12931 1 RUBY_ABI_VERSION d12933 1 a12935 1 RUBY_ARCHINC d12937 1 a12939 1 RUBY_BASE d12941 1 a12943 1 RUBY_BUILD_DOCUMENT d12945 1 a12947 1 RUBY_DOC d12949 1 a12951 1 RUBY_EG d12953 1 a12955 1 RUBY_EXTCONF d12957 1 a12959 1 RUBY_EXTCONF_DEBUG d12961 1 a12963 1 RUBY_GEM_BASE d12965 1 a12967 1 RUBY_LIB d12969 1 a12971 1 RUBY_NAME d12973 1 a12975 1 RUBY_PKGPREFIX d12977 1 a12979 1 RUBY_RAILS52_VERSION d12981 1 a12983 1 RUBY_RAILS61_VERSION d12985 1 a12987 1 RUBY_RAILS_DEFAULT d12989 1 a12991 1 RUBY_RAILS_STRICT_DEP d12993 1 a12995 1 RUBY_SETUP d12997 1 a12999 1 RUBY_SHLIBALIAS d13001 1 a13003 1 RUBY_SIMPLE_INSTALL d13005 1 a13007 1 RUBY_SITELIB d13009 1 a13011 1 RUBY_SITERIDIR d13013 1 a13015 1 RUBY_SRCDIR d13017 1 a13019 1 RUBY_SUFFIX d13021 1 a13023 1 RUBY_USE_PTHREAD d13025 1 a13027 1 RUBY_VENDORLIB d13029 1 a13031 1 RUBY_VER d13033 1 a13035 1 RUBY_VERSIONS_ACCEPTED d13037 1 a13039 1 RUBY_VERSION_DEFAULT d13041 1 a13043 1 RUBY_VER_DIR d13045 1 a13047 1 RUN_LDCONFIG d13049 1 a13051 1 SCO d13053 1 a13055 1 SCREWS_USER d13057 1 a13059 1 SCROLLKEEPER_DATADIR d13061 1 a13063 1 SCROLLKEEPER_UPDATEDB d13065 1 a13067 1 SERIAL_DEVICES d13069 1 a13071 1 SETGID_GAMES_PERMS d13073 1 a13075 1 SH d13077 1 d13164 8 d13249 1 a13249 1 TTF_FONTS_DIR d13252 1 a13253 1 UAC_REQD_EXECS d13256 1 a13257 1 UCSPI_SSL_USER d13260 1 a13261 1 UNPRIVILEGED d13264 1 a13265 1 UNPRIVILEGED_GROUPS d13268 1 a13269 1 UNWRAP_FILES d13272 1 a13273 1 UPDATE_GEMSPEC d13276 1 a13277 1 URI d13280 1 a13281 1 USERPPP_GROUP d13284 1 a13285 1 USE_ABI_DEPENDS d13288 1 d13290 2 d13293 1 a13295 1 USE_BUILTIN d13297 1 a13299 1 USE_CURSES d13301 1 a13303 1 USE_DB185 d13305 1 a13307 1 USE_GAMESGROUP d13309 1 a13311 1 USE_IMAKE d13313 1 a13315 1 USE_JAVA2 d13317 1 a13319 1 USE_LIBTOOL d13321 1 a13323 1 USE_NETBSD_REPO d13325 1 a13327 1 USE_PKGSRC_GCC_RUNTIME d13329 1 a13331 1 USE_PKG_ADMIN_DIGEST d13333 1 a13335 1 USE_RUBY_INSTALL d13337 1 a13339 1 USE_RUBY_SETUP_PKG d13341 1 a13343 1 UUCP_GROUP d13345 1 a13347 1 VARBASE d13349 1 a13351 1 VIM_EXTRA_OPTS d13353 1 a13355 1 WCALC_CGIDIR d13357 1 a13359 1 WCALC_HTMLDIR d13361 1 a13363 1 WDM_MANAGERS d13365 1 a13367 1 WRAPPER_REORDER_CMDS d13369 1 a13371 1 WRKDIR_BASENAME d13373 1 a13375 1 WRKLOG d13377 1 a13379 1 WRKSRC d13381 1 a13383 1 X11 d13385 1 a13387 1 X11_PKGSRCDIR d13389 1 a13391 1 X509_CERTIFICATE d13393 1 a13395 1 XAW_TYPE d13397 1 a13399 1 XMKMF d13401 1 d13404 1 a13404 1 XXX d13545 3 d13549 1 a13551 1 declaration d13553 1 a13555 1 defined d13557 1 a13559 1 dependencies d13561 1 a13563 1 depends-checksum d13565 1 a13567 1 deps d13569 1 a13571 1 destdir d13573 1 a13575 1 distclean d13577 1 a13579 1 dl d13581 1 a13583 1 do-build d13585 1 a13587 1 do-clean d13589 1 a13591 1 do-configure-post-hook d13593 1 d13596 1 a13596 1 do-fetch d13612 1 d13614 2 d13617 1 a13619 1 errx d13621 1 a13623 1 exp d13625 1 a13627 1 fabs d13629 1 a13631 1 features d13633 1 a13635 1 fetch-list d13637 1 a13639 1 forbids d13641 1 a13643 1 format d13645 1 d13648 1 a13648 1 fortify_source d13681 3 d13685 1 d13708 1 d13710 2 d13713 1 a13715 1 inet_aton d13717 1 a13719 1 interpreter d13721 1 a13723 1 ip4 d13725 1 a13727 1 ipv4 d13729 1 a13731 1 iso d13733 1 a13735 1 krb d13737 1 a13739 1 ksh d13741 1 a13743 1 latex d13745 1 a13747 1 libintl_gettext d13749 1 a13751 1 libnbcompat d13753 1 a13755 1 libtool d13757 1 a13759 1 license d13761 1 a13763 1 little-endian d13765 1 a13767 1 locking d13769 1 a13771 1 make d13773 1 d13776 1 a13776 1 memory d13800 1 d13802 2 d13805 1 a13807 1 occurs d13809 1 a13811 1 openblas d13813 1 a13815 1 options.mk d13817 1 a13819 1 override d13821 1 a13823 1 override-message-intltool d13825 1 a13827 1 parallel d13829 1 a13831 1 pax d13833 1 a13835 1 pbulk-index d13837 1 a13839 1 perl d13841 1 a13843 1 perms d13845 1 a13847 1 pkg-build-options d13849 1 a13851 1 pkg_build_options d13853 1 a13855 1 plist d13857 1 a13859 1 post-fetch d13861 1 a13863 1 pre-build-checks-hook d13865 1 a13867 1 pre-configure-checks-hook d13869 1 a13871 1 pre-fetch d13873 1 a13875 1 print-plist d13877 1 a13879 1 privileged-install-hook d13881 1 a13883 1 python d13885 1 a13887 1 recv d13889 1 a13891 1 regcomp d13893 1 a13895 1 release-lock d13897 1 a13899 1 rename d13901 1 a13903 1 replace d13905 1 a13907 1 reproducible d13909 1 a13911 1 root d13913 1 a13915 1 send d13917 1 a13919 1 sendto d13921 1 a13923 1 setgid d13925 1 a13927 1 setuid d13929 1 a13931 1 shebang d13933 1 a13935 1 show-all d13937 1 a13939 1 show-depends d13941 1 a13943 1 show-distfiles d13945 1 a13947 1 show-subdir-var d13949 1 a13951 1 show-var d13953 1 a13955 1 snprintf d13957 1 a13959 1 ssp d13961 1 a13963 1 stage-install d13965 1 a13967 1 strict d13969 1 a13971 1 strndup d13973 1 a13975 1 strsep d13977 1 d13980 1 a13980 1 substitutions d13988 1 a13989 1 test d13992 1 a13993 1 tex d13996 1 a13997 1 tmp d14000 1 a14001 1 tools d14004 1 a14005 1 type d14008 1 a14009 1 undefined d14012 1 a14013 1 unlimit d14016 1 a14017 1 unprivileged-install-hook d14020 1 a14021 1 update d14024 1 a14025 1 upload-distfiles d14028 1 a14029 1 user d14032 1 a14033 1 vasprintf d14036 1 a14037 1 vsnprintf d14040 1 a14041 1 warning d14044 1 a14045 1 warnx d14048 1 a14049 1 wattr_on d14052 1 a14053 1 wrapper d14056 1 a14057 1   @ 1.318 log @doc/pkgsrc.*: regen @ text @d3440 6 a3445 1 dashes, underscores, dots and plus signs.

    @ 1.317 log @doc/pkgsrc.*: regen @ text @d342 1 a342 1
    21.4.3. Packages containing perl scripts
    d361 1 a361 1
    21.6.6. Packages installing perl modules
    d364 7 a370 10
    21.6.9. Packages installing GConf data files
    21.6.10. Packages installing scrollkeeper/rarian data files
    21.6.11. Packages installing X11 fonts
    21.6.12. Packages installing GTK2 modules
    21.6.13. Packages installing SGML or XML data
    21.6.14. Packages installing extensions to the MIME database
    21.6.15. Packages using intltool
    21.6.16. Packages installing startup scripts
    21.6.17. Packages installing TeX modules
    21.6.18. Packages supporting running binaries in d372 2 a373 2
    21.6.19. Packages installing hicolor theme icons
    21.6.20. Packages installing desktop files
    d3282 1 a3282 1
    21.4.3. Packages containing perl scripts
    d3301 1 a3301 1
    21.6.6. Packages installing perl modules
    d3304 7 a3310 10
    21.6.9. Packages installing GConf data files
    21.6.10. Packages installing scrollkeeper/rarian data files
    21.6.11. Packages installing X11 fonts
    21.6.12. Packages installing GTK2 modules
    21.6.13. Packages installing SGML or XML data
    21.6.14. Packages installing extensions to the MIME database
    21.6.15. Packages using intltool
    21.6.16. Packages installing startup scripts
    21.6.17. Packages installing TeX modules
    21.6.18. Packages supporting running binaries in d3312 2 a3313 2
    21.6.19. Packages installing hicolor theme icons
    21.6.20. Packages installing desktop files
    d7274 1 a7274 1
    21.4.3. Packages containing perl scripts
    d7293 1 a7293 1
    21.6.6. Packages installing perl modules
    d7296 7 a7302 10
    21.6.9. Packages installing GConf data files
    21.6.10. Packages installing scrollkeeper/rarian data files
    21.6.11. Packages installing X11 fonts
    21.6.12. Packages installing GTK2 modules
    21.6.13. Packages installing SGML or XML data
    21.6.14. Packages installing extensions to the MIME database
    21.6.15. Packages using intltool
    21.6.16. Packages installing startup scripts
    21.6.17. Packages installing TeX modules
    21.6.18. Packages supporting running binaries in d7304 2 a7305 2
    21.6.19. Packages installing hicolor theme icons
    21.6.20. Packages installing desktop files
    d8457 2 a8458 2 21.4.3. Packages containing perl scripts

    If your package contains interpreted perl scripts, add d8469 1 a8469 1

    See Section 21.6.6, “Packages installing perl modules” for information d8955 1 a8955 1 other interpreters besides (or as well as) perl. To correct the d8975 1 a8975 1 21.6.6. Packages installing perl modules d9099 1 a9099 56 21.6.9. Packages installing GConf data files

    If a package installs .schemas or .entries files, used by GConf, you need to take some extra steps to make sure they get registered in the database:

    1. Include ../../devel/GConf/schemas.mk instead of its buildlink3.mk file. This takes care of rebuilding the GConf database at installation and deinstallation time, and tells the package where to install GConf data files using some standard configure arguments. It also disallows any access to the database directly from the package.

    2. Ensure that the package installs its .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to manually patch the package.

    3. Check the PLIST and remove any entries under the etc/gconf directory, as they will be handled automatically. See Section 10.13, “How do I change the location of configuration files?” for more information.

    4. Define the GCONF_SCHEMAS variable in your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    5. Define the GCONF_ENTRIES variable in your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    21.6.10. Packages installing scrollkeeper/rarian data files

    If a package installs .omf files, used by scrollkeeper/rarian, you need to take some extra steps to make sure they get registered in the database:

    1. Include ../../mk/omf-scrollkeeper.mk instead of rarian's buildlink3.mk file. This takes care of rebuilding the scrollkeeper database at installation and deinstallation time, and disallows any access to it directly from the package.

    2. Check the PLIST and remove any entries under the libdata/scrollkeeper directory, as they will be handled automatically.

    3. Remove the share/omf directory from the PLIST. It will be handled by rarian. (make print-PLIST does this automatically.)

    21.6.11. Packages installing X11 fonts

    d9116 1 a9116 29 21.6.12. Packages installing GTK2 modules

    If a package installs GTK2 immodules or loaders, you need to take some extra steps to get them registered in the GTK2 database properly:

    1. Include ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

    2. Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

    3. Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

    4. Patch the package to not touch any of the GTK2 databases directly. These are:

      • libdata/gtk-2.0/gdk-pixbuf.loaders

      • libdata/gtk-2.0/gtk.immodules

    5. Check the PLIST and remove any entries under the libdata/gtk-2.0 directory, as they will be handled automatically.

    21.6.13. Packages installing SGML or XML data

    d9144 1 a9144 1 21.6.14. Packages installing extensions to the MIME database
    d9174 1 a9174 1 21.6.15. Packages using intltool d9185 1 a9185 1 21.6.16. Packages installing startup scripts d9196 1 a9196 1 21.6.17. Packages installing TeX modules d9235 1 a9235 1 21.6.18. Packages supporting running binaries in d9252 1 a9252 1 21.6.19. Packages installing hicolor theme icons d9274 1 a9274 1 21.6.20. Packages installing desktop files a9461 4 Installs OMF files under share/omf. See Section 21.6.10, “Packages installing scrollkeeper/rarian data files”. d9465 1 a9465 1 See Section 21.6.19, “Packages installing hicolor theme icons”. d9470 1 a9470 1 See Section 21.6.14, “Packages installing extensions to the MIME database”. d9476 1 a9476 1 See Section 21.6.20, “Packages installing desktop files”. @ 1.316 log @doc/pkgsrc.*: regen @ text @d88 6 a93 5
    5.1.3. Deinstalling packages
    5.1.4. Getting information about installed packages
    5.1.5. Checking for security vulnerabilities in installed packages
    5.1.6. Finding if newer versions of your installed packages are in pkgsrc
    5.1.7. Other administrative functions
    d846 6 a851 5
    5.1.3. Deinstalling packages
    5.1.4. Getting information about installed packages
    5.1.5. Checking for security vulnerabilities in installed packages
    5.1.6. Finding if newer versions of your installed packages are in pkgsrc
    5.1.7. Other administrative functions
    d1227 6 a1232 5
    5.1.3. Deinstalling packages
    5.1.4. Getting information about installed packages
    5.1.5. Checking for security vulnerabilities in installed packages
    5.1.6. Finding if newer versions of your installed packages are in pkgsrc
    5.1.7. Other administrative functions
    d1251 1 a1251 1

    On the cdn.NetBSD.org d1268 1 a1268 2 pkgsrc FTP server in the directory /pub/pkgsrc/packages.

    d1288 1 a1288 2 that may not be distributed via FTP or CDROM (depending on which medium you are using).

    d1293 2 a1294 3 # PATH="/usr/pkg/sbin:$PATH" # PKG_PATH="http://cdn.NetBSD.org/pub/pkgsrc/packages" d1297 1 d1307 8 a1314 4 # pkg_add libreoffice # pkg_add ap24-php71-*

    Note that any prerequisite packages needed to run the d1316 1 a1316 5 present where you install from.

    Adding packages might install vulnerable packages. Thus you should run pkg_admin audit regularly, especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration.

    d1324 13 a1336 1 5.1.3. Deinstalling packages d1338 4 a1341 3 installed from source code or from a binary package. The pkg_delete command does not know it anyway. To delete a package, you can just run pkg_delete d1343 1 a1343 17 name can be given with or without version number. Wildcards can also be used to deinstall a set of packages, for example *emacs*. Be sure to include them in quotes, so that the shell does not expand them before pkg_delete sees them.

    The -r option is very powerful: it removes all the packages that require the package in question and then removes the package itself. For example:

    # pkg_delete -r jpeg
        

    will remove jpeg and all the packages that used it; this allows upgrading the jpeg package.

    d1347 1 a1347 1 5.1.4. Getting information about installed packages d1349 3 a1351 1 installed packages or binary package files.

    d1355 1 a1355 1 5.1.5. Checking for security vulnerabilities in installed packages d1358 1 a1358 1 known security vulnerabilities to packages which are (or have been) d1360 9 a1368 2 FTP site at http://ftp.NetBSD.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities. d1389 1 a1389 2 vulnerabilities d1426 1 a1426 1 5.1.6. Finding if newer versions of your installed packages are in pkgsrc d1430 1 a1430 1 argument to check if your packages are up-to-date, e.g. a1436 3

    You can then use make update to update the package on your system and rebuild any dependencies.

    d1440 1 a1440 1 5.1.7. Other administrative functions d3023 1 a3023 1 See Section 5.1.5, “Checking for security vulnerabilities in installed packages” for instructions on how to automate checking and @ 1.315 log @doc/pkgsrc.*: regen @ text @d9422 1 a9422 3 under this operating system. Recently, DragonFly BSD also adopted pkgsrc as its preferred packaging system, contributing lots of portability fixes to make GNOME build and install under it.

    d11805 1 a11805 1 GHOSTSCRIPT_REQD d11808 1 a11809 1 GITHUB_RELEASE d11812 1 a11813 1 GITHUB_TAG d11816 1 a11817 1 GNU d11820 1 a11821 1 GNU_CONFIGURE_INFODIR d11824 1 a11825 1 GNU_CONFIGURE_QUIET d11828 1 a11829 1 GODEP_REDIRECTS d11832 1 a11833 1 GO_DEPS d11836 1 a11837 1 GO_MODULE_FILES d11840 1 a11841 1 GO_VERSION_DEFAULT d11844 1 a11845 1 GRUB_NETWORK_CARDS d11848 1 a11849 1 GRUB_SCAN_ARGS d11852 1 a11853 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11856 1 a11857 1 HASKELL_ENABLE_SHARED_LIBRARY d11860 1 a11861 1 HAS_CONFIGURE d11864 1 a11865 1 HOMEPAGE d11868 1 a11869 1 HOST_SPECIFIC_PKGS d11872 1 a11873 1 HOWL_USER d11876 1 a11877 1 ICECAST_CHROOTDIR d11880 1 a11881 1 IDOBASE d11884 1 a11885 1 IGNORE_INFO_DIRS d11888 1 a11889 1 IMAKE d11892 1 a11893 1 IMAKE_MAKE d11896 1 a11897 1 IMAP_UW_CCLIENT_MBOX_FMT d11900 1 a11901 1 INCOMPAT_CURSES d11904 1 a11905 1 INFO_FILES d11908 1 a11909 1 INFO_MSG d11912 1 a11913 1 INN_DATA_DIR d11916 1 a11917 1 INN_USER d11920 1 a11921 1 INSTALLATION_DIRS_FROM_PLIST d11924 1 a11925 1 INSTALL_SH_OVERRIDE d11928 1 a11929 1 INSTALL_TEMPLATES d11932 1 a11933 1 IRCD_HYBRID_IRC_GROUP d11936 1 a11937 1 IRCD_HYBRID_MAXCONN d11940 1 a11941 1 IRCD_HYBRID_SYSLOG_EVENTS d11944 1 a11945 1 IRCD_HYBRID_TOPICLEN d11948 1 a11949 1 IRRD_USE_PGP d11952 1 a11953 1 JABBERD_LOGDIR d11956 1 a11957 1 JABBERD_SPOOLDIR d11960 1 a11961 1 JAKARTA_HOME d11964 1 a11965 1 JAVA_CLASSPATH d11968 1 a11969 1 JAVA_LD_LIBRARY_PATH d11972 1 a11973 1 JAVA_UNLIMIT d11976 1 a11977 1 JPEG_ACCEPTED d11980 1 a11981 1 KERBEROS d11984 1 a11985 1 KJS_USE_PCRE d11988 1 a11989 1 KNEWS_DOMAIN_NAME d11992 1 a11993 1 KRB5_DEFAULT d11996 1 a11997 1 LAPACK_LIBS d12000 1 a12001 1 LDCONFIG_ADD_CMD d12004 1 a12005 1 LEAFNODE_DATA_DIR d12008 1 a12009 1 LEAFNODE_USER d12012 1 a12013 1 LIBDVDCSS_MASTER_SITES d12016 1 a12017 1 LIBTOOL d12020 1 a12021 1 LIBTOOL_M4_OVERRIDE d12024 1 a12025 1 LICENSE d12028 1 a12029 1 LINK_RPATH_FLAG d12032 1 a12033 1 LOCALBASE d12036 1 a12037 1 LOCALPATCHES d12040 1 a12041 1 LOVE_GAME d12044 1 a12045 1 LP64PLATFORMS d12048 1 a12049 1 MAILAGENT_DOMAIN d12052 1 a12053 1 MAILAGENT_FQDN d12056 1 a12057 1 MAJORDOMO_HOMEDIR d12060 1 a12061 1 MAKE_DIRS d12064 1 a12065 1 MAKE_ENV d12068 1 a12069 1 MAKE_FLAGS d12072 1 a12073 1 MAKE_JOBS_SAFE d12076 1 a12077 1 MANCOMPRESSED_IF_MANZ d12080 1 a12081 1 MANZ d12084 1 a12085 1 MASTER_SITE_BACKUP d12088 1 a12089 1 MASTER_SITE_MOZILLA d12092 1 a12093 1 MASTER_SITE_PERL_CPAN d12096 1 a12097 1 MASTER_SORT_RANDOM d12100 1 a12101 1 MECAB_CHARSET d12104 1 a12105 1 MEDIATOMB_USER d12108 1 a12109 1 MIREDO_GROUP d12112 1 a12113 1 MISSING_FEATURES d12116 1 a12117 1 MLDONKEY_GROUP d12120 1 a12121 1 MLDONKEY_USER d12124 1 a12125 1 MONOTONE_USER d12128 1 a12129 1 MOTIF_TYPE d12132 1 a12133 1 MPI_TYPE d12136 1 a12137 1 MSGFMT_STRIP_MSGID_PLURAL d12140 1 a12141 1 MV d12144 1 a12145 1 MYSQL_DATADIR d12148 1 a12149 1 MYSQL_GROUP d12152 1 a12152 1 MYSQL_PKGSRCDIR d12160 1 a12161 1 NAGIOSCMD_GROUP d12164 1 a12165 1 NAGIOS_GROUP d12168 1 a12169 1 NATIVE_APPEND_ABI d12172 1 a12173 1 NATIVE_EXEC_FMT d12176 1 a12177 1 NATIVE_OBJECT_FMT d12180 1 a12181 1 NETBSD_LOGIN_NAME d12184 1 a12185 1 NMH_MTA d12188 1 a12189 1 NOLOGIN d12192 1 a12193 1 NOT_FOR_PLATFORM d12196 1 a12197 1 NOT_PAX_MPROTECT_SAFE d12200 1 a12201 1 NO_CHECKSUM d12204 1 a12205 1 NO_SKIP d12208 1 a12209 1 NULLMAILER_GROUP d12212 1 a12213 1 OASIS d12216 1 a12217 1 OBJHOSTNAME d12220 1 a12221 1 OCAML_FINDLIB_DIRS d12224 1 a12225 1 OCAML_FINDLIB_REGISTER_VERBOSE d12228 1 a12229 1 OCAML_TOPKG_DOCDIR d12232 1 a12233 1 OCAML_USE_FINDLIB d12236 1 a12237 1 OCAML_USE_OASIS d12240 1 a12241 1 OCAML_USE_OPAM d12244 1 a12245 1 OCAML_USE_TOPKG d12248 1 a12249 1 ONLY_FOR_COMPILER d12252 1 a12253 1 OPENSSH_CHROOT d12256 1 a12257 1 OPENSSH_USER d12260 1 a12261 1 OPSYS_EMULDIR d12264 1 a12265 1 OSS_TYPE d12268 1 a12269 1 OSX_TOLERATE_SDK_SKEW d12272 1 a12273 1 OS_VERSION d12276 1 a12277 1 OVERRIDE_DIRDEPTH d12280 1 a12281 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12284 1 a12285 1 OWN_DIRS_PERMS d12288 1 a12289 1 P4PORT d12292 1 a12293 1 P4USER d12296 1 a12297 1 PALMOS_DEFAULT_SDK d12300 1 a12301 1 PAM_DEFAULT d12304 1 a12305 1 PASSIVE_FETCH d12308 1 a12309 1 PATCHFILES d12312 1 a12313 1 PATCH_DEBUG d12316 1 a12317 1 PATCH_DIST_CAT d12320 1 a12321 1 PATCH_FUZZ_FACTOR d12324 1 d12326 2 d12329 1 a12331 1 PCCBASE d12333 1 a12335 1 PEAR_LIB d12337 1 a12339 1 PERL5 d12341 1 a12343 1 PERL5_CONFIGURE_DIRS d12345 1 a12347 1 PERL5_LICENSE d12349 1 a12351 1 PERL5_PACKLIST d12353 1 a12355 1 PERL5_PERLBASE d12357 1 a12359 1 PERL5_USE_PACKLIST d12361 1 a12363 1 PFCTL d12365 1 a12367 1 PF_VERSION d12369 1 a12371 1 PGHOME d12373 1 a12375 1 PGSQL_TYPE d12377 1 a12379 1 PGSQL_VERSIONS_ACCEPTED d12381 1 a12383 1 PGUSER d12385 1 a12387 1 PHP d12389 1 a12391 1 PHPPKGSRCDIR d12393 1 a12395 1 PHP_CHECK_INSTALLED d12397 1 a12399 1 PHP_INITIAL_TEENY d12401 1 a12403 1 PHP_VERSION d12405 1 a12407 1 PHP_VERSIONS_INCOMPATIBLE d12409 1 a12411 1 PHP_VERSION_REQD d12413 1 a12415 1 PKGCONFIG_BASE d12417 1 a12419 1 PKGCONFIG_OVERRIDE d12421 1 a12423 1 PKGDIR d12425 1 a12427 1 PKGINFODIR d12429 1 a12431 1 PKGMANDIR d12433 1 a12435 1 PKGNAME_REQD d12437 1 a12439 1 PKGREVISION d12441 1 a12443 1 PKGSRC_CHANGES d12445 1 a12447 1 PKGSRC_KEEP_BIN_PKGS d12449 1 a12451 1 PKGSRC_MAKE_ENV d12453 1 a12455 1 PKGSRC_MKPIE d12457 1 a12459 1 PKGSRC_RUN_TEST d12461 1 a12463 1 PKGSRC_SLEEPSECS d12465 1 a12467 1 PKGSRC_USE_CTF d12469 1 a12471 1 PKGSRC_USE_RELRO d12473 1 a12475 1 PKGSRC_USE_STACK_CHECK d12477 1 a12479 1 PKGTOOLS_ARGS d12481 1 a12483 1 PKG_ALTERNATIVES d12485 1 a12487 1 PKG_APACHE_ACCEPTED d12489 1 a12491 1 PKG_BEST_EXISTS d12493 1 a12495 1 PKG_COMPRESSION d12497 1 a12499 1 PKG_CONFIG_PERMS d12501 1 a12503 1 PKG_DB_TMPDIR d12505 1 a12507 1 PKG_DEFAULT_OPTIONS d12509 1 a12511 1 PKG_DEVELOPER d12513 1 a12515 1 PKG_FATAL_ERRORS d12517 1 a12519 1 PKG_FILELIST_CMD d12521 1 a12523 1 PKG_GID d12525 1 a12527 1 PKG_GROUPS_VARS d12529 1 a12531 1 PKG_INIT_SCRIPTS d12533 1 a12535 1 PKG_JVM d12537 1 a12539 1 PKG_JVM_DEFAULT d12541 1 a12543 1 PKG_LIBTOOL d12545 1 a12547 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12549 1 a12551 1 PKG_OPTIONS_LEGACY_VARS d12553 1 a12555 1 PKG_OPTIONS_OPTIONAL_GROUPS d12557 1 a12559 1 PKG_OPTIONS_VAR d12561 1 a12563 1 PKG_PHP_MAJOR_VERS d12565 1 a12567 1 PKG_RCD_SCRIPTS d12569 1 a12571 1 PKG_REGISTER_SHELLS d12573 1 a12575 1 PKG_SHELL d12577 1 a12579 1 PKG_SUPPORTED_OPTIONS d12581 1 a12583 1 PKG_SYSCONFBASEDIR d12585 1 a12587 1 PKG_SYSCONFDIR_PERMS d12589 1 a12591 1 PKG_SYSCONFVAR d12593 1 a12595 1 PKG_UID d12597 1 a12599 1 PKG_USERS d12601 1 d12604 1 a12604 1 PKG_VERBOSE d13064 1 a13065 1 TERMCAP_TYPE d13068 1 a13069 1 TERMINFO_TYPE d13072 1 a13073 1 TEST_DEPENDS d13076 1 a13077 1 TEST_ENV d13080 1 a13081 1 TEST_MAKE_CMD d13084 1 a13085 1 TEST_TARGET d13088 1 a13089 1 TEXLIVE_REV d13092 1 a13093 1 TEXMFSITE d13096 1 a13097 1 TEX_HYPHEN_DAT d13100 1 a13101 1 TEX_TEXMF_DIRS d13104 1 a13105 1 TINYDYN_USER d13108 1 a13109 1 TOOLS_ALIASES d13112 1 a13113 1 TOOLS_ARGS d13116 1 a13117 1 TOOLS_CMD d13120 1 a13121 1 TOOLS_CREATE d13124 1 a13125 1 TOOLS_FAIL d13128 1 a13129 1 TOOLS_LDCONFIG d13132 1 a13133 1 TOOLS_PATH d13136 1 a13137 1 TOOL_DEPENDS d13140 1 a13141 1 TYPE d13144 1 a13145 1 UCSPI_SSL_GROUP d13148 1 a13149 1 UNLIMIT_RESOURCES d13152 1 a13153 1 UNPRIVILEGED_GROUP d13156 1 a13157 1 UNPRIVILEGED_USER d13160 1 a13161 1 UNWRAP_PATTERNS d13164 1 a13165 1 UPDATE_TARGET d13168 1 a13169 1 USERGROUP_PHASE d13172 1 a13173 1 USER_SPECIFIC_PKGS d13176 1 a13177 1 USE_APR d13180 1 a13181 1 USE_BUILTIN d13184 1 a13185 1 USE_CURSES d13188 1 a13189 1 USE_DB185 d13192 1 a13193 1 USE_GAMESGROUP d13196 1 a13197 1 USE_IMAKE d13200 1 a13201 1 USE_JAVA2 d13204 1 a13205 1 USE_LIBTOOL d13208 1 a13209 1 USE_NETBSD_REPO d13212 1 a13213 1 USE_PKGSRC_GCC_RUNTIME d13216 1 a13217 1 USE_PKG_ADMIN_DIGEST d13220 1 a13221 1 USE_RUBY_INSTALL d13224 1 a13225 1 USE_RUBY_SETUP_PKG d13228 1 a13229 1 UUCP_GROUP d13232 1 a13233 1 VARBASE d13236 1 a13237 1 VIM_EXTRA_OPTS d13240 1 a13241 1 WCALC_CGIDIR d13244 1 a13245 1 WCALC_HTMLDIR d13248 1 a13249 1 WDM_MANAGERS d13252 1 a13253 1 WRAPPER_REORDER_CMDS d13256 1 a13257 1 WRKDIR_BASENAME d13260 1 a13261 1 WRKLOG d13264 1 a13265 1 WRKSRC d13268 1 a13269 1 X11 d13272 1 a13273 1 X11_PKGSRCDIR d13276 1 a13277 1 X509_CERTIFICATE d13280 1 a13281 1 XAW_TYPE d13284 1 a13285 1 XMKMF d13288 1 a13289 1 XXX d13292 1 a13293 1 ZSH_STATIC d13296 1 d13298 2 d13301 1 a13303 1 accept d13305 1 a13307 1 acquire-lock d13309 1 a13311 1 administrator d13313 1 a13315 1 alternatives d13317 1 a13319 1 asprintf d13321 1 a13323 1 autoconf d13325 1 a13327 1 autoreconf d13329 1 a13331 1 bash d13333 1 a13335 1 bin-install d13337 1 a13339 1 binpkg-list d13341 1 a13343 1 bootstrap-depends d13345 1 a13347 1 broken_on_platform d13349 1 a13351 1 bsd.prog.mk d13353 1 a13355 1 build-env d13357 1 a13359 1 buildlink-oss-soundcard-h d13361 1 a13363 1 c++ d13365 1 a13367 1 cce d13369 1 a13371 1 ceil d13373 1 a13375 1 changes-entry d13377 1 a13379 1 check d13381 1 a13383 1 check-files d13385 1 a13387 1 check-vulnerable d13389 1 a13391 1 checksum-phase d13393 1 a13395 1 clean-depends d13397 1 a13399 1 commit d13401 1 a13403 1 compact d13405 1 a13407 1 conf d13409 1 a13411 1 config.sub d13413 1 a13415 1 configure d13417 1 a13419 1 configure-help d13421 1 a13423 1 connect d13425 1 a13427 1 cputime d13429 1 a13431 1 csh d13433 1 a13435 1 debug d13437 1 a13439 1 declare d13441 1 a13443 1 depend d13445 1 a13447 1 depends d13449 1 a13451 1 depends-fetch d13453 1 a13455 1 describe d13457 1 a13459 1 disable d13461 1 a13463 1 distinfo d13465 1 a13467 1 dlopen d13469 1 a13471 1 do-buildlink d13473 1 a13475 1 do-configure d13477 1 a13479 1 do-extract d13481 1 a13483 1 emul d13485 1 a13487 1 emul-fetch d13489 1 a13491 1 emulator d13493 1 a13495 1 endian d13497 1 a13499 1 err d13501 1 a13503 1 etc d13505 1 a13507 1 extract-rpm d13509 1 a13511 1 feature d13513 1 a13515 1 fetch d13517 1 a13519 1 follows d13521 1 a13523 1 form d13525 1 a13527 1 fortify d13529 1 a13531 1 friend d13533 1 a13535 1 fts_close d13537 1 a13539 1 fts_read d13541 1 a13543 1 gcc d13545 1 a13547 1 gethostbyname d13549 1 a13551 1 getopt_long d13553 1 a13555 1 getservbyname d13557 1 a13559 1 getservent d13561 1 a13563 1 github d13565 1 a13567 1 gnu d13569 1 a13571 1 go d13573 1 a13575 1 golang d13577 1 a13579 1 hashbang d13581 1 a13583 1 help d13585 1 a13587 1 increment d13589 1 a13591 1 interp d13593 1 a13595 1 intl d13597 1 a13599 1 ip6 d13601 1 a13603 1 ipv6 d13605 1 a13607 1 kerberos d13609 1 a13611 1 krb5 d13613 1 a13615 1 lapack d13617 1 a13619 1 libintl_bindtextdomain d13621 1 a13623 1 libintl_textdomain d13625 1 a13627 1 libs d13629 1 a13631 1 licence d13633 1 a13635 1 lintl d13637 1 a13639 1 lock d13641 1 a13643 1 lvalue d13645 1 a13647 1 makesum d13649 1 a13651 1 meta d13653 1 a13655 1 meta_package d13657 1 a13659 1 mk.conf d13661 1 a13663 1 mount d13665 1 a13667 1 mremap d13669 1 a13671 1 nbcompat d13673 1 a13675 1 obstack_ptr_grow d13677 1 a13679 1 only d13681 1 a13683 1 options d13685 1 a13687 1 order d13689 1 a13691 1 override-intltool d13693 1 a13695 1 package d13697 1 a13699 1 path d13701 1 a13703 1 paxctl d13705 1 a13707 1 pc d13709 1 a13711 1 perl5 d13713 1 a13715 1 php d13717 1 a13719 1 pkg-config d13721 1 a13723 1 platform d13725 1 a13727 1 post-extract d13729 1 a13731 1 post-wrapper d13733 1 a13735 1 pre-configure d13737 1 a13739 1 pre-extract d13741 1 a13743 1 print-go-deps d13745 1 a13747 1 print-summary-data d13749 1 a13751 1 pypi d13753 1 a13755 1 readme-all d13757 1 a13759 1 recvfrom d13761 1 a13763 1 release-localbase-lock d13765 1 a13767 1 relro d13769 1 a13771 1 reorder d13773 1 a13775 1 replace_interpreter d13777 1 a13779 1 resolv d13781 1 a13783 1 ruby d13785 1 a13787 1 sendfile d13789 1 a13791 1 setenv d13793 1 a13795 1 setprogname d13797 1 a13799 1 sh d13801 1 a13803 1 show d13805 1 a13807 1 show-build-defs d13809 1 a13811 1 show-deps d13813 1 a13815 1 show-downlevel d13817 1 a13819 1 show-tools d13821 1 a13823 1 show-vars d13825 1 a13827 1 socket d13829 1 a13831 1 st_mode d13833 1 a13835 1 strcasestr d13837 1 a13839 1 strip d13841 1 a13843 1 strnlen d13845 1 a13847 1 subst d13849 1 a13851 1 sun d13853 1 a13855 1 sunwspro d13857 1 a13859 1 test d13861 1 a13863 1 tex d13865 1 a13867 1 tmp d13869 1 a13871 1 tools d13873 1 a13875 1 type d13877 1 a13879 1 undefined d13881 1 a13883 1 unlimit d13885 1 a13887 1 unprivileged-install-hook d13889 1 a13891 1 update d13893 1 a13895 1 upload-distfiles d13897 1 a13899 1 user d13901 1 a13903 1 vasprintf d13905 1 a13907 1 vsnprintf d13909 1 a13911 1 warning d13913 1 a13915 1 warnx d13917 1 a13919 1 wattr_on d13921 1 a13923 1 wrapper d13925 1 @ 1.314 log @doc/pkgsrc.*: regen @ text @d9678 2 a9679 2

    The most common places to report bugs are the GNOME's Bugzilla and the freedesktop.org's Bugzilla. Not all components use these to track bugs, but most d9682 3 a9684 3 maximum portability and, if at all possible, provide a patch against CVS head. The more verbose you are, the higher chances of your patch being accepted.

    d11179 1 a11179 1 ALSA_PC a11181 1 ALTERNATIVES_SRC d11183 1 a11185 1 AMANDA_USER d11187 1 a11189 1 APACHE_GROUP d11191 1 a11193 1 APACHE_MODULE_SRC d11195 1 a11197 1 APACHE_PKG_PREFIX d11199 1 a11201 1 APACHE_SUEXEC_DOCROOT d11203 1 a11205 1 APPEND_ABI d11207 1 a11209 1 ARLA_CACHE d11211 1 a11213 1 AUTOCONF_REQD d11215 1 a11217 1 AUTOMAKE_REQD d11219 1 a11221 1 BDB185_DEFAULT d11223 1 a11225 1 BDB_ACCEPTED d11227 1 a11229 1 BDB_LIBS d11231 1 a11233 1 BINCIMAP_GROUP d11235 1 a11237 1 BIND_DIR d11239 1 a11241 1 BIND_USER d11243 1 a11245 1 BINPKG_SITES d11247 1 a11249 1 BISON_PKGDATADIR d11251 1 a11253 1 BLAS_LIBS d11255 1 a11257 1 BOOTSTRAP_DEPENDS d11259 1 a11261 1 BROKEN d11263 1 a11265 1 BROKEN_ON_PLATFORM d11267 1 a11269 1 BSDXSRCDIR d11271 1 a11273 1 BUILDLINK_AUTO_DIRS d11275 1 a11277 1 BUILDLINK_CFLAGS a11278 2 a11279 1 BUILDLINK_DEPMETHOD a11369 1 CHECKOUT_DATE d11371 1 a11373 1 CHECK_FAKEHOME d11375 1 a11377 1 CHECK_FILES_SKIP d11379 1 a11381 1 CHECK_HEADERS d11383 1 a11385 1 CHECK_INTERPRETER d11387 1 a11389 1 CHECK_PERMS d11391 1 a11393 1 CHECK_PERMS_SKIP d11395 1 a11397 1 CHECK_PORTABILITY_EXPERIMENTAL d11399 1 a11401 1 CHECK_RELRO d11403 1 a11405 1 CHECK_RELRO_SUPPORTED d11407 1 a11409 1 CHECK_SHLIBS_BLACKLIST d11411 1 a11413 1 CHECK_SHLIBS_SUPPORTED d11415 1 a11417 1 CHECK_SSP_SKIP d11419 1 a11421 1 CHECK_STRIPPED d11423 1 a11425 1 CHECK_WRKREF d11427 1 a11429 1 CHECK_WRKREF_SKIP d11431 1 a11433 1 CLAMAV_GROUP d11435 1 a11437 1 CLANGBASE d11439 1 a11441 1 CMAKE_DEPENDENCIES_REWRITE d11443 1 a11445 1 CMAKE_INSTALL_PREFIX d11447 1 a11449 1 CMAKE_PKGSRC_BUILD_FLAGS a11450 2 a11451 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a11513 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d11515 1 a11517 1 CYRUS_GROUP d11519 1 a11521 1 CYRUS_USER d11523 1 a11525 1 DAEMONTOOLS_LOG_USER d11527 1 a11529 1 DARWIN_REQUIRES_FILTER d11531 1 a11533 1 DBUS_USER d11535 1 a11537 1 DEFANG_USER d11539 1 a11541 1 DEFAULT_DISTFILES d11543 1 a11545 1 DEFAULT_SERIAL_DEVICE d11547 1 a11549 1 DEINSTALLDEPENDS d11551 1 a11553 1 DEINSTALL_TEMPLATES d11555 1 a11557 1 DELAYED_WARNING_MSG d11559 1 a11561 1 DEPENDS_TARGET d11563 1 a11565 1 DESTDIR d11567 1 a11569 1 DIALER_GROUP d11571 1 a11573 1 DISTDIR d11575 1 a11577 1 DISTINFO_FILE d11579 1 a11581 1 DIST_PATH d11583 1 a11585 1 DJBDNS_AXFR_USER d11587 1 a11589 1 DJBDNS_DJBDNS_GROUP d11591 1 a11593 1 DJBDNS_RBL_USER d11595 1 a11597 1 DLOPEN_REQUIRE_PTHREADS d11599 1 a11601 1 DL_CFLAGS d11603 1 a11605 1 DL_LIBS d11607 1 a11609 1 DOCOWN d11611 1 a11613 1 DT_LAYOUT d11615 1 a11617 1 DYNAMIC_SITES_SCRIPT d11619 1 a11621 1 ECHO_N d11623 1 a11625 1 EMACS_TYPE d11627 1 a11629 1 EMULSUBDIR d11631 1 a11633 1 EMUL_ARCH d11635 1 a11637 1 EMUL_EXEC_FMT d11639 1 a11641 1 EMUL_MODULES d11643 1 a11645 1 EMUL_PKG_FMT d11647 1 a11649 1 EMUL_PLATFORMS d11651 1 a11653 1 EMUL_REQD d11655 1 a11657 1 ERROR_MSG d11659 1 a11661 1 EXIM_USER d11663 1 a11665 1 EXTRACTOR d11667 1 a11669 1 EXTRACT_CMD_DEFAULT d11671 1 a11673 1 EXTRACT_ELEMENTS d11675 1 a11677 1 EXTRACT_ONLY d11679 1 a11681 1 EXTRACT_SUFX d11683 1 a11685 1 FAIL d11687 1 a11689 1 FAIL_MSG d11691 1 a11693 1 FAM d11695 1 a11697 1 FAM_DEFAULT d11699 1 a11701 1 FCPATH d11703 1 a11705 1 FEATURE_LDFLAGS d11707 1 a11709 1 FETCH_AFTER_ARGS d11711 1 a11713 1 FETCH_CMD d11715 1 a11717 1 FETCH_PROXY d11719 1 a11721 1 FETCH_TIMEOUT d11723 1 a11725 1 FETCH_USING d11727 1 a11729 1 FILES_SUBST_SED d11731 1 a11733 1 FLUXBOX_USE_GNOME d11735 1 a11737 1 FLUXBOX_USE_XFT a11738 3 FONTDIR a11745 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d11814 1 a11814 1 GITHUB_SUBMODULE a11818 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d11855 1 a11855 1 HASKELL_COMPILER a11857 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11859 1 a11861 1 HASKELL_ENABLE_SHARED_LIBRARY d11863 1 a11865 1 HAS_CONFIGURE a11866 7 HG_REPO HG_REPOSITORIES HG_TAG a11965 4 JAVA_APP_PATH JAVA_APP_TARGETS a12033 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12035 1 a12037 1 LOCALBASE d12039 1 a12041 1 LOCALPATCHES d12043 1 a12045 1 LOVE_GAME d12047 1 a12049 1 LP64PLATFORMS d12051 1 a12053 1 MAILAGENT_DOMAIN d12055 1 a12057 1 MAILAGENT_FQDN a12058 2 a12059 1 MAJOR_OS_VERSION d12143 1 a12143 1 MUST a12145 1 MV d12147 1 a12149 1 MYSQL_DATADIR d12151 1 a12153 1 MYSQL_GROUP d12155 1 a12157 1 MYSQL_USER d12159 1 a12161 1 MYSQL_VERSIONS_ACCEPTED d12163 1 a12165 1 NAGIOSCMD_GROUP d12167 1 a12169 1 NAGIOS_GROUP d12171 1 a12173 1 NATIVE_APPEND_ABI d12175 1 a12177 1 NATIVE_EXEC_FMT d12179 1 a12181 1 NATIVE_OBJECT_FMT d12183 1 a12185 1 NETBSD_LOGIN_NAME d12187 1 a12189 1 NMH_MTA d12191 1 a12193 1 NOLOGIN d12195 1 a12197 1 NOT_FOR_PLATFORM d12199 1 a12201 1 NOT_PAX_MPROTECT_SAFE d12203 1 a12205 1 NO_CHECKSUM d12207 1 a12209 1 NO_SKIP d12211 1 a12213 1 NULLMAILER_GROUP d12215 1 a12217 1 OASIS d12219 1 a12221 1 OBJHOSTNAME d12223 1 a12225 1 OCAML_FINDLIB_DIRS d12227 1 a12229 1 OCAML_FINDLIB_REGISTER_VERBOSE d12231 1 a12233 1 OCAML_TOPKG_DOCDIR d12235 1 a12237 1 OCAML_USE_FINDLIB d12239 1 a12241 1 OCAML_USE_OASIS d12243 1 a12245 1 OCAML_USE_OPAM d12247 1 a12249 1 OCAML_USE_TOPKG d12251 1 a12253 1 ONLY_FOR_COMPILER d12255 1 a12257 1 OPENSSH_CHROOT d12259 1 a12261 1 OPENSSH_USER d12263 1 a12265 1 OPSYS_EMULDIR d12267 1 a12269 1 OSS_TYPE a12270 2 a12271 1 OS_HAVE_ALSA a12273 1 OS_HAVE_RCD d12275 1 a12277 1 OS_VERSION d12279 1 a12281 1 OVERRIDE_DIRDEPTH a12282 2 a12283 1 OVERRIDE_ROCKSPEC a12330 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a12710 4 RCD_DIR RCD_ORDER d12723 1 a12723 1 RCD_SUBR a12725 1 RDOC d12727 1 a12729 1 READLINE_TYPE d12731 1 a12733 1 REAL_ROOT_USER d12735 1 a12737 1 RELAY_CTRL_DIR d12739 1 a12741 1 REPLACE_AWK d12743 1 a12745 1 REPLACE_CSH d12747 1 a12749 1 REPLACE_PERL d12751 1 a12753 1 REPLACE_PHP d12755 1 a12757 1 REPLACE_RUBY d12759 1 a12761 1 REPLACE_RUBY_PAT d12763 1 a12765 1 REPLACE_TEXLUA d12767 1 a12769 1 REQD_DIRS_PERMS d12771 1 a12773 1 REQD_FILES_MODE d12775 1 a12777 1 RESOLV_AUTO_VARS d12779 1 a12781 1 RESOLV_LIBS d12783 1 a12785 5 ROCKSPEC_NAME ROCKSPEC_SPECFILE ROOT_CMD a12786 2 a12787 1 RPCGEN d12790 1 a12791 1 RPM2PKG_PLIST d12794 1 a12795 1 RPM2PKG_STAGE d12798 1 a12799 1 RPM2PKG_SUBPREFIX d12802 1 a12803 1 RPMIGNOREPATH d12806 1 a12807 1 RSSH_CVS_PATH d12810 1 a12811 1 RSSH_RSYNC_PATH d12814 1 a12815 1 RSSH_SFTP_SERVER_PATH d12818 1 a12819 1 RUBYGEM d12822 1 a12823 1 RUBYGEM_OPTIONS d12826 1 a12827 1 RUBY_ABI_VERSION d12830 1 a12831 1 RUBY_ARCHINC d12834 1 a12835 1 RUBY_BASE d12838 1 a12839 1 RUBY_BUILD_DOCUMENT d12842 1 a12843 1 RUBY_DOC d12846 1 a12847 1 RUBY_EG d12850 1 a12851 1 RUBY_EXTCONF d12854 1 a12855 1 RUBY_EXTCONF_DEBUG d12858 1 a12859 1 RUBY_GEM_BASE d12862 1 a12863 1 RUBY_LIB d12866 1 a12867 1 RUBY_NAME d12870 1 a12871 1 RUBY_PKGPREFIX d12874 1 a12875 1 RUBY_RAILS52_VERSION d12878 1 a12879 1 RUBY_RAILS61_VERSION d12882 1 a12883 1 RUBY_RAILS_DEFAULT d12886 1 a12887 1 RUBY_RAILS_STRICT_DEP d12890 1 a12891 1 RUBY_SETUP d12894 1 a12895 1 RUBY_SHLIBALIAS d12898 1 a12899 1 RUBY_SIMPLE_INSTALL d12902 1 a12903 1 RUBY_SITELIB d12906 1 a12907 1 RUBY_SITERIDIR d12910 1 a12911 1 RUBY_SRCDIR d12914 1 a12915 1 RUBY_SUFFIX d12918 1 a12919 1 RUBY_USE_PTHREAD d12922 1 a12923 1 RUBY_VENDORLIB d12926 1 a12927 1 RUBY_VER d12930 1 a12931 1 RUBY_VERSIONS_ACCEPTED d12934 1 a12935 1 RUBY_VERSION_DEFAULT d12938 1 a12939 1 RUBY_VER_DIR d12942 1 a12943 1 RUN_LDCONFIG d12946 1 a12947 1 SCO d12950 1 a12951 1 SCREWS_USER d12954 1 a12955 1 SCROLLKEEPER_DATADIR d12958 1 a12959 1 SCROLLKEEPER_UPDATEDB d12962 1 a12963 1 SERIAL_DEVICES d12966 1 a12967 1 SETGID_GAMES_PERMS d12970 1 a12971 1 SH d12974 1 a12975 1 SHORTNAME a13061 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION a13137 1 TTF_FONTDIR d13139 1 a13141 1 TYPE d13143 1 a13145 1 UCSPI_SSL_GROUP d13147 1 a13149 1 UNLIMIT_RESOURCES d13151 1 a13153 1 UNPRIVILEGED_GROUP d13155 1 a13157 1 UNPRIVILEGED_USER d13159 1 a13161 1 UNWRAP_PATTERNS d13163 1 a13165 1 UPDATE_TARGET d13167 1 a13169 1 USERGROUP_PHASE d13171 1 a13173 1 USER_SPECIFIC_PKGS d13175 1 a13177 1 USE_APR d13179 1 a13181 1 USE_BUILTIN d13183 1 a13185 1 USE_CURSES d13187 1 a13189 1 USE_DB185 d13191 1 a13193 1 USE_GAMESGROUP d13195 1 a13197 1 USE_IMAKE d13199 1 a13201 1 USE_JAVA2 d13203 1 a13205 1 USE_LIBTOOL d13207 1 a13209 1 USE_NETBSD_REPO d13211 1 a13213 1 USE_PKGSRC_GCC_RUNTIME d13215 1 a13217 1 USE_PKG_ADMIN_DIGEST d13219 1 a13221 1 USE_RUBY_INSTALL d13223 1 a13225 1 USE_RUBY_SETUP_PKG d13227 1 a13229 1 UUCP_GROUP d13231 1 a13233 1 VARBASE d13235 1 a13237 1 VIM_EXTRA_OPTS d13239 1 a13241 1 WCALC_CGIDIR d13243 1 a13245 1 WCALC_HTMLDIR d13247 1 a13249 1 WDM_MANAGERS d13251 1 a13253 1 WRAPPER_REORDER_CMDS d13255 1 a13257 1 WRKDIR_BASENAME d13259 1 a13261 1 WRKLOG d13263 1 a13265 1 WRKSRC d13267 1 a13269 1 X11 d13271 1 a13273 1 X11_PKGSRCDIR d13275 1 a13277 1 X509_CERTIFICATE d13279 1 a13281 1 XAW_TYPE d13283 1 a13285 1 XMKMF a13286 2 a13287 1 XXXX a13429 1 cvs d13431 1 a13433 1 declaration d13435 1 a13437 1 defined d13439 1 a13441 1 dependencies d13443 1 a13445 1 depends-checksum d13447 1 a13449 1 deps d13451 1 a13453 1 destdir d13455 1 a13457 1 distclean d13459 1 a13461 1 dl d13463 1 a13465 1 do-build d13467 1 a13469 1 do-clean d13471 1 a13473 1 do-configure-post-hook a13474 2 a13475 1 do-install d13491 1 a13491 1 endif a13493 1 enomem d13495 1 a13497 1 errx d13499 1 a13501 1 exp d13503 1 a13505 1 fabs d13507 1 a13509 1 features d13511 1 a13513 1 fetch-list d13515 1 a13517 1 forbids d13519 1 a13521 1 format a13522 2 a13523 1 fossil a13557 1 git a13558 3 gitlab d13579 1 a13579 1 hg a13581 1 imake d13583 1 a13585 1 inet_aton d13587 1 a13589 1 interpreter d13591 1 a13593 1 ip4 d13595 1 a13597 1 ipv4 d13599 1 a13601 1 iso d13603 1 a13605 1 krb d13607 1 a13609 1 ksh d13611 1 a13613 1 latex d13615 1 a13617 1 libintl_gettext d13619 1 a13621 1 libnbcompat d13623 1 a13625 1 libtool d13627 1 a13629 1 license d13631 1 a13633 1 little-endian d13635 1 a13637 1 locking d13639 1 a13641 1 make a13642 2 a13643 1 mercurial a13845 1 subversion d13847 1 a13849 1 sunpro a13850 3 svn @ 1.313 log @doc/pkgsrc.*: regen @ text @d4928 1 a4928 1 README.html file, which can be d4935 1 a4935 1 wanted to generate README.html d4954 1 a4954 1 pkgsrc/*/README.html files, so be sure d4962 1 a4962 1 README.html files, and can be made @ 1.312 log @doc/pkgsrc.*: regen @ text @d1006 1 a1006 1 2020Q4.

    d1032 2 a1033 2

    The tar file for the stable branch 2020Q4 is in the directory pkgsrc-2020Q4 and is also called pkgsrc.tar.gz.

    d1036 1 a1036 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2020Q4/pkgsrc.tar.gz d1051 1 a1051 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2020Q4 -P pkgsrc
    d1136 1
    a1136 1
    	-rpkgsrc-2020Q4 option.

    d3895 2 a3896 1 enhancing, create e.g. files/README.pkgsrc and install it. d3900 1 a3900 1 it sbould be narrowed to only those operating systems and d11858 1 a11859 1 GITHUB_TYPE d11862 1 a11863 1 GITLAB_TAG d11866 1 a11867 1 GIT_BRANCH d11870 1 a11871 1 GIT_EXTRACTDIR d11874 1 a11875 1 GIT_REPOSITORIES d11878 1 a11879 1 GIT_TAG d11882 1 a11883 1 GNU_CONFIGURE d11886 1 a11887 1 GNU_CONFIGURE_MANDIR d11890 1 a11891 1 GNU_CONFIGURE_STRICT d11894 1 a11895 1 GO_BUILD_PATTERN d11898 1 a11899 1 GO_DIST_BASE d11902 1 a11903 1 GO_SRCPATH d11906 1 a11907 1 GROUP_SPECIFIC_PKGS d11910 1 a11911 1 GRUB_PRESET_COMMAND d11914 1 a11915 1 GZIP d11918 1 a11919 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11922 1 a11923 1 HASKELL_ENABLE_SHARED_LIBRARY d11926 1 a11927 1 HAS_CONFIGURE d11930 1 a11931 1 HG_REPO d11934 1 a11935 1 HG_TAG d11938 1 a11939 1 HOST_PKGTOOLS_ARGS d11942 1 a11943 1 HOWL_GROUP d11946 1 a11947 1 ICCBASE d11950 1 a11951 1 ICON_THEMES d11954 1 a11955 1 IGNORE_CCACHE d11958 1 a11959 1 IGNORE_INTERACTIVE_FETCH d11962 1 a11963 1 IMAKEOPTS d11966 1 a11967 1 IMAKE_MANINSTALL d11970 1 a11971 1 IMDICTDIR d11974 1 a11975 1 INFO_DIR d11978 1 a11979 1 INFO_FILES_VERBOSE d11982 1 a11983 1 INIT_SYSTEM d11986 1 a11987 1 INN_GROUP d11990 1 a11991 1 INSTALLATION_DIRS d11994 1 a11995 1 INSTALL_ENV d11998 1 a11999 1 INSTALL_SRC d12002 1 a12003 1 INSTALL_UNSTRIPPED d12006 1 a12007 1 IRCD_HYBRID_IRC_USER d12010 1 a12011 1 IRCD_HYBRID_NICLEN d12014 1 a12015 1 IRCD_HYBRID_SYSLOG_FACILITY d12018 1 a12019 1 IRIX d12022 1 a12023 1 JABBERD_GROUP d12026 1 a12027 1 JABBERD_PIDDIR d12030 1 a12031 1 JABBERD_USER d12034 1 a12035 1 JAVA_APP_PATH d12038 1 a12039 1 JAVA_BINPREFIX d12042 1 a12043 1 JAVA_HOME d12046 1 a12047 1 JAVA_NAME d12050 1 a12051 1 JAVA_WRAPPERS d12054 1 a12055 1 JPEG_DEFAULT d12058 1 a12059 1 KERMIT_SUID_UUCP d12062 1 a12063 1 KNEWS_DOMAIN_FILE d12066 1 a12067 1 KRB5_ACCEPTED d12070 1 a12071 1 LANGUAGES d12074 1 a12075 1 LATEX2HTML_ICONPATH d12078 1 a12079 1 LDCONFIG_REMOVE_CMD d12082 1 a12083 1 LEAFNODE_GROUP d12086 1 a12087 1 LIBDVDCSS_HOMEPAGE d12090 1 a12091 1 LIBRSVG_TYPE d12094 1 a12095 1 LIBTOOLIZE_PLIST d12098 1 a12099 1 LIBUSB_TYPE d12102 1 a12103 1 LINKER_RPATH_FLAG d12106 1 a12107 1 LINUX_BASE_NODEPS d12110 1 a12111 1 LINUX_BASE_REQUIRED d12114 1 a12115 1 LOCALBASE d12118 1 a12119 1 LOCALPATCHES d12122 1 a12123 1 LOVE_GAME d12126 1 a12127 1 LP64PLATFORMS d12130 1 a12131 1 MAILAGENT_DOMAIN d12134 1 a12135 1 MAILAGENT_FQDN d12138 1 a12139 1 MAJORDOMO_HOMEDIR d12142 1 a12143 1 MAKEINFO_ARGS d12146 1 a12147 1 MAKE_DIRS_PERMS d12150 1 a12151 1 MAKE_FILE d12154 1 a12155 1 MAKE_JOBS d12158 1 a12159 1 MAKE_PROGRAM d12162 1 a12163 1 MANINSTALL d12166 1 a12167 1 MASTER_SITES d12170 1 a12171 1 MASTER_SITE_LOCAL d12174 1 a12175 1 MASTER_SITE_OVERRIDE d12178 1 a12179 1 MASTER_SORT d12182 1 a12183 1 MASTER_SORT_REGEX d12186 1 a12187 1 MEDIATOMB_GROUP d12190 1 a12191 1 MIPSPROBASE d12194 1 a12195 1 MIREDO_USER d12198 1 a12199 1 MKDIR d12202 1 a12203 1 MLDONKEY_HOME d12206 1 a12207 1 MONOTONE_GROUP d12210 1 a12211 1 MOTIFBASE d12214 1 a12215 1 MOTIF_TYPE_DEFAULT d12218 1 a12219 1 MSGFMT_STRIP_MSGCTXT d12222 1 a12223 1 MTOOLS_ENABLE_FLOPPYD d12226 1 a12227 1 MV d12230 1 a12231 1 MYSQL_DATADIR d12234 1 a12235 1 MYSQL_GROUP d12238 1 a12239 1 MYSQL_USER d12242 1 a12243 1 MYSQL_VERSIONS_ACCEPTED d12246 1 a12247 1 NAGIOSCMD_GROUP d12250 1 a12251 1 NAGIOS_GROUP d12254 1 a12255 1 NATIVE_APPEND_ABI d12258 1 a12259 1 NATIVE_EXEC_FMT d12262 1 a12263 1 NATIVE_OBJECT_FMT d12266 1 a12267 1 NETBSD_LOGIN_NAME d12270 1 a12271 1 NMH_MTA d12274 1 a12275 1 NOLOGIN d12278 1 a12279 1 NOT_FOR_PLATFORM d12282 1 a12283 1 NOT_PAX_MPROTECT_SAFE d12286 1 a12287 1 NO_CHECKSUM d12290 1 a12291 1 NO_SKIP d12294 1 a12295 1 NULLMAILER_GROUP d12298 1 a12299 1 OASIS d12302 1 a12303 1 OBJHOSTNAME d12306 1 a12307 1 OCAML_FINDLIB_DIRS d12310 1 a12311 1 OCAML_FINDLIB_REGISTER_VERBOSE d12314 1 a12315 1 OCAML_TOPKG_DOCDIR d12318 1 a12319 1 OCAML_USE_FINDLIB d12322 1 a12323 1 OCAML_USE_OASIS d12326 1 a12327 1 OCAML_USE_OPAM d12330 1 a12331 1 OCAML_USE_TOPKG d12334 1 a12335 1 ONLY_FOR_COMPILER d12338 1 a12339 1 OPENSSH_CHROOT d12342 1 a12343 1 OPENSSH_USER d12346 1 a12347 1 OPSYS_EMULDIR d12350 1 a12351 1 OSS_TYPE d12354 1 a12355 1 OSX_TOLERATE_SDK_SKEW d12358 1 a12359 1 OS_HAVE_RCD d12362 1 a12363 1 OS_VERSION d12366 1 a12367 1 OVERRIDE_DIRDEPTH d12370 1 a12371 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12374 1 a12375 1 OWN_DIRS d12378 1 a12379 1 P4GROUP d12382 1 a12383 1 P4ROOT d12386 1 a12387 1 PACKAGES d12390 1 a12391 1 PAMBASE d12394 1 a12395 1 PAPERSIZE d12398 1 a12399 1 PATCHDIR d12402 1 a12403 1 PATCH_ARGS d12406 1 a12407 1 PATCH_DIST_ARGS d12410 1 a12411 1 PATCH_DIST_STRIP d12414 1 a12415 1 PATCH_STRIP d12418 1 a12419 1 PCCBASE d12422 1 a12423 1 PEAR_CHANNEL d12426 1 a12427 1 PEAR_CHANNEL_VERSION d12430 1 a12431 1 PEAR_LIB d12434 1 a12435 1 PERL5 d12438 1 a12439 1 PERL5_CONFIGURE_DIRS d12442 1 a12443 1 PERL5_LICENSE d12446 1 a12447 1 PERL5_PACKLIST d12450 1 a12451 1 PERL5_PERLBASE d12454 1 a12455 1 PERL5_USE_PACKLIST d12458 1 a12459 1 PFCTL d12462 1 a12463 1 PF_VERSION d12466 1 a12467 1 PGHOME d12470 1 a12471 1 PGSQL_TYPE d12474 1 a12475 1 PGSQL_VERSIONS_ACCEPTED d12478 1 a12479 1 PGUSER d12482 1 a12483 1 PHP d12486 1 a12487 1 PHPPKGSRCDIR d12490 1 a12491 1 PHP_CHECK_INSTALLED d12494 1 a12495 1 PHP_INITIAL_TEENY d12498 1 a12499 1 PHP_VERSION d12502 1 a12503 1 PHP_VERSIONS_INCOMPATIBLE d12506 1 a12507 1 PHP_VERSION_REQD d12510 1 a12511 1 PKGCONFIG_BASE d12514 1 a12515 1 PKGCONFIG_OVERRIDE d12518 1 a12519 1 PKGDIR d12522 1 a12523 1 PKGINFODIR d12526 1 a12527 1 PKGMANDIR d12530 1 a12531 1 PKGNAME_REQD d12534 1 a12535 1 PKGREVISION d12538 1 a12539 1 PKGSRC_CHANGES d12542 1 a12543 1 PKGSRC_KEEP_BIN_PKGS d12546 1 a12547 1 PKGSRC_MAKE_ENV d12550 1 a12551 1 PKGSRC_MKPIE d12554 1 a12555 1 PKGSRC_RUN_TEST d12558 1 a12559 1 PKGSRC_SLEEPSECS d12562 1 a12563 1 PKGSRC_USE_CTF d12566 1 a12567 1 PKGSRC_USE_RELRO d12570 1 a12571 1 PKGSRC_USE_STACK_CHECK d12574 1 a12575 1 PKGTOOLS_ARGS d12578 1 a12579 1 PKG_ALTERNATIVES d12582 1 a12583 1 PKG_APACHE_ACCEPTED d12586 1 a12587 1 PKG_BEST_EXISTS d12590 1 a12591 1 PKG_COMPRESSION d12594 1 a12595 1 PKG_CONFIG_PERMS d12598 1 a12599 1 PKG_DB_TMPDIR d12602 1 a12603 1 PKG_DEFAULT_OPTIONS d12606 1 a12607 1 PKG_DEVELOPER d12610 1 a12611 1 PKG_FATAL_ERRORS d12614 1 a12615 1 PKG_FILELIST_CMD d12618 1 a12619 1 PKG_GID d12622 1 a12623 1 PKG_GROUPS_VARS d12626 1 a12627 1 PKG_INIT_SCRIPTS d12630 1 a12631 1 PKG_JVM d12634 1 a12635 1 PKG_JVM_DEFAULT d12638 1 a12639 1 PKG_LIBTOOL d12642 1 a12643 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12646 1 a12647 1 PKG_OPTIONS_LEGACY_VARS d12650 1 a12651 1 PKG_OPTIONS_OPTIONAL_GROUPS d12654 1 a12655 1 PKG_OPTIONS_VAR d12658 1 a12659 1 PKG_PHP_MAJOR_VERS d12662 1 a12663 1 PKG_RCD_SCRIPTS d12666 1 a12667 1 PKG_REGISTER_SHELLS d12670 1 a12671 1 PKG_SHELL d12674 1 a12675 1 PKG_SUPPORTED_OPTIONS d12678 1 a12679 1 PKG_SYSCONFBASEDIR d12682 1 a12683 1 PKG_SYSCONFDIR_PERMS d12686 1 a12687 1 PKG_SYSCONFVAR d12690 1 a12691 1 PKG_UID d12694 1 a12695 1 PKG_USERS d12698 1 a12699 1 PKG_VERBOSE d12702 1 a12703 1 PLIST_AWK d12706 1 a12707 1 PLIST_SRC d12710 1 a12711 1 PLIST_TYPE d12714 1 a12715 1 POPTOP_USE_MPPE d12718 1 a12719 1 POST_FETCH_HOOK d12722 1 a12723 1 PREFER_NATIVE d12726 1 a12727 1 PREFER_PKGSRC d12730 1 a12731 1 PREPEND_PATH d12734 1 a12735 1 PRIVILEGED_STAGES d12738 1 a12739 1 PTHREAD_AUTO_VARS d12742 1 a12743 1 PTHREAD_LDFLAGS d12746 1 a12747 1 PTHREAD_OPTS d12750 1 a12751 1 PVM_SSH d12754 1 a12755 1 PYTHON_FOR_BUILD_ONLY d12758 1 a12759 1 PYTHON_VERSIONED_DEPENDENCIES d12762 1 a12763 1 PYTHON_VERSIONS_INCOMPATIBLE d12766 1 a12767 1 PYTHON_VERSION_REQD d12770 1 a12771 1 PY_NO_EGG d12774 1 a12775 1 QMAIL_ALIAS_USER d12778 1 a12779 1 QMAIL_LOG_USER d12782 1 a12783 1 QMAIL_PASSWD_USER d12786 1 a12787 1 QMAIL_QUEUE_DIR d12790 1 a12791 1 QMAIL_QUEUE_USER d12794 1 a12795 1 QMAIL_ROOT_USER d12798 1 a12799 1 QPOPPER_FAC d12802 1 a12803 1 QPOPPER_USER d12806 1 a12807 1 RASMOL_DEPTH d12810 1 a12811 1 RCD_ORDER d12814 1 a12815 1 RCD_SCRIPTS_DIR d12818 1 a12819 1 RCD_SCRIPTS_MODE d12822 1 a12823 1 RCD_SCRIPT_SRC d12826 1 a12827 1 RDOC d12830 1 a12831 1 READLINE_TYPE d12834 1 a12835 1 REAL_ROOT_USER d12838 1 a12839 1 RELAY_CTRL_DIR d12842 1 a12843 1 REPLACE_AWK d12846 1 a12847 1 REPLACE_CSH d12850 1 a12851 1 REPLACE_PERL d12854 1 a12855 1 REPLACE_PHP d12858 1 a12859 1 REPLACE_RUBY d12862 1 a12863 1 REPLACE_RUBY_PAT d12866 1 a12867 1 REPLACE_TEXLUA d12870 1 a12871 1 REQD_DIRS_PERMS d12874 1 a12875 1 REQD_FILES_MODE d12878 1 a12879 1 RESOLV_AUTO_VARS d12882 1 a12883 1 RESOLV_LIBS d12886 1 a12887 1 ROCKSPEC_NAME d12890 1 a12891 1 ROOT_CMD d12894 1 a12895 1 ROOT_USER d12898 1 a12899 1 RPM d12902 1 a12903 1 RPM2PKG_PREFIX d12906 1 a12907 1 RPM2PKG_STRIP d12910 1 a12911 1 RPMFILES d12914 1 a12915 1 RPM_DB_PREFIX d12918 1 a12919 1 RSSH_RDIST_PATH d12922 1 a12923 1 RSSH_SCP_PATH d12926 1 a12927 1 RUBY d12930 1 a12931 1 RUBYGEM_NAME d12934 1 a12935 1 RUBYGEM_VERBOSE d12938 1 a12939 1 RUBY_ARCH d12942 1 a12943 1 RUBY_ARCHLIB d12946 1 a12947 1 RUBY_BASERIDIR d12950 1 a12951 1 RUBY_DLEXT d12954 1 a12955 1 RUBY_DYNAMIC_DIRS d12958 1 a12959 1 RUBY_ENCODING_ARG d12962 1 a12963 1 RUBY_EXTCONF_CHECK d12966 1 a12967 1 RUBY_EXTCONF_MAKEFILE d12970 1 a12971 1 RUBY_INC d12974 1 a12975 1 RUBY_LIB_BASE d12978 1 a12979 1 RUBY_NOVERSION d12982 1 a12983 1 RUBY_RAILS d12986 1 a12987 1 RUBY_RAILS60_VERSION d12990 1 a12991 1 RUBY_RAILS_ACCEPTED d12994 1 a12995 1 RUBY_RAILS_REQD d12998 1 a12999 1 RUBY_RIDIR d13002 1 a13003 1 RUBY_SHLIB d13006 1 a13007 1 RUBY_SHLIBVER d13010 1 a13011 1 RUBY_SITEARCHLIB d13014 1 a13015 1 RUBY_SITELIB_BASE d13018 1 a13019 1 RUBY_SLEXT d13022 1 a13023 1 RUBY_STATICLIB d13026 1 a13027 1 RUBY_SYSRIDIR d13030 1 a13031 1 RUBY_VENDORARCHLIB d13034 1 a13035 1 RUBY_VENDORLIB_BASE d13038 1 a13039 1 RUBY_VERSION d13042 1 a13043 1 RUBY_VERSIONS_INCOMPATIBLE d13046 1 a13047 1 RUBY_VERSION_REQD d13050 1 a13051 1 RUN d13054 1 a13055 1 SAWFISH_THEMES d13058 1 a13059 1 SCREWS_GROUP d13062 1 a13063 1 SCRIPTS_ENV d13066 1 a13067 1 SCROLLKEEPER_REBUILDDB d13070 1 a13071 1 SDIST_PAWD d13074 1 a13075 1 SETGIDGAME d13078 1 a13079 1 SETUID_ROOT_PERMS d13082 1 a13083 1 SHLIB d13086 1 a13087 1 SIGN_PACKAGES d13090 1 a13091 1 SITE_SPECIFIC_PKGS d13094 1 a13095 1 SMF_INSTANCES d13098 1 a13099 1 SMF_METHODS d13102 1 a13103 1 SMF_METHOD_SRC d13106 1 a13107 1 SMF_PREFIX d13110 1 a13111 1 SNIPROXY_GROUP d13114 1 a13115 1 SOURCE_BUFFSIZE d13118 1 a13119 1 SPECIFIC_PKGS d13122 1 a13123 1 SSP_SUPPORTED d13126 1 a13127 1 STEP_MSG d13130 1 a13131 1 STRIP_DBG d13134 1 a13135 1 STRIP_DEBUG_SUPPORTED d13138 1 a13139 1 SU d13142 1 a13143 1 SUBST d13146 1 a13147 1 SUBST_FILES d13150 1 a13151 1 SUBST_MESSAGE d13154 1 a13155 1 SUBST_SED d13158 1 a13159 1 SUBST_SKIP_TEXT_CHECK d13162 1 a13163 1 SUBST_VARS d13166 1 a13167 1 SUSE_PREFER d13170 1 a13171 1 SVN_EXTRACTDIR d13174 1 a13175 1 SVN_REPOSITORIES d13178 1 a13179 1 TBL d13182 1 a13183 1 TERMINFO_DEFAULT d13186 1 a13187 1 TEST d13190 1 a13191 1 TEST_DIRS d13194 1 a13195 1 TEST_ENV_SHELL d13198 1 a13199 1 TEST_MAKE_FLAGS d13202 1 a13203 1 TEXLIVE_IGNORE_PATTERNS d13206 1 a13207 1 TEXLIVE_UNVERSIONED d13210 1 a13211 1 TEX_FORMATS d13214 1 a13215 1 TEX_HYPHEN_DEF d13218 1 a13219 1 THTTPD_LOG_FACILITY d13222 1 a13223 1 TO d13226 1 a13227 1 TOOLS_ALWAYS_WRAP d13230 1 a13231 1 TOOLS_BROKEN d13234 1 a13235 1 TOOLS_CMDLINE_SED d13238 1 a13239 1 TOOLS_DIR d13242 1 a13243 1 TOOLS_GNU_MISSING d13246 1 a13247 1 TOOLS_NOOP d13250 1 a13251 1 TOOLS_SCRIPT d13254 1 a13255 1 TTF_FONTDIR d13258 1 a13259 1 TYPE d13262 1 a13263 1 UCSPI_SSL_GROUP d13266 1 a13267 1 UNLIMIT_RESOURCES d13270 1 a13271 1 UNPRIVILEGED_GROUP d13274 1 a13275 1 UNPRIVILEGED_USER d13278 1 a13279 1 UNWRAP_PATTERNS d13282 1 a13283 1 UPDATE_TARGET d13286 1 a13287 1 USERGROUP_PHASE d13290 1 a13291 1 USER_SPECIFIC_PKGS d13294 1 a13295 1 USE_APR d13298 1 a13299 1 USE_BUILTIN d13302 1 a13303 1 USE_CURSES d13306 1 a13307 1 USE_DB185 d13310 1 a13311 1 USE_GAMESGROUP d13314 1 a13315 1 USE_IMAKE d13318 1 a13319 1 USE_JAVA2 d13322 1 a13323 1 USE_LIBTOOL d13326 1 a13327 1 USE_NETBSD_REPO d13330 1 a13331 1 USE_PKGSRC_GCC_RUNTIME d13334 1 a13335 1 USE_PKG_ADMIN_DIGEST d13338 1 a13339 1 USE_RUBY_INSTALL d13342 1 a13343 1 USE_RUBY_SETUP_PKG d13346 1 a13347 1 UUCP_GROUP d13350 1 a13351 1 VARBASE d13354 1 a13355 1 VIM_EXTRA_OPTS d13358 1 a13359 1 WCALC_CGIDIR d13362 1 a13363 1 WCALC_HTMLDIR d13366 1 a13367 1 WDM_MANAGERS d13370 1 a13371 1 WRAPPER_REORDER_CMDS d13374 1 a13375 1 WRKDIR_BASENAME d13378 1 a13379 1 WRKLOG d13382 1 a13383 1 WRKSRC d13386 1 a13387 1 X11 d13390 1 a13391 1 X11_PKGSRCDIR d13394 1 a13395 1 X509_CERTIFICATE d13398 1 a13399 1 XAW_TYPE d13402 1 a13403 1 XMKMF d13406 1 a13407 1 XXX d13410 1 a13411 1 YES d13414 1 a13415 1 __stdc__ d13418 1 a13419 1 accept d13422 1 a13423 1 acquire-lock d13426 1 a13427 1 administrator d13430 1 a13431 1 alternatives d13434 1 a13435 1 asprintf d13438 1 a13439 1 autoconf d13442 1 a13443 1 autoreconf d13446 1 a13447 1 bash d13450 1 a13451 1 bin-install d13454 1 a13455 1 binpkg-list d13458 1 a13459 1 bootstrap-depends d13462 1 a13463 1 broken_on_platform d13466 1 a13467 1 bsd.prog.mk d13470 1 a13471 1 build-env d13474 1 a13475 1 buildlink-oss-soundcard-h d13478 1 a13479 1 c++ d13482 1 a13483 1 cce d13486 1 a13487 1 ceil d13490 1 a13491 1 changes-entry d13494 1 a13495 1 check d13498 1 a13499 1 check-files d13502 1 a13503 1 check-vulnerable d13506 1 a13507 1 checksum-phase d13510 1 a13511 1 clean-depends d13514 1 a13515 1 commit d13518 1 a13519 1 compact d13522 1 a13523 1 conf d13526 1 a13527 1 config.sub d13530 1 a13531 1 configure d13534 1 a13535 1 configure-help d13538 1 a13539 1 connect d13542 1 a13543 1 cputime d13546 1 a13547 1 csh d13550 1 a13551 1 cvs d13554 1 a13555 1 declaration d13558 1 a13559 1 defined d13562 1 a13563 1 dependencies d13566 1 a13567 1 depends-checksum d13570 1 a13571 1 deps d13574 1 a13575 1 destdir d13578 1 a13579 1 distclean d13582 1 a13583 1 dl d13586 1 a13587 1 do-build d13590 1 a13591 1 do-clean d13594 1 a13595 1 do-configure-post-hook d13598 1 a13599 1 do-fetch d13602 1 a13603 1 emul d13606 1 a13607 1 emul-fetch d13610 1 a13611 1 emulator d13614 1 a13615 1 endian d13618 1 a13619 1 enomem d13622 1 a13623 1 errx d13626 1 a13627 1 exp d13630 1 a13631 1 fabs d13634 1 a13635 1 features d13638 1 a13639 1 fetch-list d13642 1 a13643 1 forbids d13646 1 a13647 1 format d13650 1 a13651 1 fortify_source d13654 1 a13655 1 friend d13658 1 a13659 1 fts_close d13662 1 a13663 1 fts_read d13666 1 a13667 1 gcc d13670 1 a13671 1 gethostbyname d13674 1 a13675 1 getopt_long d13678 1 a13679 1 getservbyname d13682 1 a13683 1 getservent d13686 1 a13687 1 git d13690 1 a13691 1 gitlab d13694 1 a13695 1 gnu d13698 1 a13699 1 go d13702 1 a13703 1 golang d13706 1 a13707 1 hashbang d13710 1 a13711 1 help d13714 1 a13715 1 imake d13718 1 a13719 1 inet_aton d13722 1 a13723 1 interpreter d13726 1 a13727 1 ip4 d13730 1 a13731 1 ipv4 d13734 1 a13735 1 iso d13738 1 a13739 1 krb d13742 1 a13743 1 ksh d13746 1 a13747 1 latex d13750 1 a13751 1 libintl_gettext d13754 1 a13755 1 libnbcompat d13758 1 a13759 1 libtool d13762 1 a13763 1 license d13766 1 a13767 1 little-endian d13770 1 a13771 1 locking d13774 1 a13775 1 make d13778 1 a13779 1 memory d13782 1 a13783 1 meta d13786 1 a13787 1 meta_package d13790 1 a13791 1 mk.conf d13794 1 a13795 1 mount d13798 1 a13799 1 mremap d13802 1 a13803 1 nbcompat d13806 1 a13807 1 obstack_ptr_grow d13810 1 a13811 1 only d13814 1 a13815 1 options d13818 1 a13819 1 order d13822 1 a13823 1 override-intltool d13826 1 a13827 1 package d13830 1 a13831 1 path d13834 1 a13835 1 paxctl d13838 1 a13839 1 pc d13842 1 a13843 1 perl5 d13846 1 a13847 1 php d13850 1 a13851 1 pkg-config d13854 1 a13855 1 platform d13858 1 a13859 1 post-extract d13862 1 a13863 1 post-wrapper d13866 1 a13867 1 pre-configure d13870 1 a13871 1 pre-extract d13874 1 a13875 1 print-go-deps d13878 1 a13879 1 print-summary-data d13882 1 a13883 1 pypi d13886 1 a13887 1 readme-all d13890 1 a13891 1 recvfrom d13894 1 a13895 1 release-localbase-lock d13898 1 a13899 1 relro d13902 1 a13903 1 reorder d13906 1 a13907 1 replace_interpreter d13910 1 a13911 1 resolv d13914 1 a13915 1 ruby d13918 1 a13919 1 sendfile d13922 1 a13923 1 setenv d13926 1 a13927 1 setprogname d13930 1 a13931 1 sh d13934 1 a13935 1 show d13938 1 a13939 1 show-build-defs d13942 1 a13943 1 show-deps d13946 1 a13947 1 show-downlevel d13950 1 a13951 1 show-tools d13954 1 a13955 1 show-vars d13958 1 a13959 1 socket d13962 1 a13963 1 st_mode d13966 1 a13967 1 strcasestr d13970 1 a13971 1 strip d13974 1 a13975 1 strnlen d13978 1 a13979 1 subst d13982 1 a13983 1 subversion d13986 1 a13987 1 sunpro d13990 1 a13991 1 svn d13994 1 a13995 1 test d13998 1 a13999 1 tex d14002 1 a14003 1 tmp d14006 1 a14007 1 tools d14010 1 a14011 1 type d14014 1 a14015 1 undefined d14018 1 a14019 1 unlimit d14022 1 a14023 1 unprivileged-install-hook d14026 1 a14027 1 update d14030 1 a14031 1 upload-distfiles d14034 1 a14035 1 user d14038 1 a14039 1 vasprintf d14042 1 a14043 1 vsnprintf d14046 1 a14047 1 warning d14050 1 a14051 1 warnx d14054 1 a14055 1 wattr_on d14058 1 a14059 1 wrapper d14062 1 a14063 1   @ 1.311 log @doc/pkgsrc.*: regen @ text @d1768 1 a1768 1
    • PKGSRC_KEEP_BIN_PKGSRC: d3879 23 a3901 4 Useful for things like legal notices on almost-free software and hints for updating config files after installing modules for apache, PHP etc. Please note that you can modify variables in it easily by using d11233 4 d11845 1 a11846 1 GENERATE_PLIST d11849 1 a11850 1 GITHUB_PROJECT d11853 1 a11854 1 GITHUB_TAG d11857 1 a11858 1 GITLAB_PROJECT d11861 1 a11862 1 GITLAB_TYPE d11865 1 a11866 1 GIT_ENV d11869 1 a11870 1 GIT_REPO d11873 1 a11874 1 GIT_REVISION d11877 1 a11878 1 GNU d11881 1 a11882 1 GNU_CONFIGURE_INFODIR d11885 1 a11886 1 GNU_CONFIGURE_QUIET d11889 1 a11890 1 GODEP_REDIRECTS d11893 1 a11894 1 GO_DEPS d11897 1 a11898 1 GO_MODULE_FILES d11901 1 a11902 1 GO_VERSION_DEFAULT d11905 1 a11906 1 GRUB_NETWORK_CARDS d11909 1 a11910 1 GRUB_SCAN_ARGS d11913 1 a11914 1 HASKELL_COMPILER d11917 1 a11918 1 HASKELL_ENABLE_LIBRARY_PROFILING d11921 1 a11922 1 HASKELL_OPTIMIZATION_LEVEL d11925 1 a11926 1 HEADER_TEMPLATES d11929 1 a11930 1 HG_REPOSITORIES d11933 1 a11934 1 HOMEPAGE d11937 1 a11938 1 HOST_SPECIFIC_PKGS d11941 1 a11942 1 HOWL_USER d11945 1 a11946 1 ICECAST_CHROOTDIR d11949 1 a11950 1 IDOBASE d11953 1 a11954 1 IGNORE_INFO_DIRS d11957 1 a11958 1 IMAKE d11961 1 a11962 1 IMAKE_MAKE d11965 1 a11966 1 IMAP_UW_CCLIENT_MBOX_FMT d11969 1 a11970 1 INCOMPAT_CURSES d11973 1 a11974 1 INFO_FILES d11977 1 a11978 1 INFO_MSG d11981 1 a11982 1 INN_DATA_DIR d11985 1 a11986 1 INN_USER d11989 1 a11990 1 INSTALLATION_DIRS_FROM_PLIST d11993 1 a11994 1 INSTALL_SH_OVERRIDE d11997 1 a11998 1 INSTALL_TEMPLATES d12001 1 a12002 1 IRCD_HYBRID_IRC_GROUP d12005 1 a12006 1 IRCD_HYBRID_MAXCONN d12009 1 a12010 1 IRCD_HYBRID_SYSLOG_EVENTS d12013 1 a12014 1 IRCD_HYBRID_TOPICLEN d12017 1 a12018 1 IRRD_USE_PGP d12021 1 a12022 1 JABBERD_LOGDIR d12025 1 a12026 1 JABBERD_SPOOLDIR d12029 1 a12030 1 JAKARTA_HOME d12033 1 a12034 1 JAVA_APP_TARGETS d12037 1 a12038 1 JAVA_CLASSPATH d12041 1 a12042 1 JAVA_LD_LIBRARY_PATH d12045 1 a12046 1 JAVA_UNLIMIT d12049 1 a12050 1 JPEG_ACCEPTED d12053 1 a12054 1 KERBEROS d12057 1 a12058 1 KJS_USE_PCRE d12061 1 a12062 1 KNEWS_DOMAIN_NAME d12065 1 a12066 1 KRB5_DEFAULT d12069 1 a12070 1 LAPACK_LIBS d12073 1 a12074 1 LDCONFIG_ADD_CMD d12077 1 a12078 1 LEAFNODE_DATA_DIR d12081 1 a12082 1 LEAFNODE_USER d12085 1 a12086 1 LIBDVDCSS_MASTER_SITES d12089 1 a12090 1 LIBTOOL d12093 1 a12094 1 LIBTOOL_M4_OVERRIDE d12097 1 a12098 1 LICENSE d12101 1 a12102 1 LINK_RPATH_FLAG d12105 1 a12106 1 LINUX_BASE_PREFERRED d12109 1 a12110 1 LINUX_LOCALES d12113 1 a12114 1 LOCALBASE_LOCKTYPE d12117 1 a12118 1 LOVE_DATA d12121 1 a12122 1 LOVE_VERSION d12125 1 a12126 1 MACHINE_PLATFORM d12129 1 a12130 1 MAILAGENT_EMAIL d12133 1 a12134 1 MAILAGENT_ORGANIZATION d12137 1 a12138 1 MAJOR_OS_VERSION d12141 1 a12142 1 MAKE_DIRS d12145 1 a12146 1 MAKE_ENV d12149 1 a12150 1 MAKE_FLAGS d12153 1 a12154 1 MAKE_JOBS_SAFE d12157 1 a12158 1 MANCOMPRESSED_IF_MANZ d12161 1 a12162 1 MANZ d12165 1 a12166 1 MASTER_SITE_BACKUP d12169 1 a12170 1 MASTER_SITE_MOZILLA d12173 1 a12174 1 MASTER_SITE_PERL_CPAN d12177 1 a12178 1 MASTER_SORT_RANDOM d12181 1 a12182 1 MECAB_CHARSET d12185 1 a12186 1 MEDIATOMB_USER d12189 1 a12190 1 MIREDO_GROUP d12193 1 a12194 1 MISSING_FEATURES d12197 1 a12198 1 MLDONKEY_GROUP d12201 1 a12202 1 MLDONKEY_USER d12205 1 a12206 1 MONOTONE_USER d12209 1 a12210 1 MOTIF_TYPE d12213 1 a12214 1 MPI_TYPE d12217 1 a12218 1 MSGFMT_STRIP_MSGID_PLURAL d12221 1 a12222 1 MUST d12225 1 a12226 1 MYSQL_CHARSET d12229 1 a12230 1 MYSQL_EXTRA_CHARSET d12233 1 a12234 1 MYSQL_PKGSRCDIR d12237 1 a12238 1 MYSQL_VERSION d12241 1 a12242 1 MYSQL_VERSION_DEFAULT d12245 1 a12246 1 NAGIOSDIR d12249 1 a12250 1 NAGIOS_USER d12253 1 a12254 1 NATIVE_APPEND_ELF d12257 1 a12258 1 NATIVE_MACHINE_PLATFORM d12261 1 a12262 1 NBPAX_PROGRAM_PREFIX d12265 1 a12266 1 NMH_EDITOR d12269 1 a12270 1 NMH_PAGER d12273 1 a12274 1 NOTE d12277 1 a12278 1 NOT_PAX_ASLR_SAFE d12281 1 a12282 1 NO_BUILD d12285 1 a12286 1 NO_CONFIGURE d12289 1 a12290 1 NS_PREFERRED d12293 1 a12294 1 NULLMAILER_USER d12297 1 a12298 1 OASIS_BUILD_ARGS d12301 1 a12302 1 OBJMACHINE d12305 1 a12306 1 OCAML_FINDLIB_REGISTER d12309 1 a12310 1 OCAML_SITELIBDIR d12313 1 a12314 1 OCAML_USE_DUNE d12317 1 a12318 1 OCAML_USE_JBUILDER d12321 1 a12322 1 OCAML_USE_OASIS_DYNRUN d12325 1 a12326 1 OCAML_USE_OPT_COMPILER d12329 1 a12330 1 OMF d12333 1 a12334 1 ONLY_FOR_PLATFORM d12337 1 a12338 1 OPENSSH_GROUP d12341 1 a12342 1 OPSYS d12345 1 a12346 1 OS d12349 1 d12351 2 d12354 1 a12356 1 OSX_TOLERATE_SDK_SKEW d12358 1 a12360 1 OS_HAVE_RCD d12362 1 a12364 1 OS_VERSION d12366 1 a12368 1 OVERRIDE_DIRDEPTH d12370 1 a12372 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12374 1 a12376 1 OWN_DIRS d12378 1 a12380 1 P4GROUP d12382 1 a12384 1 P4ROOT d12386 1 a12388 1 PACKAGES d12390 1 a12392 1 PAMBASE d12394 1 a12396 1 PAPERSIZE d12398 1 a12400 1 PATCHDIR d12402 1 a12404 1 PATCH_ARGS d12406 1 a12408 1 PATCH_DIST_ARGS d12410 1 a12412 1 PATCH_DIST_STRIP d12414 1 a12416 1 PATCH_STRIP d12418 1 a12420 1 PCCBASE d12422 1 a12424 1 PEAR_CHANNEL d12426 1 a12428 1 PEAR_CHANNEL_VERSION d12430 1 a12432 1 PEAR_LIB d12434 1 a12436 1 PERL5 d12438 1 a12440 1 PERL5_CONFIGURE_DIRS d12442 1 a12444 1 PERL5_LICENSE d12446 1 a12448 1 PERL5_PACKLIST d12450 1 a12452 1 PERL5_PERLBASE d12454 1 a12456 1 PERL5_USE_PACKLIST d12458 1 a12460 1 PFCTL d12462 1 a12464 1 PF_VERSION d12466 1 a12468 1 PGHOME d12470 1 a12472 1 PGSQL_TYPE d12474 1 a12476 1 PGSQL_VERSIONS_ACCEPTED d12478 1 a12480 1 PGUSER d12482 1 a12484 1 PHP d12486 1 a12488 1 PHPPKGSRCDIR d12490 1 a12492 1 PHP_CHECK_INSTALLED d12494 1 a12496 1 PHP_INITIAL_TEENY d12498 1 a12500 1 PHP_VERSION d12502 1 a12504 1 PHP_VERSIONS_INCOMPATIBLE d12506 1 a12508 1 PHP_VERSION_REQD d12510 1 a12512 1 PKGCONFIG_BASE d12514 1 a12516 1 PKGCONFIG_OVERRIDE d12518 1 a12520 1 PKGDIR d12522 1 a12524 1 PKGINFODIR d12526 1 a12528 1 PKGMANDIR d12530 1 a12532 1 PKGNAME_REQD d12534 1 a12536 1 PKGREVISION d12538 1 a12540 1 PKGSRC_CHANGES d12542 1 a12544 1 PKGSRC_KEEP_BIN_PKGS d12546 1 a12548 1 PKGSRC_MAKE_ENV d12550 1 a12552 1 PKGSRC_MKPIE d12554 1 a12556 1 PKGSRC_RUN_TEST d12558 1 a12560 1 PKGSRC_SLEEPSECS d12562 1 a12564 1 PKGSRC_USE_CTF d12566 1 a12568 1 PKGSRC_USE_RELRO d12570 1 a12572 1 PKGSRC_USE_STACK_CHECK d12574 1 a12576 1 PKGTOOLS_ARGS d12578 1 a12580 1 PKG_ALTERNATIVES d12582 1 a12584 1 PKG_APACHE_ACCEPTED d12586 1 a12588 1 PKG_BEST_EXISTS d12590 1 a12592 1 PKG_COMPRESSION d12594 1 a12596 1 PKG_CONFIG_PERMS d12598 1 a12600 1 PKG_DB_TMPDIR d12602 1 a12604 1 PKG_DEFAULT_OPTIONS d12606 1 a12608 1 PKG_DEVELOPER d12610 1 a12612 1 PKG_FATAL_ERRORS d12614 1 a12616 1 PKG_FILELIST_CMD d12618 1 a12620 1 PKG_GID d12622 1 a12624 1 PKG_GROUPS_VARS d12626 1 a12628 1 PKG_INIT_SCRIPTS d12630 1 a12632 1 PKG_JVM d12634 1 a12636 1 PKG_JVM_DEFAULT d12638 1 a12640 1 PKG_LIBTOOL d12642 1 a12644 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12646 1 a12648 1 PKG_OPTIONS_LEGACY_VARS d12650 1 a12652 1 PKG_OPTIONS_OPTIONAL_GROUPS d12654 1 a12656 1 PKG_OPTIONS_VAR d12658 1 a12660 1 PKG_PHP_MAJOR_VERS d12662 1 a12664 1 PKG_RCD_SCRIPTS d12666 1 a12668 1 PKG_REGISTER_SHELLS d12670 1 a12672 1 PKG_SHELL d12674 1 a12676 1 PKG_SUPPORTED_OPTIONS d12678 1 a12680 1 PKG_SYSCONFBASEDIR d12682 1 a12684 1 PKG_SYSCONFDIR_PERMS d12686 1 a12688 1 PKG_SYSCONFVAR d12690 1 a12692 1 PKG_UID d12694 1 a12696 1 PKG_USERS d12698 1 a12700 1 PKG_VERBOSE d12702 1 a12704 1 PLIST_AWK d12706 1 a12708 1 PLIST_SRC d12710 1 a12712 1 PLIST_TYPE d12714 1 a12716 1 POPTOP_USE_MPPE d12718 1 a12720 1 POST_FETCH_HOOK d12722 1 a12724 1 PREFER_NATIVE d12726 1 a12728 1 PREFER_PKGSRC d12730 1 a12732 1 PREPEND_PATH d12734 1 a12736 1 PRIVILEGED_STAGES d12738 1 a12740 1 PTHREAD_AUTO_VARS d12742 1 a12744 1 PTHREAD_LDFLAGS d12746 1 a12748 1 PTHREAD_OPTS d12750 1 a12752 1 PVM_SSH d12754 1 a12756 1 PYTHON_FOR_BUILD_ONLY d12758 1 a12760 1 PYTHON_VERSIONED_DEPENDENCIES d12762 1 a12764 1 PYTHON_VERSIONS_INCOMPATIBLE d12766 1 a12768 1 PYTHON_VERSION_REQD d12770 1 a12772 1 PY_NO_EGG d12774 1 a12776 1 QMAIL_ALIAS_USER d12778 1 a12780 1 QMAIL_LOG_USER d12782 1 a12784 1 QMAIL_PASSWD_USER d12786 1 a12788 1 QMAIL_QUEUE_DIR d12790 1 a12792 1 QMAIL_QUEUE_USER d12794 1 a12796 1 QMAIL_ROOT_USER d12798 1 a12800 1 QPOPPER_FAC d12802 1 a12804 1 QPOPPER_USER d12806 1 a12808 1 RASMOL_DEPTH d12810 1 a12812 1 RCD_ORDER d12814 1 a12816 1 RCD_SCRIPTS_DIR d12818 1 a12820 1 RCD_SCRIPTS_MODE d12822 1 a12824 1 RCD_SCRIPT_SRC d12826 1 a12828 1 RDOC d12830 1 a12832 1 READLINE_TYPE d12834 1 a12836 1 REAL_ROOT_USER d12838 1 a12840 1 RELAY_CTRL_DIR d12842 1 a12844 1 REPLACE_AWK d12846 1 a12848 1 REPLACE_CSH d12850 1 a12852 1 REPLACE_PERL d12854 1 a12856 1 REPLACE_PHP d12858 1 a12860 1 REPLACE_RUBY d12862 1 a12864 1 REPLACE_RUBY_PAT d12866 1 a12868 1 REPLACE_TEXLUA d12870 1 a12872 1 REQD_DIRS_PERMS d12874 1 a12876 1 REQD_FILES_MODE d12878 1 a12880 1 RESOLV_AUTO_VARS d12882 1 a12884 1 RESOLV_LIBS d12886 1 a12888 1 ROCKSPEC_NAME d12890 1 a12892 1 ROOT_CMD d12894 1 a12896 1 ROOT_USER d12898 1 a12900 1 RPM d12902 1 a12904 1 RPM2PKG_PREFIX d12906 1 a12908 1 RPM2PKG_STRIP d12910 1 a12912 1 RPMFILES d12914 1 a12916 1 RPM_DB_PREFIX d12918 1 a12920 1 RSSH_RDIST_PATH d12922 1 a12924 1 RSSH_SCP_PATH d12926 1 a12928 1 RUBY d12930 1 a12932 1 RUBYGEM_NAME d12934 1 d12989 1 d12991 2 d12994 1 a12996 1 RUBY_RAILS_REQD d12998 1 a13000 1 RUBY_RIDIR d13002 1 a13004 1 RUBY_SHLIB d13006 1 a13008 1 RUBY_SHLIBVER d13010 1 a13012 1 RUBY_SITEARCHLIB d13014 1 a13016 1 RUBY_SITELIB_BASE d13018 1 a13020 1 RUBY_SLEXT d13022 1 a13024 1 RUBY_STATICLIB d13026 1 a13028 1 RUBY_SYSRIDIR d13030 1 a13032 1 RUBY_VENDORARCHLIB d13034 1 a13036 1 RUBY_VENDORLIB_BASE d13038 1 a13040 1 RUBY_VERSION d13042 1 a13044 1 RUBY_VERSIONS_INCOMPATIBLE d13046 1 a13048 1 RUBY_VERSION_REQD d13050 1 a13052 1 RUN d13054 1 a13056 1 SAWFISH_THEMES d13058 1 a13060 1 SCREWS_GROUP d13062 1 a13064 1 SCRIPTS_ENV d13066 1 a13068 1 SCROLLKEEPER_REBUILDDB d13070 1 a13072 1 SDIST_PAWD d13074 1 a13076 1 SETGIDGAME d13078 1 a13080 1 SETUID_ROOT_PERMS d13082 1 a13084 1 SHLIB d13086 1 a13088 1 SIGN_PACKAGES d13090 1 a13092 1 SITE_SPECIFIC_PKGS d13094 1 a13096 1 SMF_INSTANCES d13098 1 a13100 1 SMF_METHODS d13102 1 a13104 1 SMF_METHOD_SRC d13106 1 a13108 1 SMF_PREFIX d13110 1 a13112 1 SNIPROXY_GROUP d13114 1 a13116 1 SOURCE_BUFFSIZE d13118 1 a13120 1 SPECIFIC_PKGS d13122 1 a13124 1 SSP_SUPPORTED d13126 1 a13128 1 STEP_MSG d13130 1 a13132 1 STRIP_DBG d13134 1 a13136 1 STRIP_DEBUG_SUPPORTED d13138 1 a13140 1 SU d13142 1 a13144 1 SUBST d13146 1 a13148 1 SUBST_FILES d13150 1 a13152 1 SUBST_MESSAGE d13154 1 a13156 1 SUBST_SED d13158 1 a13160 1 SUBST_SKIP_TEXT_CHECK d13162 1 a13164 1 SUBST_VARS d13166 1 a13168 1 SUSE_PREFER d13170 1 a13172 1 SVN_EXTRACTDIR d13174 1 a13176 1 SVN_REPOSITORIES d13178 1 a13180 1 TBL d13182 1 a13184 1 TERMINFO_DEFAULT d13186 1 a13188 1 TEST d13190 1 a13192 1 TEST_DIRS d13194 1 a13196 1 TEST_ENV_SHELL d13198 1 a13200 1 TEST_MAKE_FLAGS d13202 1 a13204 1 TEXLIVE_IGNORE_PATTERNS d13206 1 a13208 1 TEXLIVE_UNVERSIONED d13210 1 a13212 1 TEX_FORMATS d13214 1 a13216 1 TEX_HYPHEN_DEF d13218 1 a13220 1 THTTPD_LOG_FACILITY d13222 1 a13224 1 TO d13226 1 a13228 1 TOOLS_ALWAYS_WRAP d13230 1 a13232 1 TOOLS_BROKEN d13234 1 a13236 1 TOOLS_CMDLINE_SED d13238 1 a13240 1 TOOLS_DIR d13242 1 a13244 1 TOOLS_GNU_MISSING d13246 1 a13248 1 TOOLS_NOOP d13250 1 a13252 1 TOOLS_SCRIPT d13254 1 a13256 1 TTF_FONTDIR d13258 1 a13260 1 TYPE d13262 1 a13264 1 UCSPI_SSL_GROUP d13266 1 a13268 1 UNLIMIT_RESOURCES d13270 1 a13272 1 UNPRIVILEGED_GROUP d13274 1 a13276 1 UNPRIVILEGED_USER d13278 1 a13280 1 UNWRAP_PATTERNS d13282 1 a13284 1 UPDATE_TARGET d13286 1 a13288 1 USERGROUP_PHASE d13290 1 a13292 1 USER_SPECIFIC_PKGS d13294 1 a13296 1 USE_APR d13298 1 a13300 1 USE_BUILTIN d13302 1 a13304 1 USE_CURSES d13306 1 a13308 1 USE_DB185 d13310 1 a13312 1 USE_GAMESGROUP d13314 1 a13316 1 USE_IMAKE d13318 1 a13320 1 USE_JAVA2 d13322 1 a13324 1 USE_LIBTOOL d13326 1 a13328 1 USE_NETBSD_REPO d13330 1 a13332 1 USE_PKGSRC_GCC_RUNTIME d13334 1 a13336 1 USE_PKG_ADMIN_DIGEST d13338 1 a13340 1 USE_RUBY_INSTALL d13342 1 a13344 1 USE_RUBY_SETUP_PKG d13346 1 a13348 1 UUCP_GROUP d13350 1 a13352 1 VARBASE d13354 1 a13356 1 VIM_EXTRA_OPTS d13358 1 a13360 1 WCALC_CGIDIR d13362 1 a13364 1 WCALC_HTMLDIR d13366 1 a13368 1 WDM_MANAGERS d13370 1 a13372 1 WRAPPER_REORDER_CMDS d13374 1 a13376 1 WRKDIR_BASENAME d13378 1 a13380 1 WRKLOG d13382 1 a13384 1 WRKSRC d13386 1 a13388 1 X11 d13390 1 a13392 1 X11_PKGSRCDIR d13394 1 a13396 1 X509_CERTIFICATE d13398 1 a13400 1 XAW_TYPE d13402 1 a13404 1 XMKMF d13406 1 a13408 1 XXX d13410 1 a13412 1 YES d13414 1 a13416 1 __stdc__ d13418 1 a13420 1 accept d13422 1 a13424 1 acquire-lock d13426 1 a13428 1 administrator d13430 1 a13432 1 alternatives d13434 1 a13436 1 asprintf d13438 1 a13440 1 autoconf d13442 1 a13444 1 autoreconf d13446 1 a13448 1 bash d13450 1 a13452 1 bin-install d13454 1 a13456 1 binpkg-list d13458 1 a13460 1 bootstrap-depends d13462 1 a13464 1 broken_on_platform d13466 1 a13468 1 bsd.prog.mk d13470 1 a13472 1 build-env d13474 1 a13476 1 buildlink-oss-soundcard-h d13478 1 a13480 1 c++ d13482 1 a13484 1 cce d13486 1 a13488 1 ceil d13490 1 a13492 1 changes-entry d13494 1 a13496 1 check d13498 1 a13500 1 check-files d13502 1 a13504 1 check-vulnerable d13506 1 a13508 1 checksum-phase d13510 1 a13512 1 clean-depends d13514 1 a13516 1 commit d13518 1 a13520 1 compact d13522 1 a13524 1 conf d13526 1 a13528 1 config.sub d13530 1 a13532 1 configure d13534 1 a13536 1 configure-help d13538 1 a13540 1 connect d13542 1 a13544 1 cputime d13546 1 a13548 1 csh d13550 1 a13552 1 cvs d13554 1 a13556 1 declaration d13558 1 a13560 1 defined d13562 1 a13564 1 dependencies d13566 1 a13568 1 depends-checksum d13570 1 a13572 1 deps d13574 1 a13576 1 destdir d13578 1 a13580 1 distclean d13582 1 a13584 1 dl d13586 1 a13588 1 do-build d13590 1 a13592 1 do-clean d13594 1 a13596 1 do-configure-post-hook d13598 1 a13600 1 do-fetch d13602 1 a13604 1 emul d13606 1 a13608 1 emul-fetch d13610 1 a13612 1 emulator d13614 1 a13616 1 endian d13618 1 a13620 1 enomem d13622 1 a13624 1 errx d13626 1 a13628 1 exp d13630 1 a13632 1 fabs d13634 1 a13636 1 features d13638 1 a13640 1 fetch-list d13642 1 a13644 1 forbids d13646 1 a13648 1 format d13650 1 a13652 1 fortify_source d13654 1 a13656 1 friend d13658 1 a13660 1 fts_close d13662 1 a13664 1 fts_read d13666 1 a13668 1 gcc d13670 1 a13672 1 gethostbyname d13674 1 a13676 1 getopt_long d13678 1 a13680 1 getservbyname d13682 1 a13684 1 getservent d13686 1 a13688 1 git d13690 1 a13692 1 gitlab d13694 1 a13696 1 gnu d13698 1 a13700 1 go d13702 1 a13704 1 golang d13706 1 a13708 1 hashbang d13710 1 a13712 1 help d13714 1 a13716 1 imake d13718 1 a13720 1 inet_aton d13722 1 a13724 1 interpreter d13726 1 a13728 1 ip4 d13730 1 a13732 1 ipv4 d13734 1 a13736 1 iso d13738 1 a13740 1 krb d13742 1 a13744 1 ksh d13746 1 a13748 1 latex d13750 1 a13752 1 libintl_gettext d13754 1 a13756 1 libnbcompat d13758 1 a13760 1 libtool d13762 1 a13764 1 license d13766 1 a13768 1 little-endian d13770 1 a13772 1 locking d13774 1 a13776 1 make d13778 1 a13780 1 memory d13782 1 a13784 1 meta d13786 1 a13788 1 meta_package d13790 1 a13792 1 mk.conf d13794 1 a13796 1 mount d13798 1 a13800 1 mremap d13802 1 a13804 1 nbcompat d13806 1 a13808 1 obstack_ptr_grow d13810 1 a13812 1 only d13814 1 a13816 1 options d13818 1 a13820 1 order d13822 1 a13824 1 override-intltool d13826 1 a13828 1 package d13830 1 a13832 1 path d13834 1 a13836 1 paxctl d13838 1 a13840 1 pc d13842 1 a13844 1 perl5 d13846 1 a13848 1 php d13850 1 a13852 1 pkg-config d13854 1 a13856 1 platform d13858 1 a13860 1 post-extract d13862 1 a13864 1 post-wrapper d13866 1 a13868 1 pre-configure d13870 1 a13872 1 pre-extract d13874 1 a13876 1 print-go-deps d13878 1 a13880 1 print-summary-data d13882 1 a13884 1 pypi d13886 1 a13888 1 readme-all d13890 1 a13892 1 recvfrom d13894 1 a13896 1 release-localbase-lock d13898 1 a13900 1 relro d13902 1 a13904 1 reorder d13906 1 a13908 1 replace_interpreter d13910 1 a13912 1 resolv d13914 1 a13916 1 ruby d13918 1 a13920 1 sendfile d13922 1 a13924 1 setenv d13926 1 a13928 1 setprogname d13930 1 a13932 1 sh d13934 1 a13936 1 show d13938 1 a13940 1 show-build-defs d13942 1 a13944 1 show-deps d13946 1 a13948 1 show-downlevel d13950 1 a13952 1 show-tools d13954 1 a13956 1 show-vars d13958 1 a13960 1 socket d13962 1 a13964 1 st_mode d13966 1 a13968 1 strcasestr d13970 1 a13972 1 strip d13974 1 a13976 1 strnlen d13978 1 a13980 1 subst d13982 1 a13984 1 subversion d13986 1 a13988 1 sunpro d13990 1 a13992 1 svn d13994 1 a13996 1 test d13998 1 a14000 1 tex d14002 1 a14004 1 tmp d14006 1 a14008 1 tools d14010 1 a14012 1 type d14014 1 a14016 1 undefined d14018 1 a14020 1 unlimit d14022 1 a14024 1 unprivileged-install-hook d14026 1 a14028 1 update d14030 1 a14032 1 upload-distfiles d14034 1 a14036 1 user d14038 1 a14040 1 vasprintf d14042 1 a14044 1 vsnprintf d14046 1 a14048 1 warning d14050 1 a14052 1 warnx d14054 1 a14056 1 wattr_on d14058 1 a14060 1 wrapper d14062 1 @ 1.310 log @doc/pkgsrc.*: regen @ text @d1006 1 a1006 1 2020Q3.

      d1032 2 a1033 2

      The tar file for the stable branch 2020Q3 is in the directory pkgsrc-2020Q3 and is also called pkgsrc.tar.gz.

      d1036 1 a1036 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2020Q3/pkgsrc.tar.gz
    d1051 1 a1051 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2020Q3 -P pkgsrc
    d1136 1
    a1136 1
    	-rpkgsrc-2020Q3 option.

    d1386 1 a1386 1 to the root users crontab(5) entry. For example the entry d1415 1 a1415 1 see daily.conf(5) and security.conf(5) for more details. d1606 1 a1606 1

    If you invoke the make(1) command with d1614 1 a1614 1

    If you want to know the value of a certain make(1) d1617 1 a1617 1 target. e.g. to show the expansion of the make(1) d1630 1 a1630 1 install a binary package - if available - via pkg_add(1), d1634 1 a1634 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1673 1 a1673 1 make(1) from the base system, it is in the directory d1815 1 a1815 1 privileges using su(1) d2055 1 a2055 1 another system with pkg_add(1). This saves having to build d2906 1 a2906 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2958 1 a2958 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3032 1 a3032 1 scripts and to make(1). Some package authors ignore the d3483 1 a3483 1 an argument to patch(1) that sets the pathname strip count to d3493 1 a3493 1 this package which have been reported with send-pr(1). d3846 1 a3846 1

    This shell script is invoked twice by pkg_add(1). d3851 2 a3852 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 20.1, “Files and directories outside the installation prefix”. d3872 2 a3873 2 See pkg_delete(1) and pkg_create(1) for more information. d4082 1 a4082 1 install files according to hier(7), with the exception that d4400 1 a4400 1 patch(1) can be handed in d4402 1 a4402 1

    By default patch(1) is given special arguments to make it d4581 1 a4581 1 install(1) command that have the owner, group and d4627 1 a4627 1

    If set to yes, do not run strip(1) d4715 1 a4715 1

    This target does a pkg_delete(1) in the d4721 1 a4721 1

    Add a "-v" to the pkg_delete(1) command.

    d4730 1 a4730 1 -R to the pkg_delete(1) d4882 1 a4882 1

    This target invokes pkg_info(1) for the current d4998 1 a4998 1

    If the package installs files via tar(1) or d5518 1 a5518 1 the make(1) system as a programming language for a big system d5524 1 a5524 1 like awk(1) programs. To make sure that every shell command runs d5538 1 a5538 1 make(1) for the second time, the file exists and will not be d5556 1 a5556 1

    You might remember that make(1) sometimes removes d5560 1 a5560 1 when one of the commands fails (like false(1) above).

    d5569 1 a5569 1 !=, which are described in the make(1) man d5587 1 a5587 1 interpreted as delimiters, just like in sh(1).

    d5644 1 a5644 1

    Example 3 can handle arbitrary strings, since printf(1) only d5648 1 a5648 1 skipped by the shell. For printf(1) this doesn't make a difference, d5692 1 a5692 1 ${EGFILES} is replaced with an empty string by make(1). d5836 1 a5836 1 make(1) variable that the user can set to override the default d6598 1 a6598 1 - see the pkg_create(1) man page for a full list. d6747 1 a6747 1 The files are later concatenated using cat(1), and the order of things is d7312 1 a7312 1 make(1) (for example .if or d7568 1 a7568 1 pkg_info(1).

    d7680 1 a7680 1

    pkg_add(1) is able to detect attempts to install packages d7691 1 a7691 1 exported in pkg_summary(5) files and consumed by binary package d7742 1 a7742 1 not be deleted using pkg_delete(1) unless the d7997 1 a7997 1 sed(1) commands, like this:

    d8269 1 a8269 1 files, i.e. files that are loaded via dlopen(3), NOT d8279 1 a8279 1 the cc(1) or ld(1) line with ${LIBTOOL} d8296 2 a8297 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8305 1 a8305 1 ldconfig(8).

    d9707 1 a9707 1 document. Next, generate an uuencoded gzipped tar(1) d9710 1 a9710 1 either with the send-pr(1) command, or if you don't have d9913 1 a9913 1 search the pkg_summary(5) database for PREV_PKGPATH d10003 1 a10003 1 to the pkgsrc-internal invocations of make(1), while d10019 1 a10019 1 make(1) program that is used in the pkgsrc d10088 1 a10088 1 which is documented in the make(1) man page and which is d10117 1 a10117 1 send-pr(1) appear here. Please do not report your bugs here d10736 1 a10736 1 improvements. Why you would want this when Berkeley yacc(1) is part d11159 3 d11163 1 a11165 1 AMANDA_TMP d11167 1 a11169 1 AMANDA_VAR d11171 1 a11173 1 APACHE_MODULE_NAME d11175 1 a11177 1 APACHE_MODULE_SRCDIR d11179 1 a11181 1 APACHE_SUEXEC_CONFIGURE_ARGS d11183 1 a11185 1 APACHE_USER d11187 1 a11189 1 APPEND_ELF d11191 1 a11193 1 AUDIT_PACKAGES_FLAGS d11195 1 a11197 1 AUTOMAKE_OVERRIDE d11199 1 a11201 1 AUTO_MKDIRS d11203 1 a11205 1 BDBBASE d11207 1 a11209 1 BDB_DEFAULT d11211 1 a11213 1 BDB_TYPE d11215 1 a11217 1 BIND_GROUP d11219 1 a11221 1 BINOWN d11223 1 a11225 1 BIN_INSTALL_FLAGS d11227 1 a11229 1 BLAS_ACCEPTED d11231 1 a11233 1 BLAS_TYPE d11235 1 a11237 1 BOOTSTRAP_SETUPTOOLS d11239 1 a11241 1 BROKEN_EXCEPT_ON_PLATFORM d11243 1 a11245 1 BSDSRCDIR d11247 1 a11249 1 BSD_MAKE_ENV d11251 1 a11253 1 BUILDLINK_AUTO_VARS d11255 1 a11257 1 BUILDLINK_CONTENTS_FILTER d11259 1 d11350 1 d11352 2 d11355 1 a11357 1 CHECK_FILES d11359 1 a11361 1 CHECK_FILES_STRICT d11363 1 a11365 1 CHECK_HEADERS_SKIP d11367 1 a11369 1 CHECK_INTERPRETER_SKIP d11371 1 a11373 1 CHECK_PERMS_AUTOFIX d11375 1 a11377 1 CHECK_PORTABILITY d11379 1 a11381 1 CHECK_PORTABILITY_SKIP d11383 1 a11385 1 CHECK_RELRO_SKIP d11387 1 a11389 1 CHECK_SHLIBS d11391 1 a11393 1 CHECK_SHLIBS_SKIP d11395 1 a11397 1 CHECK_SSP d11399 1 a11401 1 CHECK_SSP_SUPPORTED d11403 1 a11405 1 CHECK_STRIPPED_SKIP d11407 1 a11409 1 CHECK_WRKREF_EXTRA_DIRS d11411 1 a11413 1 CLAMAV_DBDIR d11415 1 a11417 1 CLAMAV_USER d11419 1 a11421 1 CLEANDEPENDS d11423 1 a11425 1 CMAKE_INSTALL_NAME_DIR d11427 1 a11429 1 CMAKE_MODULE_PATH_OVERRIDE d11431 1 a11433 1 CMAKE_PREFIX_PATH d11435 9 d11506 17 d11524 2 d11527 1 a11529 1 CYRUS_IDLE d11531 1 a11533 1 DAEMONTOOLS_GROUP d11535 1 a11537 1 DARWIN_NO_SYSTEM_LIBS d11539 1 a11541 1 DBUS_GROUP d11543 1 a11545 1 DEFANG_GROUP d11547 1 a11549 1 DEFAULT_ACCEPTABLE_LICENSES d11551 1 a11553 1 DEFAULT_IRC_SERVER d11555 1 a11557 1 DEF_UMASK d11559 1 a11561 1 DEINSTALL_SRC d11563 1 a11565 1 DELAYED_ERROR_MSG d11567 1 a11569 1 DEPENDS d11571 1 a11573 1 DEPENDS_TYPE d11575 1 a11577 1 DESTDIR_VARNAME d11579 1 a11581 1 DIGEST_REQD d11583 1 a11585 1 DISTFILES d11587 1 a11589 1 DISTNAME d11591 1 a11593 1 DIST_SUBDIR d11595 1 a11597 1 DJBDNS_CACHE_USER d11599 1 a11601 1 DJBDNS_LOG_USER d11603 1 a11605 1 DJBDNS_TINY_USER d11607 1 a11609 1 DL_AUTO_VARS d11611 1 a11613 1 DL_LDFLAGS d11615 1 a11617 1 DNS d11619 1 a11621 1 DOWNLOADED_DISTFILE d11623 1 a11625 1 DYNAMIC_SITES_CMD d11627 1 a11629 1 ECHO d11631 1 a11633 1 ELK_GUI d11635 1 a11637 1 EMULDIR d11639 1 a11641 1 EMULSUBDIRSLASH d11643 1 a11645 1 EMUL_DISTRO d11647 1 a11649 1 EMUL_IS_NATIVE d11651 1 a11653 1 EMUL_OPSYS d11655 1 a11657 1 EMUL_PLATFORM d11659 1 a11661 1 EMUL_PREFER d11663 1 a11665 1 EMUL_TYPE d11667 1 a11669 1 EXIM_GROUP d11671 1 a11673 1 EXPORT_SYMBOLS_LDFLAGS d11675 1 a11677 1 EXTRACT_CMD d11679 1 a11681 1 EXTRACT_DIR d11683 1 a11685 1 EXTRACT_ENV d11687 1 a11689 1 EXTRACT_OPTS d11691 1 a11693 1 EXTRACT_USING d11695 1 a11697 1 FAILOVER_FETCH d11699 1 a11701 1 FAKE_NCURSES d11703 1 a11705 1 FAM_ACCEPTED d11707 1 a11709 1 FAM_SERVER d11711 1 a11713 1 FEATURE_CPPFLAGS d11715 1 a11717 1 FEATURE_LIBS d11719 1 a11721 1 FETCH_BEFORE_ARGS d11723 1 a11725 1 FETCH_OUTPUT_ARGS d11727 1 a11729 1 FETCH_RESUME_ARGS d11731 1 a11733 1 FETCH_USE_IPV4_ONLY d11735 1 a11737 1 FILES_SUBST d11739 1 a11741 1 FIX_SYSTEM_HEADERS d11743 1 a11745 1 FLUXBOX_USE_KDE d11747 1 d11750 1 a11750 1 FLUXBOX_USE_XINERAMA d11758 8 d11835 20 d11891 3 d11895 1 a11897 1 HASKELL_ENABLE_LIBRARY_PROFILING d11899 1 a11901 1 HASKELL_OPTIMIZATION_LEVEL d11903 1 d11906 5 a11910 1 HEADER_TEMPLATES d12010 4 d12082 5 d12088 2 d12091 1 a12093 1 LOCALBASE_LOCKTYPE d12095 1 a12097 1 LOVE_DATA d12099 1 a12101 1 LOVE_VERSION d12103 1 a12105 1 MACHINE_PLATFORM d12107 1 a12109 1 MAILAGENT_EMAIL d12111 1 a12113 1 MAILAGENT_ORGANIZATION d12115 1 d12199 3 d12203 1 a12205 1 MYSQL_CHARSET d12207 1 a12209 1 MYSQL_EXTRA_CHARSET d12211 1 a12213 1 MYSQL_PKGSRCDIR d12215 1 a12217 1 MYSQL_VERSION d12219 1 a12221 1 MYSQL_VERSION_DEFAULT d12223 1 a12225 1 NAGIOSDIR d12227 1 a12229 1 NAGIOS_USER d12231 1 a12233 1 NATIVE_APPEND_ELF d12235 1 a12237 1 NATIVE_MACHINE_PLATFORM d12239 1 a12241 1 NBPAX_PROGRAM_PREFIX d12243 1 a12245 1 NMH_EDITOR d12247 1 a12249 1 NMH_PAGER d12251 1 a12253 1 NOTE d12255 1 a12257 1 NOT_PAX_ASLR_SAFE d12259 1 a12261 1 NO_BUILD d12263 1 a12265 1 NO_CONFIGURE d12267 1 a12269 1 NS_PREFERRED d12271 1 a12273 1 NULLMAILER_USER d12275 1 a12277 1 OASIS_BUILD_ARGS d12279 1 a12281 1 OBJMACHINE d12283 1 a12285 1 OCAML_FINDLIB_REGISTER d12287 1 a12289 1 OCAML_SITELIBDIR d12291 1 a12293 1 OCAML_USE_DUNE d12295 1 a12297 1 OCAML_USE_JBUILDER d12299 1 a12301 1 OCAML_USE_OASIS_DYNRUN d12303 1 a12305 1 OCAML_USE_OPT_COMPILER d12307 1 a12309 1 OMF d12311 1 a12313 1 ONLY_FOR_PLATFORM d12315 1 a12317 1 OPENSSH_GROUP d12319 1 a12321 1 OPSYS d12323 1 a12325 1 OS d12327 1 a12329 1 OSX d12331 1 d12334 1 d12336 2 d12339 1 a12341 1 OTF_FONTS_DIR d12343 1 a12345 1 OVERRIDE_GEMSPEC d12347 1 d12395 8 d12783 4 d12799 3 d12803 1 a12805 1 READLINE_DEFAULT d12807 1 a12809 1 REAL_ROOT_GROUP d12811 1 a12813 1 RECURSIVE_MAKE d12815 1 a12817 1 RELRO_SUPPORTED d12819 1 a12821 1 REPLACE_BASH d12823 1 a12825 1 REPLACE_KSH d12827 1 a12829 1 REPLACE_PERL6 d12831 1 a12833 1 REPLACE_PYTHON d12835 1 a12837 1 REPLACE_RUBY_DIRS d12839 1 a12841 1 REPLACE_SH d12843 1 a12845 1 REQD_DIRS d12847 1 a12849 1 REQD_FILES d12851 1 a12853 1 REQD_FILES_PERMS d12855 1 a12857 1 RESOLV_LDFLAGS d12859 5 a12865 1 RM d12867 1 a12869 1 ROOT_GROUP d12871 1 a12873 1 RPCGEN d12875 1 a12877 1 RPM2PKG_PLIST d12879 1 a12881 1 RPM2PKG_STAGE d12883 1 a12885 1 RPM2PKG_SUBPREFIX d12887 1 a12889 1 RPMIGNOREPATH d12891 1 a12893 1 RSSH_CVS_PATH d12895 1 a12897 1 RSSH_RSYNC_PATH d12899 1 a12901 1 RSSH_SFTP_SERVER_PATH d12903 1 a12905 1 RUBYGEM d12907 1 a12909 1 RUBYGEM_OPTIONS d12911 1 a12913 1 RUBY_ARCH d12915 1 a12917 1 RUBY_ARCHLIB d12919 1 a12921 1 RUBY_BASERIDIR d12923 1 a12925 1 RUBY_DLEXT d12927 1 a12929 1 RUBY_DYNAMIC_DIRS d12931 1 a12933 1 RUBY_ENCODING_ARG d12935 1 a12937 1 RUBY_EXTCONF_CHECK d12939 1 a12941 1 RUBY_EXTCONF_MAKEFILE d12943 1 a12945 1 RUBY_INC d12947 1 a12949 1 RUBY_LIB_BASE d12951 1 a12953 1 RUBY_NOVERSION d12955 1 a12957 1 RUBY_RAILS d12959 1 a12961 1 RUBY_RAILS60_VERSION d12963 1 a12965 1 RUBY_RAILS_DEFAULT d12967 1 a12969 1 RUBY_RAILS_STRICT_DEP d12971 1 a12973 1 RUBY_SETUP d12975 1 a12977 1 RUBY_SHLIBALIAS d12979 1 a12981 1 RUBY_SIMPLE_INSTALL d12983 1 a12985 1 RUBY_SITELIB d12987 1 a12989 1 RUBY_SITERIDIR d12991 1 a12993 1 RUBY_SRCDIR d12995 1 a12997 1 RUBY_SUFFIX d12999 1 a13001 1 RUBY_USE_PTHREAD d13003 1 a13005 1 RUBY_VENDORLIB d13007 1 a13009 1 RUBY_VER d13011 1 a13013 1 RUBY_VERSIONS_ACCEPTED d13015 1 a13017 1 RUBY_VERSION_DEFAULT d13019 1 a13021 1 RUBY_VER_DIR d13023 1 a13025 1 RUN_LDCONFIG d13027 1 a13029 1 SCO d13031 1 a13033 1 SCREWS_USER d13035 1 a13037 1 SCROLLKEEPER_DATADIR d13039 1 a13041 1 SCROLLKEEPER_UPDATEDB d13043 1 a13045 1 SERIAL_DEVICES d13047 1 a13049 1 SETGID_GAMES_PERMS d13051 1 a13053 1 SH d13055 1 d13142 8 d13226 1 d13228 2 d13231 1 a13233 1 UAC_REQD_EXECS d13235 1 a13237 1 UCSPI_SSL_USER d13239 1 a13241 1 UNPRIVILEGED d13243 1 a13245 1 UNPRIVILEGED_GROUPS d13247 1 a13249 1 UNWRAP_FILES d13251 1 a13253 1 UPDATE_GEMSPEC d13255 1 a13257 1 URI d13259 1 a13261 1 USERPPP_GROUP d13263 1 a13265 1 USE_ABI_DEPENDS d13267 1 a13269 1 USE_BSD_MAKEFILE d13271 1 a13273 1 USE_CROSS_COMPILE d13275 1 a13277 1 USE_CWRAPPERS d13279 1 a13281 1 USE_FEATURES d13283 1 a13285 1 USE_GCC_RUNTIME d13287 1 a13289 1 USE_JAVA d13291 1 a13293 1 USE_LANGUAGES d13295 1 a13297 1 USE_NATIVE_GCC d13299 1 a13301 1 USE_PKGSRC_GCC d13303 1 a13305 1 USE_PKGTASKS d13307 1 a13309 1 USE_RUBY_EXTCONF d13311 1 a13313 1 USE_RUBY_SETUP d13315 1 a13317 1 USE_TOOLS d13319 1 a13321 1 UUCP_USER d13323 1 a13325 1 VARNAME d13327 1 a13329 1 WARNING_MSG d13331 1 a13333 1 WCALC_CGIPATH d13335 1 a13337 1 WCALC_HTMLPATH d13339 1 a13341 1 WRAPPER_CC d13343 1 a13345 1 WRKDIR d13347 1 a13349 1 WRKDIR_LOCKTYPE d13351 1 a13353 1 WRKOBJDIR d13355 1 a13357 1 X10_PORT d13359 1 a13361 1 X11BASE d13363 1 a13365 1 X11_TYPE d13367 1 a13369 1 X509_KEY d13371 1 a13373 1 XLOCK_DEFAULT_MODE d13375 1 a13377 1 XMKMF_FLAGS d13379 1 d13522 1 d13524 2 d13527 1 a13529 1 declare d13531 1 a13533 1 depend d13535 1 a13537 1 depends d13539 1 a13541 1 depends-fetch d13543 1 a13545 1 describe d13547 1 a13549 1 disable d13551 1 a13553 1 distinfo d13555 1 a13557 1 dlopen d13559 1 a13561 1 do-buildlink d13563 1 a13565 1 do-configure d13567 1 a13569 1 do-extract d13571 1 d13587 3 d13591 1 a13593 1 err d13595 1 a13597 1 etc d13599 1 a13601 1 extract-rpm d13603 1 a13605 1 feature d13607 1 a13609 1 fetch d13611 1 a13613 1 follows d13615 1 a13617 1 form d13619 1 a13621 1 fortify d13623 1 d13658 1 d13660 3 d13683 3 d13687 1 a13689 1 increment d13691 1 a13693 1 interp d13695 1 a13697 1 intl d13699 1 a13701 1 ip6 d13703 1 a13705 1 ipv6 d13707 1 a13709 1 kerberos d13711 1 a13713 1 krb5 d13715 1 a13717 1 lapack d13719 1 a13721 1 libintl_bindtextdomain d13723 1 a13725 1 libintl_textdomain d13727 1 a13729 1 libs d13731 1 a13733 1 licence d13735 1 a13737 1 lintl d13739 1 a13741 1 lock d13743 1 a13745 1 lvalue d13747 1 a13749 1 makesum d13751 1 d13954 1 d13956 2 d13959 1 d13962 1 a13962 1 sunwspro @ 1.309 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.38 2020/06/20 05:31:10 rillig Exp $

    d11159 1 a11159 1 ALSA_PC a11161 1 ALTERNATIVES_SRC d11163 1 a11165 1 AMANDA_USER d11167 1 a11169 1 APACHE_GROUP d11171 1 a11173 1 APACHE_MODULE_SRC d11175 1 a11177 1 APACHE_PKG_PREFIX d11179 1 a11181 1 APACHE_SUEXEC_DOCROOT d11183 1 a11185 1 APPEND_ABI d11187 1 a11189 1 ARLA_CACHE d11191 1 a11193 1 AUTOCONF_REQD d11195 1 a11197 1 AUTOMAKE_REQD d11199 1 a11201 1 BDB185_DEFAULT d11203 1 a11205 1 BDB_ACCEPTED d11207 1 a11209 1 BDB_LIBS d11211 1 a11213 1 BIND_DIR d11215 1 a11217 1 BIND_USER d11219 1 a11221 1 BINPKG_SITES d11223 1 a11225 1 BISON_PKGDATADIR d11227 1 a11229 1 BLAS_LIBS d11231 1 a11233 1 BOOTSTRAP_DEPENDS d11235 1 a11237 1 BROKEN d11239 1 a11241 1 BROKEN_ON_PLATFORM d11243 1 a11245 1 BSDXSRCDIR d11247 1 a11249 1 BUILDLINK_AUTO_DIRS d11251 1 a11253 1 BUILDLINK_CFLAGS a11254 2 a11255 1 BUILDLINK_DEPMETHOD a11345 1 CHECKOUT_DATE d11347 1 a11349 1 CHECK_FAKEHOME d11351 1 a11353 1 CHECK_FILES_SKIP d11355 1 a11357 1 CHECK_HEADERS d11359 1 a11361 1 CHECK_INTERPRETER d11363 1 a11365 1 CHECK_PERMS d11367 1 a11369 1 CHECK_PERMS_SKIP d11371 1 a11373 1 CHECK_PORTABILITY_EXPERIMENTAL d11375 1 a11377 1 CHECK_RELRO d11379 1 a11381 1 CHECK_RELRO_SUPPORTED d11383 1 a11385 1 CHECK_SHLIBS_BLACKLIST d11387 1 a11389 1 CHECK_SHLIBS_SUPPORTED d11391 1 a11393 1 CHECK_SSP_SKIP d11395 1 a11397 1 CHECK_STRIPPED d11399 1 a11401 1 CHECK_WRKREF d11403 1 a11405 1 CHECK_WRKREF_SKIP d11407 1 a11409 1 CLAMAV_GROUP d11411 1 a11413 1 CLANGBASE d11415 1 a11417 1 CMAKE_DEPENDENCIES_REWRITE d11419 1 a11421 1 CMAKE_INSTALL_PREFIX d11423 1 a11425 1 CMAKE_PKGSRC_BUILD_FLAGS a11426 2 a11427 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a11489 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d11491 1 a11493 1 CYRUS_GROUP d11495 1 a11497 1 CYRUS_USER d11499 1 a11501 1 DAEMONTOOLS_LOG_USER d11503 1 a11505 1 DARWIN_REQUIRES_FILTER d11507 1 a11509 1 DBUS_USER d11511 1 a11513 1 DEFANG_USER d11515 1 a11517 1 DEFAULT_DISTFILES d11519 1 a11521 1 DEFAULT_SERIAL_DEVICE d11523 1 a11525 1 DEINSTALLDEPENDS d11527 1 a11529 1 DEINSTALL_TEMPLATES d11531 1 a11533 1 DELAYED_WARNING_MSG d11535 1 a11537 1 DEPENDS_TARGET d11539 1 a11541 1 DESTDIR d11543 1 a11545 1 DIALER_GROUP d11547 1 a11549 1 DISTDIR d11551 1 a11553 1 DISTINFO_FILE d11555 1 a11557 1 DIST_PATH d11559 1 a11561 1 DJBDNS_AXFR_USER d11563 1 a11565 1 DJBDNS_DJBDNS_GROUP d11567 1 a11569 1 DJBDNS_RBL_USER d11571 1 a11573 1 DLOPEN_REQUIRE_PTHREADS d11575 1 a11577 1 DL_CFLAGS d11579 1 a11581 1 DL_LIBS d11583 1 a11585 1 DOCOWN d11587 1 a11589 1 DT_LAYOUT d11591 1 a11593 1 DYNAMIC_SITES_SCRIPT d11595 1 a11597 1 ECHO_N d11599 1 a11601 1 EMACS_TYPE d11603 1 a11605 1 EMULSUBDIR d11607 1 a11609 1 EMUL_ARCH d11611 1 a11613 1 EMUL_EXEC_FMT d11615 1 a11617 1 EMUL_MODULES d11619 1 a11621 1 EMUL_PKG_FMT d11623 1 a11625 1 EMUL_PLATFORMS d11627 1 a11629 1 EMUL_REQD d11631 1 a11633 1 ERROR_MSG d11635 1 a11637 1 EXIM_USER d11639 1 a11641 1 EXTRACTOR d11643 1 a11645 1 EXTRACT_CMD_DEFAULT d11647 1 a11649 1 EXTRACT_ELEMENTS d11651 1 a11653 1 EXTRACT_ONLY d11655 1 a11657 1 EXTRACT_SUFX d11659 1 a11661 1 FAIL d11663 1 a11665 1 FAIL_MSG d11667 1 a11669 1 FAM d11671 1 a11673 1 FAM_DEFAULT d11675 1 a11677 1 FCPATH d11679 1 a11681 1 FEATURE_LDFLAGS d11683 1 a11685 1 FETCH_AFTER_ARGS d11687 1 a11689 1 FETCH_CMD d11691 1 a11693 1 FETCH_PROXY d11695 1 a11697 1 FETCH_TIMEOUT d11699 1 a11701 1 FETCH_USING d11703 1 a11705 1 FILES_SUBST_SED d11707 1 a11709 1 FLUXBOX_USE_GNOME d11711 1 a11713 1 FLUXBOX_USE_XFT a11714 3 FONTDIR a11721 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a11790 20 GITLAB_PROJECT GITLAB_TAG GITLAB_TYPE GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d11827 1 a11827 1 HASKELL_COMPILER a11829 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11831 1 a11833 1 HASKELL_ENABLE_SHARED_LIBRARY d11835 1 a11837 1 HAS_CONFIGURE a11838 7 HG_REPO HG_REPOSITORIES HG_TAG a11937 4 JAVA_APP_PATH JAVA_APP_TARGETS a12005 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED d12007 1 a12009 1 LOCALBASE d12011 1 a12013 1 LOCALPATCHES d12015 1 a12017 1 LOVE_GAME d12019 1 a12021 1 LP64PLATFORMS d12023 1 a12025 1 MAILAGENT_DOMAIN d12027 1 a12029 1 MAILAGENT_FQDN a12030 2 a12031 1 MAJOR_OS_VERSION d12115 1 a12115 1 MUST a12117 1 MV d12119 1 a12121 1 MYSQL_DATADIR d12123 1 a12125 1 MYSQL_GROUP d12127 1 a12129 1 MYSQL_USER d12131 1 a12133 1 MYSQL_VERSIONS_ACCEPTED d12135 1 a12137 1 NAGIOSCMD_GROUP d12139 1 a12141 1 NAGIOS_GROUP d12143 1 a12145 1 NATIVE_APPEND_ABI d12147 1 a12149 1 NATIVE_EXEC_FMT d12151 1 a12153 1 NATIVE_OBJECT_FMT d12155 1 a12157 1 NETBSD_LOGIN_NAME d12159 1 a12161 1 NMH_MTA d12163 1 a12165 1 NOLOGIN d12167 1 a12169 1 NOT_FOR_PLATFORM d12171 1 a12173 1 NOT_PAX_MPROTECT_SAFE d12175 1 a12177 1 NO_CHECKSUM d12179 1 a12181 1 NO_SKIP d12183 1 a12185 1 NULLMAILER_GROUP d12187 1 a12189 1 OASIS d12191 1 a12193 1 OBJHOSTNAME d12195 1 a12197 1 OCAML_FINDLIB_DIRS d12199 1 a12201 1 OCAML_FINDLIB_REGISTER_VERBOSE d12203 1 a12205 1 OCAML_TOPKG_DOCDIR d12207 1 a12209 1 OCAML_USE_FINDLIB d12211 1 a12213 1 OCAML_USE_OASIS d12215 1 a12217 1 OCAML_USE_OPAM d12219 1 a12221 1 OCAML_USE_TOPKG d12223 1 a12225 1 ONLY_FOR_COMPILER d12227 1 a12229 1 OPENSSH_CHROOT d12231 1 a12233 1 OPENSSH_USER d12235 1 a12237 1 OPSYS_EMULDIR d12239 1 a12241 1 OSS_TYPE a12242 2 a12243 1 OS_HAVE_ALSA a12245 1 OS_HAVE_RCD d12247 1 a12249 1 OS_VERSION d12251 1 a12253 1 OVERRIDE_DIRDEPTH a12254 2 a12255 1 OVERRIDE_ROCKSPEC a12302 8 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS PEAR_CHANNEL_VERSION a12682 4 RCD_DIR RCD_ORDER d12695 1 a12695 1 RCD_SUBR a12697 1 RDOC d12699 1 a12701 1 READLINE_TYPE d12703 1 a12705 1 REAL_ROOT_USER d12707 1 a12709 1 RELAY_CTRL_DIR d12711 1 a12713 1 REPLACE_AWK d12715 1 a12717 1 REPLACE_CSH d12719 1 a12721 1 REPLACE_PERL d12723 1 a12725 1 REPLACE_PHP d12727 1 a12729 1 REPLACE_RUBY d12731 1 a12733 1 REPLACE_RUBY_PAT d12735 1 a12737 1 REPLACE_TEXLUA d12739 1 a12741 1 REQD_DIRS_PERMS d12743 1 a12745 1 REQD_FILES_MODE d12747 1 a12749 1 RESOLV_AUTO_VARS d12751 1 a12753 1 RESOLV_LIBS a12754 6 ROCKSPEC_NAME ROCKSPEC_SPECFILE a12755 1 ROOT_GROUP d12758 1 a12759 1 RPCGEN d12762 1 a12763 1 RPM2PKG_PLIST d12766 1 a12767 1 RPM2PKG_STAGE d12770 1 a12771 1 RPM2PKG_SUBPREFIX d12774 1 a12775 1 RPMIGNOREPATH d12778 1 a12779 1 RSSH_CVS_PATH d12782 1 a12783 1 RSSH_RSYNC_PATH d12786 1 a12787 1 RSSH_SFTP_SERVER_PATH d12790 1 a12791 1 RUBYGEM d12794 1 a12795 1 RUBYGEM_OPTIONS d12798 1 a12799 1 RUBY_ARCH d12802 1 a12803 1 RUBY_ARCHLIB d12806 1 a12807 1 RUBY_BASERIDIR d12810 1 a12811 1 RUBY_DLEXT d12814 1 a12815 1 RUBY_DYNAMIC_DIRS d12818 1 a12819 1 RUBY_ENCODING_ARG d12822 1 a12823 1 RUBY_EXTCONF_CHECK d12826 1 a12827 1 RUBY_EXTCONF_MAKEFILE d12830 1 a12831 1 RUBY_INC d12834 1 a12835 1 RUBY_LIB_BASE d12838 1 a12839 1 RUBY_NOVERSION d12842 1 a12843 1 RUBY_RAILS d12846 1 a12847 1 RUBY_RAILS60_VERSION d12850 1 a12851 1 RUBY_RAILS_DEFAULT d12854 1 a12855 1 RUBY_RAILS_STRICT_DEP d12858 1 a12859 1 RUBY_SETUP d12862 1 a12863 1 RUBY_SHLIBALIAS d12866 1 a12867 1 RUBY_SIMPLE_INSTALL d12870 1 a12871 1 RUBY_SITELIB d12874 1 a12875 1 RUBY_SITERIDIR d12878 1 a12879 1 RUBY_SRCDIR d12882 1 a12883 1 RUBY_SUFFIX d12886 1 a12887 1 RUBY_USE_PTHREAD d12890 1 a12891 1 RUBY_VENDORLIB d12894 1 a12895 1 RUBY_VER d12898 1 a12899 1 RUBY_VERSIONS_ACCEPTED d12902 1 a12903 1 RUBY_VERSION_DEFAULT d12906 1 a12907 1 RUBY_VER_DIR d12910 1 a12911 1 RUN_LDCONFIG d12914 1 a12915 1 SCO d12918 1 a12919 1 SCREWS_USER d12922 1 a12923 1 SCROLLKEEPER_DATADIR d12926 1 a12927 1 SCROLLKEEPER_UPDATEDB d12930 1 a12931 1 SERIAL_DEVICES d12934 1 a12935 1 SETGID_GAMES_PERMS d12938 1 a12939 1 SH d12942 1 a12943 1 SHORTNAME a13029 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION a13105 1 TTF_FONTDIR d13107 1 a13109 1 TYPE d13111 1 a13113 1 UCSPI_SSL_GROUP d13115 1 a13117 1 UNLIMIT_RESOURCES d13119 1 a13121 1 UNPRIVILEGED_GROUP d13123 1 a13125 1 UNPRIVILEGED_USER d13127 1 a13129 1 UNWRAP_PATTERNS d13131 1 a13133 1 UPDATE_TARGET d13135 1 a13137 1 USERGROUP_PHASE d13139 1 a13141 1 USER_SPECIFIC_PKGS d13143 1 a13145 1 USE_APR d13147 1 a13149 1 USE_BUILTIN d13151 1 a13153 1 USE_CURSES d13155 1 a13157 1 USE_DB185 d13159 1 a13161 1 USE_GAMESGROUP d13163 1 a13165 1 USE_IMAKE d13167 1 a13169 1 USE_JAVA2 d13171 1 a13173 1 USE_LIBTOOL d13175 1 a13177 1 USE_NETBSD_REPO d13179 1 a13181 1 USE_PKGSRC_GCC_RUNTIME d13183 1 a13185 1 USE_PKG_ADMIN_DIGEST d13187 1 a13189 1 USE_RUBY_INSTALL d13191 1 a13193 1 USE_RUBY_SETUP_PKG d13195 1 a13197 1 UUCP_GROUP d13199 1 a13201 1 VARBASE d13203 1 a13205 1 VIM_EXTRA_OPTS d13207 1 a13209 1 WCALC_CGIDIR d13211 1 a13213 1 WCALC_HTMLDIR d13215 1 a13217 1 WDM_MANAGERS d13219 1 a13221 1 WRAPPER_REORDER_CMDS d13223 1 a13225 1 WRKDIR_BASENAME d13227 1 a13229 1 WRKLOG d13231 1 a13233 1 WRKSRC d13235 1 a13237 1 X11 d13239 1 a13241 1 X11_PKGSRCDIR d13243 1 a13245 1 X509_CERTIFICATE d13247 1 a13249 1 XAW_TYPE d13251 1 a13253 1 XMKMF a13254 2 a13255 1 XXXX a13397 1 cvs d13399 1 a13401 1 declaration d13403 1 a13405 1 defined d13407 1 a13409 1 dependencies d13411 1 a13413 1 depends-checksum d13415 1 a13417 1 deps d13419 1 a13421 1 destdir d13423 1 a13425 1 distclean d13427 1 a13429 1 dl d13431 1 a13433 1 do-build d13435 1 a13437 1 do-clean d13439 1 a13441 1 do-configure-post-hook a13442 2 a13443 1 do-install d13459 1 a13459 1 endif a13461 1 enomem d13463 1 a13465 1 errx d13467 1 a13469 1 exp d13471 1 a13473 1 fabs d13475 1 a13477 1 features d13479 1 a13481 1 fetch-list d13483 1 a13485 1 forbids d13487 1 a13489 1 format a13490 2 a13491 1 fossil a13525 1 git a13526 3 gitlab d13547 1 a13547 1 hg a13549 1 imake d13551 1 a13553 1 inet_aton d13555 1 a13557 1 interpreter d13559 1 a13561 1 ip4 d13563 1 a13565 1 ipv4 d13567 1 a13569 1 iso d13571 1 a13573 1 krb d13575 1 a13577 1 ksh d13579 1 a13581 1 latex d13583 1 a13585 1 libintl_gettext d13587 1 a13589 1 libnbcompat d13591 1 a13593 1 libtool d13595 1 a13597 1 license d13599 1 a13601 1 little-endian d13603 1 a13605 1 locking d13607 1 a13609 1 make a13610 2 a13611 1 mercurial a13813 1 subversion d13815 1 a13817 1 sunpro a13818 3 svn @ 1.308 log @doc/pkgsrc.*: regen @ text @d6725 1 a6725 1 adding the RCS ID the space should be ommited.

    d8464 1 a8464 1 hash bangs in files. Please use the appropriate one, prefering d11307 4 d11535 4 d12215 3 d12219 1 a12221 1 MYSQL_VERSION_DEFAULT d12223 1 a12225 1 NAGIOSDIR d12227 1 a12229 1 NAGIOS_USER d12231 1 a12233 1 NATIVE_APPEND_ELF d12235 1 a12237 1 NATIVE_MACHINE_PLATFORM d12239 1 a12241 1 NBPAX_PROGRAM_PREFIX d12243 1 a12245 1 NMH_EDITOR d12247 1 a12249 1 NMH_PAGER d12251 1 a12253 1 NOTE d12255 1 a12257 1 NOT_PAX_ASLR_SAFE d12259 1 a12261 1 NO_BUILD d12263 1 a12265 1 NO_CONFIGURE d12267 1 a12269 1 NS_PREFERRED d12271 1 a12273 1 NULLMAILER_USER d12275 1 a12277 1 OASIS_BUILD_ARGS d12279 1 a12281 1 OBJMACHINE d12283 1 a12285 1 OCAML_FINDLIB_REGISTER d12287 1 a12289 1 OCAML_SITELIBDIR d12291 1 a12293 1 OCAML_USE_DUNE d12295 1 a12297 1 OCAML_USE_JBUILDER d12299 1 a12301 1 OCAML_USE_OASIS_DYNRUN d12303 1 a12305 1 OCAML_USE_OPT_COMPILER d12307 1 a12309 1 OMF d12311 1 a12313 1 ONLY_FOR_PLATFORM d12315 1 a12317 1 OPENSSH_GROUP d12319 1 a12321 1 OPSYS d12323 1 a12325 1 OS d12327 1 a12329 1 OSX d12331 1 a12333 1 OS_HAVE_ALSA d12335 1 a12337 1 OS_VARIANT d12339 1 a12341 1 OTF_FONTS_DIR d12343 1 a12345 1 OVERRIDE_GEMSPEC d12347 1 a12349 1 OVERRIDE_ROCKSPEC d12351 1 a12353 1 OWN_DIRS_PERMS d12355 1 a12357 1 P4PORT d12359 1 a12361 1 P4USER d12363 1 a12365 1 PALMOS_DEFAULT_SDK d12367 1 a12369 1 PAM_DEFAULT d12371 1 a12373 1 PASSIVE_FETCH d12375 1 a12377 1 PATCHFILES d12379 1 a12381 1 PATCH_DEBUG d12383 1 a12385 1 PATCH_DIST_CAT d12387 1 a12389 1 PATCH_FUZZ_FACTOR d12391 1 a12393 1 PATH d12395 1 a12397 1 PEAR d12399 1 a12401 1 PEAR_CHANNEL_ALIAS d12403 1 a12405 1 PEAR_CMD d12407 1 a12409 1 PEAR_PACKAGE_XML d12411 1 a12413 1 PERL5_CONFIGURE d12415 1 a12417 1 PERL5_LDFLAGS d12419 1 a12421 1 PERL5_MODULE_TYPE d12423 1 a12425 1 PERL5_PACKLIST_DIR d12427 1 a12429 1 PERL5_SITEBASE d12431 1 a12433 1 PERL5_VENDORBASE d12435 1 a12437 1 PFVAR_H d12439 1 a12441 1 PGGROUP d12443 1 a12445 1 PGPKGSRCDIR d12447 1 d13191 1 a13191 1 TO d13194 1 a13195 1 TOOLS_ALWAYS_WRAP d13198 1 a13199 1 TOOLS_BROKEN d13202 1 a13203 1 TOOLS_CMDLINE_SED d13206 1 a13207 1 TOOLS_DIR d13210 1 a13211 1 TOOLS_GNU_MISSING d13214 1 a13215 1 TOOLS_NOOP d13218 1 a13219 1 TOOLS_SCRIPT d13222 1 a13223 1 TTF_FONTDIR d13226 1 a13227 1 TYPE d13230 1 a13231 1 UCSPI_SSL_GROUP d13234 1 a13235 1 UNLIMIT_RESOURCES d13238 1 a13239 1 UNPRIVILEGED_GROUP d13242 1 a13243 1 UNPRIVILEGED_USER d13246 1 a13247 1 UNWRAP_PATTERNS d13250 1 a13251 1 UPDATE_TARGET d13254 1 a13255 1 USERGROUP_PHASE d13258 1 a13259 1 USER_SPECIFIC_PKGS d13262 1 a13263 1 USE_APR d13266 1 a13267 1 USE_BUILTIN d13270 1 a13271 1 USE_CURSES d13274 1 a13275 1 USE_DB185 d13278 1 a13279 1 USE_GAMESGROUP d13282 1 a13283 1 USE_IMAKE d13286 1 a13287 1 USE_JAVA2 d13290 1 a13291 1 USE_LIBTOOL d13294 1 a13295 1 USE_NETBSD_REPO d13298 1 a13299 1 USE_PKGSRC_GCC_RUNTIME d13302 1 a13303 1 USE_PKG_ADMIN_DIGEST d13306 1 a13307 1 USE_RUBY_INSTALL d13310 1 a13311 1 USE_RUBY_SETUP_PKG d13314 1 a13315 1 UUCP_GROUP d13318 1 a13319 1 VARBASE d13322 1 a13323 1 VIM_EXTRA_OPTS d13326 1 a13327 1 WCALC_CGIDIR d13330 1 a13331 1 WCALC_HTMLDIR d13334 1 a13335 1 WDM_MANAGERS d13338 1 a13339 1 WRAPPER_REORDER_CMDS d13342 1 a13343 1 WRKDIR_BASENAME d13346 1 a13347 1 WRKLOG d13350 1 a13351 1 WRKSRC d13354 1 a13355 1 X11 d13358 1 a13359 1 X11_PKGSRCDIR d13362 1 a13363 1 X509_CERTIFICATE d13366 1 a13367 1 XAW_TYPE d13370 1 a13371 1 XMKMF d13374 1 a13375 1 XXX d13378 1 a13379 1 YES d13382 1 a13383 1 __stdc__ d13386 1 a13387 1 accept d13390 1 a13391 1 acquire-lock d13394 1 a13395 1 administrator d13398 1 a13399 1 alternatives d13402 1 a13403 1 asprintf d13406 1 a13407 1 autoconf d13410 1 a13411 1 autoreconf d13414 1 a13415 1 bash d13418 1 a13419 1 bin-install d13422 1 a13423 1 binpkg-list d13426 1 a13427 1 bootstrap-depends d13430 1 a13431 1 broken_on_platform d13434 1 a13435 1 bsd.prog.mk d13438 1 a13439 1 build-env d13442 1 a13443 1 buildlink-oss-soundcard-h d13446 1 a13447 1 c++ d13450 1 a13451 1 cce d13454 1 a13455 1 ceil d13458 1 a13459 1 changes-entry d13462 1 a13463 1 check d13466 1 a13467 1 check-files d13470 1 a13471 1 check-vulnerable d13474 1 a13475 1 checksum-phase d13478 1 a13479 1 clean-depends d13482 1 a13483 1 commit d13486 1 a13487 1 compact d13490 1 a13491 1 conf d13494 1 a13495 1 config.sub d13498 1 a13499 1 configure d13502 1 a13503 1 configure-help d13506 1 a13507 1 connect d13510 1 a13511 1 cputime d13514 1 a13515 1 csh d13518 1 a13519 1 cvs d13522 1 a13523 1 declaration d13526 1 a13527 1 defined d13530 1 a13531 1 dependencies d13534 1 a13535 1 depends-checksum d13538 1 a13539 1 deps d13542 1 a13543 1 destdir d13546 1 a13547 1 distclean d13550 1 a13551 1 dl d13554 1 a13555 1 do-build d13558 1 a13559 1 do-clean d13562 1 a13563 1 do-configure-post-hook d13566 1 a13567 1 do-fetch d13570 1 a13571 1 emul d13574 1 a13575 1 emul-fetch d13578 1 a13579 1 emulator d13582 1 a13583 1 endian d13586 1 a13587 1 enomem d13590 1 a13591 1 errx d13594 1 a13595 1 exp d13598 1 a13599 1 fabs d13602 1 a13603 1 features d13606 1 a13607 1 fetch-list d13610 1 a13611 1 forbids d13614 1 a13615 1 format d13618 1 a13619 1 fortify_source d13622 1 a13623 1 friend d13626 1 a13627 1 fts_close d13630 1 a13631 1 fts_read d13634 1 a13635 1 gcc d13638 1 a13639 1 gethostbyname d13642 1 a13643 1 getopt_long d13646 1 a13647 1 getservbyname d13650 1 a13651 1 getservent d13654 1 a13655 1 git d13658 1 a13659 1 gitlab d13662 1 a13663 1 gnu d13666 1 a13667 1 go d13670 1 a13671 1 golang d13674 1 a13675 1 hashbang d13678 1 a13679 1 help d13682 1 a13683 1 imake d13686 1 a13687 1 inet_aton d13690 1 a13691 1 interpreter d13694 1 a13695 1 ip4 d13698 1 a13699 1 ipv4 d13702 1 a13703 1 iso d13706 1 a13707 1 krb d13710 1 a13711 1 ksh d13714 1 a13715 1 latex d13718 1 a13719 1 libintl_gettext d13722 1 a13723 1 libnbcompat d13726 1 a13727 1 libtool d13730 1 a13731 1 license d13734 1 a13735 1 little-endian d13738 1 a13739 1 locking d13742 1 a13743 1 make d13746 1 a13747 1 memory d13750 1 a13751 1 meta d13754 1 a13755 1 meta_package d13758 1 a13759 1 mk.conf d13762 1 a13763 1 mount d13766 1 a13767 1 mremap d13770 1 a13771 1 nbcompat d13774 1 a13775 1 obstack_ptr_grow d13778 1 a13779 1 only d13782 1 a13783 1 options d13786 1 a13787 1 order d13790 1 a13791 1 override-intltool d13794 1 a13795 1 package d13798 1 a13799 1 path d13802 1 a13803 1 paxctl d13806 1 a13807 1 pc d13810 1 a13811 1 perl5 d13814 1 a13815 1 php d13818 1 a13819 1 pkg-config d13822 1 a13823 1 platform d13826 1 a13827 1 post-extract d13830 1 a13831 1 post-wrapper d13834 1 a13835 1 pre-configure d13838 1 a13839 1 pre-extract d13842 1 a13843 1 print-go-deps d13846 1 a13847 1 print-summary-data d13850 1 a13851 1 pypi d13854 1 a13855 1 readme-all d13858 1 a13859 1 recvfrom d13862 1 a13863 1 release-localbase-lock d13866 1 a13867 1 relro d13870 1 a13871 1 reorder d13874 1 a13875 1 replace_interpreter d13878 1 a13879 1 resolv d13882 1 a13883 1 ruby d13886 1 a13887 1 sendfile d13890 1 a13891 1 setenv d13894 1 a13895 1 setprogname d13898 1 a13899 1 sh d13902 1 a13903 1 show d13906 1 a13907 1 show-build-defs d13910 1 a13911 1 show-deps d13914 1 a13915 1 show-downlevel d13918 1 a13919 1 show-tools d13922 1 a13923 1 show-vars d13926 1 a13927 1 socket d13930 1 a13931 1 st_mode d13934 1 a13935 1 strcasestr d13938 1 a13939 1 strip d13942 1 a13943 1 strnlen d13946 1 a13947 1 subst d13950 1 a13951 1 subversion d13954 1 a13955 1 sunpro d13958 1 a13959 1 svn d13962 1 a13963 1 test d13966 1 a13967 1 tex d13970 1 a13971 1 tmp d13974 1 a13975 1 tools d13978 1 a13979 1 type d13982 1 a13983 1 undefined d13986 1 a13987 1 unlimit d13990 1 a13991 1 unprivileged-install-hook d13994 1 a13995 1 update d13998 1 a13999 1 upload-distfiles d14002 1 a14003 1 user d14006 1 a14007 1 vasprintf d14010 1 a14011 1 vsnprintf d14014 1 a14015 1 warning d14018 1 a14019 1 warnx d14022 1 a14023 1 wattr_on d14026 1 a14027 1 wrapper d14030 1 a14031 1   @ 1.307 log @doc/pkgsrc.*: regen @ text @d1006 1 a1006 1 2020Q2.

    d1032 2 a1033 2

    The tar file for the stable branch 2020Q2 is in the directory pkgsrc-2020Q2 and is also called pkgsrc.tar.gz.

    d1036 1 a1036 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2020Q2/pkgsrc.tar.gz
    d1051 1 a1051 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2020Q2 -P pkgsrc
    d1136 1
    a1136 1
    	-rpkgsrc-2020Q2 option.

    a12945 1 RUBY_RAILS51_VERSION d12947 1 a12949 1 RUBY_RAILS60_VERSION d12951 1 a12953 1 RUBY_RAILS_DEFAULT d12955 1 a12957 1 RUBY_RAILS_STRICT_DEP d12959 1 a12961 1 RUBY_SETUP d12963 1 a12965 1 RUBY_SHLIBALIAS d12967 1 a12969 1 RUBY_SIMPLE_INSTALL d12971 1 a12973 1 RUBY_SITELIB d12975 1 a12977 1 RUBY_SITERIDIR d12979 1 a12981 1 RUBY_SRCDIR d12983 1 a12985 1 RUBY_SUFFIX d12987 1 a12989 1 RUBY_USE_PTHREAD d12991 1 a12993 1 RUBY_VENDORLIB d12995 1 a12997 1 RUBY_VER d12999 1 a13001 1 RUBY_VERSIONS_ACCEPTED d13003 1 a13005 1 RUBY_VERSION_DEFAULT d13007 1 a13009 1 RUBY_VER_DIR d13011 1 a13013 1 RUN_LDCONFIG d13015 1 a13017 1 SCO d13019 1 a13021 1 SCREWS_USER d13023 1 a13025 1 SCROLLKEEPER_DATADIR d13027 1 a13029 1 SCROLLKEEPER_UPDATEDB d13031 1 a13033 1 SERIAL_DEVICES d13035 1 a13037 1 SETGID_GAMES_PERMS d13039 1 a13041 1 SH d13043 1 a13045 1 SHORTNAME d13047 1 a13049 1 SILC_CLIENT_WITH_PERL d13051 1 a13053 1 SKIP_DEPENDS d13055 1 a13057 1 SMF_MANIFEST d13059 1 a13061 1 SMF_METHOD_SHELL d13063 1 a13065 1 SMF_NAME d13067 1 a13069 1 SMF_SRCDIR d13071 1 a13073 1 SNIPROXY_USER d13075 1 a13077 1 SPECIAL_PERMS d13079 1 a13081 1 SSH_SUID d13083 1 a13085 1 SSYNC_PAWD d13087 1 a13089 1 STRIP d13091 1 a13093 1 STRIP_DEBUG d13095 1 a13097 1 STRIP_FILES_SKIP d13099 1 a13101 1 SUBDIR d13103 1 a13105 1 SUBST_CLASSES d13107 1 a13109 1 SUBST_FILTER_CMD d13111 1 a13113 1 SUBST_NOOP_OK d13115 1 a13117 1 SUBST_SHOW_DIFF d13119 1 a13121 1 SUBST_STAGE d13123 1 a13125 1 SUNWSPROBASE d13127 1 a13129 1 SU_CMD d13131 1 a13133 1 SVN_REPO d13135 1 a13137 1 SVN_REVISION d13139 1 a13141 1 TERMCAP_TYPE d13143 1 a13145 1 TERMINFO_TYPE d13147 1 a13149 1 TEST_DEPENDS d13151 1 a13153 1 TEST_ENV d13155 1 a13157 1 TEST_MAKE_CMD d13159 1 a13161 1 TEST_TARGET d13163 1 a13165 1 TEXLIVE_REV d13167 1 a13169 1 TEXMFSITE d13171 1 a13173 1 TEX_HYPHEN_DAT d13175 1 a13177 1 TEX_TEXMF_DIRS d13179 1 a13181 1 TO d13183 1 a13185 1 TOOLS_ALWAYS_WRAP d13187 1 a13189 1 TOOLS_BROKEN d13191 1 a13193 1 TOOLS_CMDLINE_SED d13195 1 a13197 1 TOOLS_DIR d13199 1 a13201 1 TOOLS_GNU_MISSING d13203 1 a13205 1 TOOLS_NOOP d13207 1 a13209 1 TOOLS_SCRIPT d13211 1 a13213 1 TTF_FONTDIR d13215 1 a13217 1 TYPE d13219 1 a13221 1 UCSPI_SSL_GROUP d13223 1 a13225 1 UNLIMIT_RESOURCES d13227 1 a13229 1 UNPRIVILEGED_GROUP d13231 1 a13233 1 UNPRIVILEGED_USER d13235 1 a13237 1 UNWRAP_PATTERNS d13239 1 a13241 1 UPDATE_TARGET d13243 1 a13245 1 USERGROUP_PHASE d13247 1 a13249 1 USER_SPECIFIC_PKGS d13251 1 a13253 1 USE_APR d13255 1 a13257 1 USE_BUILTIN d13259 1 a13261 1 USE_CURSES d13263 1 a13265 1 USE_DB185 d13267 1 a13269 1 USE_GAMESGROUP d13271 1 a13273 1 USE_IMAKE d13275 1 a13277 1 USE_JAVA2 d13279 1 a13281 1 USE_LIBTOOL d13283 1 a13285 1 USE_NETBSD_REPO d13287 1 a13289 1 USE_PKGSRC_GCC_RUNTIME d13291 1 a13293 1 USE_PKG_ADMIN_DIGEST d13295 1 a13297 1 USE_RUBY_INSTALL d13299 1 a13301 1 USE_RUBY_SETUP_PKG d13303 1 a13305 1 UUCP_GROUP d13307 1 a13309 1 VARBASE d13311 1 a13313 1 VIM_EXTRA_OPTS d13315 1 a13317 1 WCALC_CGIDIR d13319 1 a13321 1 WCALC_HTMLDIR d13323 1 a13325 1 WDM_MANAGERS d13327 1 a13329 1 WRAPPER_REORDER_CMDS d13331 1 a13333 1 WRKDIR_BASENAME d13335 1 a13337 1 WRKLOG d13339 1 a13341 1 WRKSRC d13343 1 a13345 1 X11 d13347 1 a13349 1 X11_PKGSRCDIR d13351 1 a13353 1 X509_CERTIFICATE d13355 1 a13357 1 XAW_TYPE d13359 1 a13361 1 XMKMF d13363 1 a13365 1 XXX d13367 1 a13369 1 YES d13371 1 a13373 1 __stdc__ d13375 1 a13377 1 accept d13379 1 a13381 1 acquire-lock d13383 1 a13385 1 administrator d13387 1 a13389 1 alternatives d13391 1 a13393 1 asprintf d13395 1 a13397 1 autoconf d13399 1 a13401 1 autoreconf d13403 1 a13405 1 bash d13407 1 a13409 1 bin-install d13411 1 a13413 1 binpkg-list d13415 1 a13417 1 bootstrap-depends d13419 1 a13421 1 broken_on_platform d13423 1 a13425 1 bsd.prog.mk d13427 1 a13429 1 build-env d13431 1 a13433 1 buildlink-oss-soundcard-h d13435 1 a13437 1 c++ d13439 1 a13441 1 cce d13443 1 a13445 1 ceil d13447 1 a13449 1 changes-entry d13451 1 a13453 1 check d13455 1 a13457 1 check-files d13459 1 a13461 1 check-vulnerable d13463 1 a13465 1 checksum-phase d13467 1 a13469 1 clean-depends d13471 1 a13473 1 commit d13475 1 a13477 1 compact d13479 1 a13481 1 conf d13483 1 a13485 1 config.sub d13487 1 a13489 1 configure d13491 1 a13493 1 configure-help d13495 1 a13497 1 connect d13499 1 a13501 1 cputime d13503 1 a13505 1 csh d13507 1 a13509 1 cvs d13511 1 a13513 1 declaration d13515 1 a13517 1 defined d13519 1 a13521 1 dependencies d13523 1 a13525 1 depends-checksum d13527 1 a13529 1 deps d13531 1 a13533 1 destdir d13535 1 a13537 1 distclean d13539 1 a13541 1 dl d13543 1 a13545 1 do-build d13547 1 a13549 1 do-clean d13551 1 a13553 1 do-configure-post-hook d13555 1 a13557 1 do-fetch d13559 1 a13561 1 emul d13563 1 a13565 1 emul-fetch d13567 1 a13569 1 emulator d13571 1 a13573 1 endian d13575 1 a13577 1 enomem d13579 1 a13581 1 errx d13583 1 a13585 1 exp d13587 1 a13589 1 fabs d13591 1 a13593 1 features d13595 1 a13597 1 fetch-list d13599 1 a13601 1 forbids d13603 1 a13605 1 format d13607 1 a13609 1 fortify_source d13611 1 a13613 1 friend d13615 1 a13617 1 fts_close d13619 1 a13621 1 fts_read d13623 1 a13625 1 gcc d13627 1 a13629 1 gethostbyname d13631 1 a13633 1 getopt_long d13635 1 a13637 1 getservbyname d13639 1 a13641 1 getservent d13643 1 a13645 1 git d13647 1 a13649 1 gitlab d13651 1 a13653 1 gnu d13655 1 a13657 1 go d13659 1 a13661 1 golang d13663 1 a13665 1 hashbang d13667 1 a13669 1 help d13671 1 a13673 1 imake d13675 1 a13677 1 inet_aton d13679 1 a13681 1 interpreter d13683 1 a13685 1 ip4 d13687 1 a13689 1 ipv4 d13691 1 a13693 1 iso d13695 1 a13697 1 krb d13699 1 a13701 1 ksh d13703 1 a13705 1 latex d13707 1 a13709 1 libintl_gettext d13711 1 a13713 1 libnbcompat d13715 1 a13717 1 libtool d13719 1 a13721 1 license d13723 1 a13725 1 little-endian d13727 1 a13729 1 locking d13731 1 a13733 1 make d13735 1 a13737 1 memory d13739 1 a13741 1 meta d13743 1 a13745 1 meta_package d13747 1 a13749 1 mk.conf d13751 1 a13753 1 mount d13755 1 a13757 1 mremap d13759 1 a13761 1 nbcompat d13763 1 a13765 1 obstack_ptr_grow d13767 1 a13769 1 only d13771 1 a13773 1 options d13775 1 a13777 1 order d13779 1 a13781 1 override-intltool d13783 1 a13785 1 package d13787 1 a13789 1 path d13791 1 a13793 1 paxctl d13795 1 a13797 1 pc d13799 1 a13801 1 perl5 d13803 1 a13805 1 php d13807 1 a13809 1 pkg-config d13811 1 a13813 1 platform d13815 1 a13817 1 post-extract d13819 1 a13821 1 post-wrapper d13823 1 a13825 1 pre-configure d13827 1 a13829 1 pre-extract d13831 1 a13833 1 print-go-deps d13835 1 a13837 1 print-summary-data d13839 1 a13841 1 pypi d13843 1 a13845 1 readme-all d13847 1 a13849 1 recvfrom d13851 1 a13853 1 release-localbase-lock d13855 1 a13857 1 relro d13859 1 a13861 1 reorder d13863 1 a13865 1 replace_interpreter d13867 1 a13869 1 resolv d13871 1 a13873 1 ruby d13875 1 a13877 1 sendfile d13879 1 a13881 1 setenv d13883 1 a13885 1 setprogname d13887 1 a13889 1 sh d13891 1 a13893 1 show d13895 1 a13897 1 show-build-defs d13899 1 a13901 1 show-deps d13903 1 a13905 1 show-downlevel d13907 1 a13909 1 show-tools d13911 1 a13913 1 show-vars d13915 1 a13917 1 socket d13919 1 a13921 1 st_mode d13923 1 a13925 1 strcasestr d13927 1 a13929 1 strip d13931 1 a13933 1 strnlen d13935 1 a13937 1 subst d13939 1 a13941 1 subversion d13943 1 a13945 1 sunpro d13947 1 a13949 1 svn d13951 1 a13953 1 test d13955 1 a13957 1 tex d13959 1 a13961 1 tmp d13963 1 a13965 1 tools d13967 1 a13969 1 type d13971 1 a13973 1 undefined d13975 1 a13977 1 unlimit d13979 1 a13981 1 unprivileged-install-hook d13983 1 a13985 1 update d13987 1 a13989 1 upload-distfiles d13991 1 a13993 1 user d13995 1 a13997 1 vasprintf d13999 1 a14001 1 vsnprintf d14003 1 a14005 1 warning d14007 1 a14009 1 warnx d14011 1 a14013 1 wattr_on d14015 1 a14017 1 wrapper d14019 1 @ 1.306 log @doc/pkgsrc.*: regen @ text @d1386 1 a1386 1 to the root users crontab(5) entry. For example the entry d1415 1 a1415 1 see daily.conf(5) and security.conf(5) for more details. d1606 1 a1606 1

    If you invoke the make(1) command with d1614 1 a1614 1

    If you want to know the value of a certain make(1) d1617 1 a1617 1 target. e.g. to show the expansion of the make(1) d1630 1 a1630 1 install a binary package - if available - via pkg_add(1), d1634 1 a1634 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1673 1 a1673 1 make(1) from the base system, it is in the directory d1815 1 a1815 1 privileges using su(1) d2055 1 a2055 1 another system with pkg_add(1). This saves having to build d2906 1 a2906 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2958 1 a2958 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3032 1 a3032 1 scripts and to make(1). Some package authors ignore the d3483 1 a3483 1 an argument to patch(1) that sets the pathname strip count to d3493 1 a3493 1 this package which have been reported with send-pr(1). d3846 1 a3846 1

    This shell script is invoked twice by pkg_add(1). d3851 2 a3852 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 20.1, “Files and directories outside the installation prefix”. d3872 2 a3873 2 See pkg_delete(1) and pkg_create(1) for more information. d4082 1 a4082 1 install files according to hier(7), with the exception that d4400 1 a4400 1 patch(1) can be handed in d4402 1 a4402 1

    By default patch(1) is given special arguments to make it d4581 1 a4581 1 install(1) command that have the owner, group and d4627 1 a4627 1

    If set to yes, do not run strip(1) d4715 1 a4715 1

    This target does a pkg_delete(1) in the d4721 1 a4721 1

    Add a "-v" to the pkg_delete(1) command.

    d4730 1 a4730 1 -R to the pkg_delete(1) d4882 1 a4882 1

    This target invokes pkg_info(1) for the current d4998 1 a4998 1

    If the package installs files via tar(1) or d5518 1 a5518 1 the make(1) system as a programming language for a big system d5524 1 a5524 1 like awk(1) programs. To make sure that every shell command runs d5538 1 a5538 1 make(1) for the second time, the file exists and will not be d5556 1 a5556 1

    You might remember that make(1) sometimes removes d5560 1 a5560 1 when one of the commands fails (like false(1) above).

    d5569 1 a5569 1 !=, which are described in the make(1) man d5587 1 a5587 1 interpreted as delimiters, just like in sh(1).

    d5644 1 a5644 1

    Example 3 can handle arbitrary strings, since printf(1) only d5648 1 a5648 1 skipped by the shell. For printf(1) this doesn't make a difference, d5692 1 a5692 1 ${EGFILES} is replaced with an empty string by make(1). d5836 1 a5836 1 make(1) variable that the user can set to override the default d6598 1 a6598 1 - see the pkg_create(1) man page for a full list. d6747 1 a6747 1 The files are later concatenated using cat(1), and the order of things is d7312 1 a7312 1 make(1) (for example .if or d7568 1 a7568 1 pkg_info(1).

    d7680 1 a7680 1

    pkg_add(1) is able to detect attempts to install packages d7691 1 a7691 1 exported in pkg_summary(5) files and consumed by binary package d7742 1 a7742 1 not be deleted using pkg_delete(1) unless the d7997 1 a7997 1 sed(1) commands, like this:

    d8269 1 a8269 1 files, i.e. files that are loaded via dlopen(3), NOT d8279 1 a8279 1 the cc(1) or ld(1) line with ${LIBTOOL} d8296 2 a8297 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8305 1 a8305 1 ldconfig(8).

    d9707 1 a9707 1 document. Next, generate an uuencoded gzipped tar(1) d9710 1 a9710 1 either with the send-pr(1) command, or if you don't have d9913 1 a9913 1 search the pkg_summary(5) database for PREV_PKGPATH d10003 1 a10003 1 to the pkgsrc-internal invocations of make(1), while d10019 1 a10019 1 make(1) program that is used in the pkgsrc d10088 1 a10088 1 which is documented in the make(1) man page and which is d10117 1 a10117 1 send-pr(1) appear here. Please do not report your bugs here d10736 1 a10736 1 improvements. Why you would want this when Berkeley yacc(1) is part @ 1.305 log @doc/pkgsrc.*: regen @ text @d12803 1 a12803 1 REPLACE_AWK d12806 1 a12807 1 REPLACE_CSH d12810 1 a12811 1 REPLACE_PERL d12814 1 a12815 1 REPLACE_PHP d12818 1 a12819 1 REPLACE_RUBY d12822 1 a12823 1 REPLACE_RUBY_PAT d12826 1 a12827 1 REPLACE_TEXLUA d12830 1 a12831 1 REQD_DIRS_PERMS d12834 1 a12835 1 REQD_FILES_MODE d12838 1 a12839 1 RESOLV_AUTO_VARS d12842 1 a12843 1 RESOLV_LIBS d12846 1 a12847 1 ROCKSPEC_NAME d12850 1 a12851 1 ROOT_CMD d12854 1 a12855 1 ROOT_USER d12858 1 a12859 1 RPM d12862 1 a12863 1 RPM2PKG_PREFIX d12866 1 a12867 1 RPM2PKG_STRIP d12870 1 a12871 1 RPMFILES d12874 1 a12875 1 RPM_DB_PREFIX d12878 1 a12879 1 RSSH_RDIST_PATH d12882 1 a12883 1 RSSH_SCP_PATH d12886 1 a12887 1 RUBY d12890 1 a12891 1 RUBYGEM_NAME d12894 1 a12895 1 RUBY_ABI_VERSION d12898 1 a12899 1 RUBY_ARCHINC d12902 1 a12903 1 RUBY_BASE d12906 1 a12907 1 RUBY_BUILD_DOCUMENT d12910 1 a12911 1 RUBY_DOC d12914 1 a12915 1 RUBY_EG d12918 1 a12919 1 RUBY_EXTCONF d12922 1 a12923 1 RUBY_EXTCONF_DEBUG d12926 1 a12927 1 RUBY_GEM_BASE d12930 1 a12931 1 RUBY_LIB d12934 1 a12935 1 RUBY_NAME d12938 1 a12939 1 RUBY_PKGPREFIX d12942 1 a12943 1 RUBY_RAILS51_VERSION d12946 1 a12947 1 RUBY_RAILS60_VERSION d12950 1 a12951 1 RUBY_RAILS_DEFAULT d12954 1 a12955 1 RUBY_RAILS_STRICT_DEP d12958 1 a12959 1 RUBY_SETUP d12962 1 a12963 1 RUBY_SHLIBALIAS d12966 1 a12967 1 RUBY_SIMPLE_INSTALL d12970 1 a12971 1 RUBY_SITELIB d12974 1 a12975 1 RUBY_SITERIDIR d12978 1 a12979 1 RUBY_SRCDIR d12982 1 a12983 1 RUBY_SUFFIX d12986 1 a12987 1 RUBY_USE_PTHREAD d12990 1 a12991 1 RUBY_VENDORLIB d12994 1 a12995 1 RUBY_VER d12998 1 a12999 1 RUBY_VERSIONS_ACCEPTED d13002 1 a13003 1 RUBY_VERSION_DEFAULT d13006 1 a13007 1 RUBY_VER_DIR d13010 1 a13011 1 RUN_LDCONFIG d13014 1 a13015 1 SCO d13018 1 a13019 1 SCREWS_USER d13022 1 a13023 1 SCROLLKEEPER_DATADIR d13026 1 a13027 1 SCROLLKEEPER_UPDATEDB d13030 1 a13031 1 SERIAL_DEVICES d13034 1 a13035 1 SETGID_GAMES_PERMS d13038 1 a13039 1 SH d13042 1 a13043 1 SHORTNAME d13046 1 a13047 1 SILC_CLIENT_WITH_PERL d13050 1 a13051 1 SKIP_DEPENDS d13054 1 a13055 1 SMF_MANIFEST d13058 1 a13059 1 SMF_METHOD_SHELL d13062 1 a13063 1 SMF_NAME d13066 1 a13067 1 SMF_SRCDIR d13070 1 a13071 1 SNIPROXY_USER d13074 1 a13075 1 SPECIAL_PERMS d13078 1 a13079 1 SSH_SUID d13082 1 a13083 1 SSYNC_PAWD d13086 1 a13087 1 STRIP d13090 1 a13091 1 STRIP_DEBUG d13094 1 a13095 1 STRIP_FILES_SKIP d13098 1 a13099 1 SUBDIR d13102 1 a13103 1 SUBST_CLASSES d13106 1 a13107 1 SUBST_FILTER_CMD d13110 1 a13111 1 SUBST_NOOP_OK d13114 1 a13115 1 SUBST_SHOW_DIFF d13118 1 a13119 1 SUBST_STAGE d13122 1 a13123 1 SUNWSPROBASE d13126 1 a13127 1 SU_CMD d13130 1 a13131 1 SVN_REPO d13134 1 a13135 1 SVN_REVISION d13138 1 a13139 1 TERMCAP_TYPE d13142 1 a13143 1 TERMINFO_TYPE d13146 1 a13147 1 TEST_DEPENDS d13150 1 a13151 1 TEST_ENV d13154 1 a13155 1 TEST_MAKE_CMD d13158 1 a13159 1 TEST_TARGET d13162 1 a13163 1 TEXLIVE_REV d13166 1 a13167 1 TEXMFSITE d13170 1 a13171 1 TEX_HYPHEN_DAT d13174 1 a13175 1 TEX_TEXMF_DIRS d13178 1 a13179 1 TO d13182 1 a13183 1 TOOLS_ALWAYS_WRAP d13186 1 a13187 1 TOOLS_BROKEN d13190 1 a13191 1 TOOLS_CMDLINE_SED d13194 1 a13195 1 TOOLS_DIR d13198 1 a13199 1 TOOLS_GNU_MISSING d13202 1 a13203 1 TOOLS_NOOP d13206 1 a13207 1 TOOLS_SCRIPT d13210 1 a13211 1 TTF_FONTDIR d13214 1 a13215 1 TYPE d13218 1 a13219 1 UCSPI_SSL_GROUP d13222 1 a13223 1 UNLIMIT_RESOURCES d13226 1 a13227 1 UNPRIVILEGED_GROUP d13230 1 a13231 1 UNPRIVILEGED_USER d13234 1 a13235 1 UNWRAP_PATTERNS d13238 1 a13239 1 UPDATE_TARGET d13242 1 a13243 1 USERGROUP_PHASE d13246 1 a13247 1 USER_SPECIFIC_PKGS d13250 1 a13251 1 USE_APR d13254 1 a13255 1 USE_BUILTIN d13258 1 a13259 1 USE_CURSES d13262 1 a13263 1 USE_DB185 d13266 1 a13267 1 USE_GAMESGROUP d13270 1 a13271 1 USE_IMAKE d13274 1 a13275 1 USE_JAVA2 d13278 1 a13279 1 USE_LIBTOOL d13282 1 a13283 1 USE_NETBSD_REPO d13286 1 a13287 1 USE_PKGSRC_GCC_RUNTIME d13290 1 a13291 1 USE_PKG_ADMIN_DIGEST d13294 1 a13295 1 USE_RUBY_INSTALL d13298 1 a13299 1 USE_RUBY_SETUP_PKG d13302 1 a13303 1 UUCP_GROUP d13306 1 a13307 1 VARBASE d13310 1 a13311 1 VIM_EXTRA_OPTS d13314 1 a13315 1 WCALC_CGIDIR d13318 1 a13319 1 WCALC_HTMLDIR d13322 1 a13323 1 WDM_MANAGERS d13326 1 a13327 1 WRAPPER_REORDER_CMDS d13330 1 a13331 1 WRKDIR_BASENAME d13334 1 a13335 1 WRKLOG d13338 1 a13339 1 WRKSRC d13342 1 a13343 1 X11 d13346 1 a13347 1 X11_PKGSRCDIR d13350 1 a13351 1 X509_CERTIFICATE d13354 1 a13355 1 XAW_TYPE d13358 1 a13359 1 XMKMF d13362 1 a13363 1 XXX d13366 1 a13367 1 YES d13370 1 a13371 1 __stdc__ d13374 1 a13375 1 accept d13378 1 a13379 1 acquire-lock d13382 1 a13383 1 administrator d13386 1 a13387 1 alternatives d13390 1 a13391 1 asprintf d13394 1 a13395 1 autoconf d13398 1 a13399 1 autoreconf d13402 1 a13403 1 bash d13406 1 a13407 1 bin-install d13410 1 a13411 1 binpkg-list d13414 1 a13415 1 bootstrap-depends d13418 1 a13419 1 broken_on_platform d13422 1 a13423 1 bsd.prog.mk d13426 1 a13427 1 build-env d13430 1 a13431 1 buildlink-oss-soundcard-h d13434 1 a13435 1 c++ d13438 1 a13439 1 cce d13442 1 a13443 1 ceil d13446 1 a13447 1 changes-entry d13450 1 a13451 1 check d13454 1 a13455 1 check-files d13458 1 a13459 1 check-vulnerable d13462 1 a13463 1 checksum-phase d13466 1 a13467 1 clean-depends d13470 1 a13471 1 commit d13474 1 a13475 1 compact d13478 1 a13479 1 conf d13482 1 a13483 1 config.sub d13486 1 a13487 1 configure d13490 1 a13491 1 configure-help d13494 1 a13495 1 connect d13498 1 a13499 1 cputime d13502 1 a13503 1 csh d13506 1 a13507 1 cvs d13510 1 a13511 1 declaration d13514 1 a13515 1 defined d13518 1 a13519 1 dependencies d13522 1 a13523 1 depends-checksum d13526 1 a13527 1 deps d13530 1 a13531 1 destdir d13534 1 a13535 1 distclean d13538 1 a13539 1 dl d13542 1 a13543 1 do-build d13546 1 a13547 1 do-clean d13550 1 a13551 1 do-configure-post-hook d13554 1 a13555 1 do-fetch d13558 1 a13559 1 emul d13562 1 a13563 1 emul-fetch d13566 1 a13567 1 emulator d13570 1 a13571 1 endian d13574 1 a13575 1 enomem d13578 1 a13579 1 errx d13582 1 a13583 1 exp d13586 1 a13587 1 fabs d13590 1 a13591 1 features d13594 1 a13595 1 fetch-list d13598 1 a13599 1 forbids d13602 1 a13603 1 format d13606 1 a13607 1 fortify_source d13610 1 a13611 1 friend d13614 1 a13615 1 fts_close d13618 1 a13619 1 fts_read d13622 1 a13623 1 gcc d13626 1 a13627 1 gethostbyname d13630 1 a13631 1 getopt_long d13634 1 a13635 1 getservbyname d13638 1 a13639 1 getservent d13642 1 a13643 1 git d13646 1 a13647 1 gitlab d13650 1 a13651 1 gnu d13654 1 a13655 1 go d13658 1 a13659 1 golang d13662 1 a13663 1 hashbang d13666 1 a13667 1 help d13670 1 a13671 1 imake d13674 1 a13675 1 inet_aton d13678 1 a13679 1 interpreter d13682 1 a13683 1 ip4 d13686 1 a13687 1 ipv4 d13690 1 a13691 1 iso d13694 1 a13695 1 krb d13698 1 a13699 1 ksh d13702 1 a13703 1 latex d13706 1 a13707 1 libintl_gettext d13710 1 a13711 1 libnbcompat d13714 1 a13715 1 libtool d13718 1 a13719 1 license d13722 1 a13723 1 little-endian d13726 1 a13727 1 locking d13730 1 a13731 1 make d13734 1 a13735 1 memory d13738 1 a13739 1 meta d13742 1 a13743 1 meta_package d13746 1 a13747 1 mk.conf d13750 1 a13751 1 mount d13754 1 a13755 1 mremap d13758 1 a13759 1 nbcompat d13762 1 a13763 1 obstack_ptr_grow d13766 1 a13767 1 only d13770 1 a13771 1 options d13774 1 a13775 1 order d13778 1 a13779 1 override-intltool d13782 1 a13783 1 package d13786 1 a13787 1 path d13790 1 a13791 1 paxctl d13794 1 a13795 1 pc d13798 1 a13799 1 perl5 d13802 1 a13803 1 php d13806 1 a13807 1 pkg-config d13810 1 a13811 1 platform d13814 1 a13815 1 post-extract d13818 1 a13819 1 post-wrapper d13822 1 a13823 1 pre-configure d13826 1 a13827 1 pre-extract d13830 1 a13831 1 print-go-deps d13834 1 a13835 1 print-summary-data d13838 1 a13839 1 pypi d13842 1 a13843 1 readme-all d13846 1 a13847 1 recvfrom d13850 1 a13851 1 release-localbase-lock d13854 1 a13855 1 relro d13858 1 a13859 1 reorder d13862 1 a13863 1 replace_interpreter d13866 1 a13867 1 resolv d13870 1 a13871 1 ruby d13874 1 a13875 1 sendfile d13878 1 a13879 1 setenv d13882 1 a13883 1 setprogname d13886 1 a13887 1 sh d13890 1 a13891 1 show d13894 1 a13895 1 show-build-defs d13898 1 a13899 1 show-deps d13902 1 a13903 1 show-downlevel d13906 1 a13907 1 show-tools d13910 1 a13911 1 show-vars d13914 1 a13915 1 socket d13918 1 a13919 1 st_mode d13922 1 a13923 1 strcasestr d13926 1 a13927 1 strip d13930 1 a13931 1 strnlen d13934 1 a13935 1 subst d13938 1 a13939 1 subversion d13942 1 a13943 1 sunpro d13946 1 a13947 1 svn d13950 1 a13951 1 test d13954 1 a13955 1 tex d13958 1 a13959 1 tmp d13962 1 a13963 1 tools d13966 1 a13967 1 type d13970 1 a13971 1 undefined d13974 1 a13975 1 unlimit d13978 1 a13979 1 unprivileged-install-hook d13982 1 a13983 1 update d13986 1 a13987 1 upload-distfiles d13990 1 a13991 1 user d13994 1 a13995 1 vasprintf d13998 1 a13999 1 vsnprintf d14002 1 a14003 1 warning d14006 1 a14007 1 warnx d14010 1 a14011 1 wattr_on d14014 1 a14015 1 wrapper d14018 1 a14019 1   @ 1.304 log @doc/pkgsrc.*: regen @ text @d617 1 a617 1 README.MacOSX d6540 11 a6550 3

    Setting PREFER_NATIVE should be performed straight after bootstrap and PREFER_PKGSRC during bootstrap. d6553 21 a6573 4 built with the opposite preference being installed alongside each other.

    # ./bootstrap --prefer-pkgsrc yes
    
    d11419 1 a11419 1 CMAKE_INSTALL_PREFIX d11422 1 a11423 1 CMAKE_PKGSRC_BUILD_FLAGS d11426 1 a11427 1 CMAKE_USE_GNU_INSTALL_DIRS d11430 1 a11431 1 COMMON_LISP_EXAMPLES d11434 1 a11435 1 COMMON_LISP_PACKAGES d11438 1 a11439 1 COMPILER_RPATH_FLAG d11442 1 a11443 1 CONFIGURE_ARGS d11446 1 a11447 1 CONFIGURE_ENV d11450 1 a11451 1 CONFIGURE_HAS_INFODIR d11454 1 a11455 1 CONFIGURE_SCRIPT d11458 1 a11459 1 CONFIG_SHELL_FLAGS d11462 1 a11463 1 CONF_FILES_MODE d11466 1 a11467 1 CONSERVER_DEFAULTHOST d11470 1 a11471 1 CP d11474 1 a11475 1 CPP_PRECOMP_FLAGS d11478 1 a11479 1 CROSSBASE d11482 1 a11483 1 CTF_FILES_SKIP d11486 1 a11487 1 CTYPE d11490 1 a11491 1 CUPS_SYSTEM_GROUPS d11494 1 a11495 1 CURSES_DEFAULT d11498 1 a11499 1 CVS_EXTRACTDIR d11502 1 a11503 1 CVS_PROJECT d11506 1 a11507 1 CVS_ROOT d11510 1 a11511 1 CVS_ROOT_NONGNU d11514 1 a11515 1 CVS_TAG d11518 1 a11519 1 CYRUS_GROUP d11522 1 a11523 1 CYRUS_USER d11526 1 a11527 1 DAEMONTOOLS_LOG_USER d11530 1 a11531 1 DBUS_USER d11534 1 a11535 1 DEFANG_USER d11538 1 a11539 1 DEFAULT_DISTFILES d11542 1 a11543 1 DEFAULT_SERIAL_DEVICE d11546 1 a11547 1 DEINSTALLDEPENDS d11550 1 a11551 1 DEINSTALL_TEMPLATES d11554 1 a11555 1 DELAYED_WARNING_MSG d11558 1 a11559 1 DEPENDS_TARGET d11562 1 a11563 1 DESTDIR d11566 1 a11567 1 DIALER_GROUP d11570 1 a11571 1 DISTDIR d11574 1 a11575 1 DISTINFO_FILE d11578 1 a11579 1 DIST_PATH d11582 1 a11583 1 DJBDNS_AXFR_USER d11586 1 a11587 1 DJBDNS_DJBDNS_GROUP d11590 1 a11591 1 DJBDNS_RBL_USER d11594 1 a11595 1 DLOPEN_REQUIRE_PTHREADS d11598 1 a11599 1 DL_CFLAGS d11602 1 a11603 1 DL_LIBS d11606 1 a11607 1 DOCOWN d11610 1 a11611 1 DT_LAYOUT d11614 1 a11615 1 DYNAMIC_SITES_SCRIPT d11618 1 a11619 1 ECHO_N d11622 1 a11623 1 EMACS_TYPE d11626 1 a11627 1 EMULSUBDIR d11630 1 a11631 1 EMUL_ARCH d11634 1 a11635 1 EMUL_EXEC_FMT d11638 1 a11639 1 EMUL_MODULES d11642 1 a11643 1 EMUL_PKG_FMT d11646 1 a11647 1 EMUL_PLATFORMS d11650 1 a11651 1 EMUL_REQD d11654 1 a11655 1 ERROR_MSG d11658 1 a11659 1 EXIM_USER d11662 1 a11663 1 EXTRACTOR d11666 1 a11667 1 EXTRACT_CMD_DEFAULT d11670 1 a11671 1 EXTRACT_ELEMENTS d11674 1 a11675 1 EXTRACT_ONLY d11678 1 a11679 1 EXTRACT_SUFX d11682 1 a11683 1 FAIL d11686 1 a11687 1 FAIL_MSG d11690 1 a11691 1 FAM d11694 1 a11695 1 FAM_DEFAULT d11698 1 a11699 1 FCPATH d11702 1 a11703 1 FEATURE_LDFLAGS d11706 1 a11707 1 FETCH_AFTER_ARGS d11710 1 a11711 1 FETCH_CMD d11714 1 a11715 1 FETCH_PROXY d11718 1 a11719 1 FETCH_TIMEOUT d11722 1 a11723 1 FETCH_USING d11726 1 a11727 1 FILES_SUBST_SED d11730 1 a11731 1 FLUXBOX_USE_GNOME d11734 1 a11735 1 FLUXBOX_USE_XFT d11738 1 a11739 1 FONTDIR d11742 1 a11743 1 FONTS_VERBOSE d11746 1 a11747 1 FOSSIL_EXTRACTDIR d11750 1 a11751 1 FOSSIL_REPOSITORIES d11754 1 a11755 1 FOX_USE_XUNICODE d11758 1 a11759 1 FREEWNN_USER d11762 1 a11763 1 FTP_PKG_URL_HOST d11766 1 a11767 1 GAMEDATA_PERMS d11770 1 a11771 1 GAMEDIR_PERMS d11774 1 a11775 1 GAMEMODE d11778 1 a11779 1 GAMES_GROUP d11782 1 a11783 1 GCC d11786 1 a11787 1 GCC_REQD d11790 1 a11791 1 GEM_BUILD d11794 1 a11795 1 GEM_CLEANBUILD_EXTENSIONS d11798 1 a11799 1 GEM_EXTSDIR d11802 1 a11803 1 GEM_KEEPBUILD d11806 1 a11807 1 GEM_NAME d11810 1 a11811 1 GEM_SPECFILE d11814 1 a11815 1 GHOSTSCRIPT_REQD d11818 1 a11819 1 GITHUB_RELEASE d11822 1 a11823 1 GITHUB_TYPE d11826 1 a11827 1 GITLAB_TAG d11830 1 a11831 1 GIT_BRANCH d11834 1 a11835 1 GIT_EXTRACTDIR d11838 1 a11839 1 GIT_REPOSITORIES d11842 1 a11843 1 GIT_TAG d11846 1 a11847 1 GNU_CONFIGURE d11850 1 a11851 1 GNU_CONFIGURE_MANDIR d11854 1 a11855 1 GNU_CONFIGURE_STRICT d11858 1 a11859 1 GO_BUILD_PATTERN d11862 1 a11863 1 GO_DIST_BASE d11866 1 a11867 1 GO_SRCPATH d11870 1 a11871 1 GROUP_SPECIFIC_PKGS d11874 1 a11875 1 GRUB_PRESET_COMMAND d11878 1 a11879 1 GZIP d11882 1 a11883 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11886 1 a11887 1 HASKELL_ENABLE_SHARED_LIBRARY d11890 1 a11891 1 HAS_CONFIGURE d11894 1 a11895 1 HG_REPO d11898 1 a11899 1 HG_TAG d11902 1 a11903 1 HOST_PKGTOOLS_ARGS d11906 1 a11907 1 HOWL_GROUP d11910 1 a11911 1 ICCBASE d11914 1 d11916 2 d11919 1 a11921 1 IDOBASE d11923 1 a11925 1 IGNORE_INFO_DIRS d11927 1 a11929 1 IMAKE d11931 1 a11933 1 IMAKE_MAKE d11935 1 a11937 1 IMAP_UW_CCLIENT_MBOX_FMT d11939 1 a11941 1 INCOMPAT_CURSES d11943 1 a11945 1 INFO_FILES d11947 1 a11949 1 INFO_MSG d11951 1 a11953 1 INN_DATA_DIR d11955 1 a11957 1 INN_USER d11959 1 a11961 1 INSTALLATION_DIRS_FROM_PLIST d11963 1 a11965 1 INSTALL_SH_OVERRIDE d11967 1 a11969 1 INSTALL_TEMPLATES d11971 1 a11973 1 IRCD_HYBRID_IRC_GROUP d11975 1 a11977 1 IRCD_HYBRID_MAXCONN d11979 1 a11981 1 IRCD_HYBRID_SYSLOG_EVENTS d11983 1 a11985 1 IRCD_HYBRID_TOPICLEN d11987 1 a11989 1 IRRD_USE_PGP d11991 1 a11993 1 JABBERD_LOGDIR d11995 1 a11997 1 JABBERD_SPOOLDIR d11999 1 a12001 1 JAKARTA_HOME d12003 1 a12005 1 JAVA_APP_TARGETS d12007 1 a12009 1 JAVA_CLASSPATH d12011 1 a12013 1 JAVA_LD_LIBRARY_PATH d12015 1 a12017 1 JAVA_UNLIMIT d12019 1 a12021 1 JPEG_ACCEPTED d12023 1 a12025 1 KERBEROS d12027 1 a12029 1 KJS_USE_PCRE d12031 1 a12033 1 KNEWS_DOMAIN_NAME d12035 1 a12037 1 KRB5_DEFAULT d12039 1 a12041 1 LAPACK_LIBS d12043 1 a12045 1 LDCONFIG_ADD_CMD d12047 1 a12049 1 LEAFNODE_DATA_DIR d12051 1 a12053 1 LEAFNODE_USER d12055 1 a12057 1 LIBDVDCSS_MASTER_SITES d12059 1 a12061 1 LIBTOOL d12063 1 a12065 1 LIBTOOL_M4_OVERRIDE d12067 1 a12069 1 LICENSE d12071 1 a12073 1 LINK_RPATH_FLAG d12075 1 a12077 1 LINUX_BASE_PREFERRED d12079 1 a12081 1 LINUX_LOCALES d12083 1 a12085 1 LOCALBASE_LOCKTYPE d12087 1 a12089 1 LOVE_DATA d12091 1 a12093 1 LOVE_VERSION d12095 1 a12097 1 MACHINE_PLATFORM d12099 1 a12101 1 MAILAGENT_EMAIL d12103 1 a12105 1 MAILAGENT_ORGANIZATION d12107 1 a12109 1 MAJOR_OS_VERSION d12111 1 a12113 1 MAKE_DIRS d12115 1 a12117 1 MAKE_ENV d12119 1 a12121 1 MAKE_FLAGS d12123 1 a12125 1 MAKE_JOBS_SAFE d12127 1 a12129 1 MANCOMPRESSED_IF_MANZ d12131 1 a12133 1 MANZ d12135 1 a12137 1 MASTER_SITE_BACKUP d12139 1 a12141 1 MASTER_SITE_MOZILLA d12143 1 a12145 1 MASTER_SITE_PERL_CPAN d12147 1 a12149 1 MASTER_SORT_RANDOM d12151 1 a12153 1 MECAB_CHARSET d12155 1 a12157 1 MEDIATOMB_USER d12159 1 a12161 1 MIREDO_GROUP d12163 1 a12165 1 MISSING_FEATURES d12167 1 a12169 1 MLDONKEY_GROUP d12171 1 a12173 1 MLDONKEY_USER d12175 1 a12177 1 MONOTONE_USER d12179 1 a12181 1 MOTIF_TYPE d12183 1 a12185 1 MPI_TYPE d12187 1 a12189 1 MSGFMT_STRIP_MSGID_PLURAL d12191 1 a12193 1 MUST d12195 1 a12197 1 MYSQL_CHARSET d12199 1 a12201 1 MYSQL_EXTRA_CHARSET d12203 1 a12205 1 MYSQL_PKGSRCDIR d12207 1 a12209 1 MYSQL_VERSIONS_ACCEPTED d12211 1 a12213 1 NAGIOSCMD_GROUP d12215 1 a12217 1 NAGIOS_GROUP d12219 1 a12221 1 NATIVE_APPEND_ABI d12223 1 a12225 1 NATIVE_EXEC_FMT d12227 1 a12229 1 NATIVE_OBJECT_FMT d12231 1 a12233 1 NETBSD_LOGIN_NAME d12235 1 a12237 1 NMH_MTA d12239 1 a12241 1 NOLOGIN d12243 1 a12245 1 NOT_FOR_PLATFORM d12247 1 a12249 1 NOT_PAX_MPROTECT_SAFE d12251 1 a12253 1 NO_CHECKSUM d12255 1 a12257 1 NO_SKIP d12259 1 a12261 1 NULLMAILER_GROUP d12263 1 a12265 1 OASIS d12267 1 a12269 1 OBJHOSTNAME d12271 1 a12273 1 OCAML_FINDLIB_DIRS d12275 1 a12277 1 OCAML_FINDLIB_REGISTER_VERBOSE d12279 1 a12281 1 OCAML_TOPKG_DOCDIR d12283 1 a12285 1 OCAML_USE_FINDLIB d12287 1 a12289 1 OCAML_USE_OASIS d12291 1 a12293 1 OCAML_USE_OPAM d12295 1 a12297 1 OCAML_USE_TOPKG d12299 1 a12301 1 ONLY_FOR_COMPILER d12303 1 a12305 1 OPENSSH_CHROOT d12307 1 a12309 1 OPENSSH_USER d12311 1 a12313 1 OPSYS_EMULDIR d12315 1 a12317 1 OSS_TYPE d12319 1 a12321 1 OSX_TOLERATE_SDK_SKEW d12323 1 a12325 1 OS_HAVE_RCD d12327 1 a12329 1 OS_VERSION d12331 1 a12333 1 OVERRIDE_DIRDEPTH d12335 1 a12337 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12339 1 a12341 1 OWN_DIRS d12343 1 a12345 1 P4GROUP d12347 1 a12349 1 P4ROOT d12351 1 a12353 1 PACKAGES d12355 1 a12357 1 PAMBASE d12359 1 a12361 1 PAPERSIZE d12363 1 a12365 1 PATCHDIR d12367 1 a12369 1 PATCH_ARGS d12371 1 a12373 1 PATCH_DIST_ARGS d12375 1 a12377 1 PATCH_DIST_STRIP d12379 1 a12381 1 PATCH_STRIP d12383 1 a12385 1 PCCBASE d12387 1 a12389 1 PEAR_CHANNEL d12391 1 a12393 1 PEAR_CHANNEL_VERSION d12395 1 a12397 1 PEAR_LIB d12399 1 a12401 1 PERL5 d12403 1 a12405 1 PERL5_CONFIGURE_DIRS d12407 1 a12409 1 PERL5_LICENSE d12411 1 a12413 1 PERL5_PACKLIST d12415 1 a12417 1 PERL5_PERLBASE d12419 1 a12421 1 PERL5_USE_PACKLIST d12423 1 a12425 1 PFCTL d12427 1 a12429 1 PF_VERSION d12431 1 a12433 1 PGHOME d12435 1 a12437 1 PGSQL_TYPE d12439 1 a12441 1 PGSQL_VERSION_DEFAULT d12443 1 a12445 1 PG_LIB_EXT d12447 1 a12449 1 PHPCOMMON_MK d12451 1 a12453 1 PHP_BASE_VERS d12455 1 a12457 1 PHP_EXTENSION_DIR d12459 1 a12461 1 PHP_PKG_PREFIX d12463 1 a12465 1 PHP_VERSIONS_ACCEPTED d12467 1 a12469 1 PHP_VERSION_DEFAULT d12471 1 a12473 1 PILRC_USE_GTK d12475 1 a12477 1 PKGCONFIG_FILE d12479 1 a12481 1 PKGCONFIG_OVERRIDE_STAGE d12483 1 a12485 1 PKGGNUDIR d12487 1 a12489 1 PKGLOCALEDIR d12491 1 a12493 1 PKGNAME d12495 1 a12497 1 PKGPATH d12499 1 a12501 1 PKGSRC_BLAS_TYPES d12503 1 a12505 1 PKGSRC_COMPILER d12507 1 a12509 1 PKGSRC_LOCKTYPE d12511 1 a12513 1 PKGSRC_MESSAGE_RECIPIENTS d12515 1 a12517 1 PKGSRC_MKREPRO d12519 1 a12521 1 PKGSRC_SETENV d12523 1 a12525 1 PKGSRC_TODO d12527 1 a12529 1 PKGSRC_USE_FORTIFY d12531 1 a12533 1 PKGSRC_USE_SSP d12535 1 a12537 1 PKGTASKS_DATAFILE d12539 1 a12541 1 PKGTOOLS_ENV d12543 1 a12545 1 PKG_APACHE d12547 1 a12549 1 PKG_APACHE_DEFAULT d12551 1 a12553 1 PKG_BUILD_OPTIONS d12555 1 a12557 1 PKG_CONFIG d12559 1 a12561 1 PKG_CREATE_USERGROUP d12563 1 a12565 1 PKG_DEBUG_LEVEL d12567 1 a12569 1 PKG_DESTDIR_SUPPORT d12571 1 a12573 1 PKG_DISABLED_OPTIONS d12575 1 a12577 1 PKG_FC d12579 1 a12581 1 PKG_GECOS d12583 1 a12585 1 PKG_GROUPS d12587 1 a12589 1 PKG_HOME d12591 1 a12593 1 PKG_JAVA_HOME d12595 1 a12597 1 PKG_JVMS_ACCEPTED d12599 1 a12601 1 PKG_LEGACY_OPTIONS d12603 1 a12605 1 PKG_OPTIONS d12607 1 a12609 1 PKG_OPTIONS_LEGACY_OPTS d12611 1 a12613 1 PKG_OPTIONS_NONEMPTY_SETS d12615 1 a12617 1 PKG_OPTIONS_REQUIRED_GROUPS d12619 1 a12621 1 PKG_PHP d12623 1 a12625 1 PKG_PHP_VERSION d12627 1 a12629 1 PKG_REFCOUNT_DBDIR d12631 1 a12633 1 PKG_RESUME_TRANSFERS d12635 1 a12637 1 PKG_SUGGESTED_OPTIONS d12639 1 a12641 1 PKG_SYSCONFBASE d12643 1 a12645 1 PKG_SYSCONFDIR d12647 1 a12649 1 PKG_SYSCONFSUBDIR d12651 1 a12653 1 PKG_TOOLS_BIN d12655 1 a12657 1 PKG_UPDATE_FONTS_DB d12659 1 a12661 1 PKG_USERS_VARS d12663 1 a12665 1 PLIST d12667 1 a12669 1 PLIST_AWK_ENV d12671 1 a12673 1 PLIST_SUBST d12675 1 a12677 1 PLIST_VARS d12679 1 a12681 1 POSSIBLE_GFORTRAN_VERSION d12683 1 a12685 1 PREFER d12687 1 a12689 1 PREFER_NATIVE_PTHREADS d12691 1 a12693 1 PREFIX d12695 1 a12697 1 PRE_ROOT_CMD d12699 1 a12701 1 PS d12703 1 a12705 1 PTHREAD_CFLAGS d12707 1 a12709 1 PTHREAD_LIBS d12711 1 a12713 1 PTHREAD_TYPE d12715 1 a12717 1 PYPKGPREFIX d12719 1 a12721 1 PYTHON_SELF_CONFLICT d12723 1 a12725 1 PYTHON_VERSIONS_ACCEPTED d12727 1 a12729 1 PYTHON_VERSION_DEFAULT d12731 1 a12733 1 PYVERSSUFFIX d12735 1 a12737 1 QMAILDIR d12739 1 a12741 1 QMAIL_DAEMON_USER d12743 1 a12745 1 QMAIL_NOFILES_GROUP d12747 1 a12749 1 QMAIL_QMAIL_GROUP d12751 1 a12753 1 QMAIL_QUEUE_EXTRA d12755 1 a12757 1 QMAIL_REMOTE_USER d12759 1 a12761 1 QMAIL_SEND_USER d12763 1 a12765 1 QPOPPER_SPOOL_DIR d12767 1 a12769 1 RAKE_NAME d12771 1 a12773 1 RCD_DIR d12775 1 a12777 1 RCD_SCRIPTS d12779 1 a12781 1 RCD_SCRIPTS_EXAMPLEDIR d12783 1 a12785 1 RCD_SCRIPTS_SHELL d12787 1 a12789 1 RCD_SUBR d12791 1 a12793 1 READLINE_DEFAULT d12795 1 a12797 1 REAL_ROOT_GROUP d12799 1 a12801 1 RECURSIVE_MAKE d12803 1 a12805 1 REPLACE_AWK d12807 1 a12809 1 REPLACE_CSH d12811 1 a12813 1 REPLACE_PERL d12815 1 a12817 1 REPLACE_PHP d12819 1 a12821 1 REPLACE_RUBY d12823 1 a12825 1 REPLACE_RUBY_PAT d12827 1 a12829 1 REPLACE_TEXLUA d12831 1 a12833 1 REQD_DIRS_PERMS d12835 1 a12837 1 REQD_FILES_MODE d12839 1 a12841 1 RESOLV_AUTO_VARS d12843 1 a12845 1 RESOLV_LIBS d12847 1 a12849 1 ROCKSPEC_NAME d12851 1 a12853 1 ROOT_CMD d12855 1 a12857 1 ROOT_USER d12859 1 a12861 1 RPM d12863 1 a12865 1 RPM2PKG_PREFIX d12867 1 a12869 1 RPM2PKG_STRIP d12871 1 a12873 1 RPMFILES d12875 1 a12877 1 RPM_DB_PREFIX d12879 1 a12881 1 RSSH_RDIST_PATH d12883 1 a12885 1 RSSH_SCP_PATH d12887 1 a12889 1 RUBY d12891 1 a12893 1 RUBYGEM_NAME d12895 1 a12897 1 RUBY_ABI_VERSION d12899 1 a12901 1 RUBY_ARCHINC d12903 1 a12905 1 RUBY_BASE d12907 1 a12909 1 RUBY_BUILD_DOCUMENT d12911 1 a12913 1 RUBY_DOC d12915 1 a12917 1 RUBY_EG d12919 1 a12921 1 RUBY_EXTCONF d12923 1 a12925 1 RUBY_EXTCONF_DEBUG d12927 1 a12929 1 RUBY_GEM_BASE d12931 1 a12933 1 RUBY_LIB d12935 1 a12937 1 RUBY_NAME d12939 1 a12941 1 RUBY_PKGPREFIX d12943 1 a12945 1 RUBY_RAILS51_VERSION d12947 1 a12949 1 RUBY_RAILS60_VERSION d12951 1 a12953 1 RUBY_RAILS_DEFAULT d12955 1 a12957 1 RUBY_RAILS_STRICT_DEP d12959 1 a12961 1 RUBY_SETUP d12963 1 a12965 1 RUBY_SHLIBALIAS d12967 1 a12969 1 RUBY_SIMPLE_INSTALL d12971 1 a12973 1 RUBY_SITELIB d12975 1 a12977 1 RUBY_SITERIDIR d12979 1 a12981 1 RUBY_SRCDIR d12983 1 a12985 1 RUBY_SUFFIX d12987 1 a12989 1 RUBY_USE_PTHREAD d12991 1 a12993 1 RUBY_VENDORLIB d12995 1 a12997 1 RUBY_VER d12999 1 a13001 1 RUBY_VERSIONS_ACCEPTED d13003 1 a13005 1 RUBY_VERSION_DEFAULT d13007 1 a13009 1 RUBY_VER_DIR d13011 1 a13013 1 RUN_LDCONFIG d13015 1 a13017 1 SCO d13019 1 a13021 1 SCREWS_USER d13023 1 a13025 1 SCROLLKEEPER_DATADIR d13027 1 a13029 1 SCROLLKEEPER_UPDATEDB d13031 1 a13033 1 SERIAL_DEVICES d13035 1 a13037 1 SETGID_GAMES_PERMS d13039 1 a13041 1 SH d13043 1 a13045 1 SHORTNAME d13047 1 a13049 1 SILC_CLIENT_WITH_PERL d13051 1 a13053 1 SKIP_DEPENDS d13055 1 a13057 1 SMF_MANIFEST d13059 1 a13061 1 SMF_METHOD_SHELL d13063 1 a13065 1 SMF_NAME d13067 1 a13069 1 SMF_SRCDIR d13071 1 a13073 1 SNIPROXY_USER d13075 1 a13077 1 SPECIAL_PERMS d13079 1 a13081 1 SSH_SUID d13083 1 a13085 1 SSYNC_PAWD d13087 1 a13089 1 STRIP d13091 1 a13093 1 STRIP_DEBUG d13095 1 a13097 1 STRIP_FILES_SKIP d13099 1 a13101 1 SUBDIR d13103 1 a13105 1 SUBST_CLASSES d13107 1 a13109 1 SUBST_FILTER_CMD d13111 1 a13113 1 SUBST_NOOP_OK d13115 1 a13117 1 SUBST_SHOW_DIFF d13119 1 a13121 1 SUBST_STAGE d13123 1 a13125 1 SUNWSPROBASE d13127 1 a13129 1 SU_CMD d13131 1 a13133 1 SVN_REPO d13135 1 a13137 1 SVN_REVISION d13139 1 a13141 1 TERMCAP_TYPE d13143 1 a13145 1 TERMINFO_TYPE d13147 1 a13149 1 TEST_DEPENDS d13151 1 a13153 1 TEST_ENV d13155 1 a13157 1 TEST_MAKE_CMD d13159 1 a13161 1 TEST_TARGET d13163 1 a13165 1 TEXLIVE_REV d13167 1 a13169 1 TEXMFSITE d13171 1 a13173 1 TEX_HYPHEN_DAT d13175 1 a13177 1 TEX_TEXMF_DIRS d13179 1 a13181 1 TO d13183 1 a13185 1 TOOLS_ALWAYS_WRAP d13187 1 a13189 1 TOOLS_BROKEN d13191 1 a13193 1 TOOLS_CMDLINE_SED d13195 1 a13197 1 TOOLS_DIR d13199 1 a13201 1 TOOLS_GNU_MISSING d13203 1 a13205 1 TOOLS_NOOP d13207 1 a13209 1 TOOLS_SCRIPT d13211 1 a13213 1 TTF_FONTDIR d13215 1 a13217 1 TYPE d13219 1 a13221 1 UCSPI_SSL_GROUP d13223 1 a13225 1 UNLIMIT_RESOURCES d13227 1 a13229 1 UNPRIVILEGED_GROUP d13231 1 a13233 1 UNPRIVILEGED_USER d13235 1 a13237 1 UNWRAP_PATTERNS d13239 1 a13241 1 UPDATE_TARGET d13243 1 a13245 1 USERGROUP_PHASE d13247 1 a13249 1 USER_SPECIFIC_PKGS d13251 1 a13253 1 USE_APR d13255 1 a13257 1 USE_BUILTIN d13259 1 a13261 1 USE_CURSES d13263 1 a13265 1 USE_DB185 d13267 1 a13269 1 USE_GAMESGROUP d13271 1 a13273 1 USE_IMAKE d13275 1 a13277 1 USE_JAVA2 d13279 1 a13281 1 USE_LIBTOOL d13283 1 a13285 1 USE_NETBSD_REPO d13287 1 a13289 1 USE_PKGSRC_GCC_RUNTIME d13291 1 a13293 1 USE_PKG_ADMIN_DIGEST d13295 1 a13297 1 USE_RUBY_INSTALL d13299 1 a13301 1 USE_RUBY_SETUP_PKG d13303 1 a13305 1 UUCP_GROUP d13307 1 a13309 1 VARBASE d13311 1 a13313 1 VIM_EXTRA_OPTS d13315 1 a13317 1 WCALC_CGIDIR d13319 1 a13321 1 WCALC_HTMLDIR d13323 1 a13325 1 WDM_MANAGERS d13327 1 a13329 1 WRAPPER_REORDER_CMDS d13331 1 a13333 1 WRKDIR_BASENAME d13335 1 a13337 1 WRKLOG d13339 1 a13341 1 WRKSRC d13343 1 a13345 1 X11 d13347 1 a13349 1 X11_PKGSRCDIR d13351 1 a13353 1 X509_CERTIFICATE d13355 1 a13357 1 XAW_TYPE d13359 1 a13361 1 XMKMF d13363 1 a13365 1 XXX d13367 1 a13369 1 YES d13371 1 a13373 1 __stdc__ d13375 1 a13377 1 accept d13379 1 a13381 1 acquire-lock d13383 1 a13385 1 administrator d13387 1 a13389 1 alternatives d13391 1 a13393 1 asprintf d13395 1 a13397 1 autoconf d13399 1 a13401 1 autoreconf d13403 1 a13405 1 bash d13407 1 a13409 1 bin-install d13411 1 a13413 1 binpkg-list d13415 1 a13417 1 bootstrap-depends d13419 1 a13421 1 broken_on_platform d13423 1 a13425 1 bsd.prog.mk d13427 1 a13429 1 build-env d13431 1 a13433 1 buildlink-oss-soundcard-h d13435 1 a13437 1 c++ d13439 1 a13441 1 cce d13443 1 a13445 1 ceil d13447 1 a13449 1 changes-entry d13451 1 a13453 1 check d13455 1 a13457 1 check-files d13459 1 a13461 1 check-vulnerable d13463 1 a13465 1 checksum-phase d13467 1 a13469 1 clean-depends d13471 1 a13473 1 commit d13475 1 a13477 1 compact d13479 1 a13481 1 conf d13483 1 a13485 1 config.sub d13487 1 a13489 1 configure d13491 1 a13493 1 configure-help d13495 1 a13497 1 connect d13499 1 a13501 1 cputime d13503 1 a13505 1 csh d13507 1 a13509 1 cvs d13511 1 a13513 1 declaration d13515 1 a13517 1 defined d13519 1 a13521 1 dependencies d13523 1 a13525 1 depends-checksum d13527 1 a13529 1 deps d13531 1 a13533 1 destdir d13535 1 a13537 1 distclean d13539 1 a13541 1 dl d13543 1 a13545 1 do-build d13547 1 a13549 1 do-clean d13551 1 a13553 1 do-configure-post-hook d13555 1 a13557 1 do-fetch d13559 1 a13561 1 emul d13563 1 a13565 1 emul-fetch d13567 1 a13569 1 emulator d13571 1 a13573 1 endian d13575 1 a13577 1 enomem d13579 1 a13581 1 errx d13583 1 a13585 1 exp d13587 1 a13589 1 fabs d13591 1 a13593 1 features d13595 1 a13597 1 fetch-list d13599 1 a13601 1 forbids d13603 1 a13605 1 format d13607 1 a13609 1 fortify_source d13611 1 a13613 1 friend d13615 1 a13617 1 fts_close d13619 1 a13621 1 fts_read d13623 1 a13625 1 gcc d13627 1 a13629 1 gethostbyname d13631 1 a13633 1 getopt_long d13635 1 a13637 1 getservbyname d13639 1 a13641 1 getservent d13643 1 a13645 1 git d13647 1 a13649 1 gitlab d13651 1 a13653 1 gnu d13655 1 a13657 1 go d13659 1 a13661 1 golang d13663 1 a13665 1 hashbang d13667 1 a13669 1 help d13671 1 a13673 1 imake d13675 1 a13677 1 inet_aton d13679 1 a13681 1 interpreter d13683 1 a13685 1 ip4 d13687 1 a13689 1 ipv4 d13691 1 a13693 1 iso d13695 1 a13697 1 krb d13699 1 a13701 1 ksh d13703 1 a13705 1 latex d13707 1 a13709 1 libintl_gettext d13711 1 a13713 1 libnbcompat d13715 1 a13717 1 libtool d13719 1 a13721 1 license d13723 1 a13725 1 little-endian d13727 1 a13729 1 locking d13731 1 a13733 1 make d13735 1 a13737 1 memory d13739 1 a13741 1 meta d13743 1 a13745 1 meta_package d13747 1 a13749 1 mk.conf d13751 1 a13753 1 mount d13755 1 a13757 1 mremap d13759 1 a13761 1 nbcompat d13763 1 a13765 1 obstack_ptr_grow d13767 1 a13769 1 only d13771 1 a13773 1 options d13775 1 a13777 1 order d13779 1 a13781 1 override-intltool d13783 1 a13785 1 package d13787 1 a13789 1 path d13791 1 a13793 1 paxctl d13795 1 a13797 1 pc d13799 1 a13801 1 perl5 d13803 1 a13805 1 php d13807 1 a13809 1 pkg-config d13811 1 a13813 1 platform d13815 1 a13817 1 post-extract d13819 1 a13821 1 post-wrapper d13823 1 a13825 1 pre-configure d13827 1 a13829 1 pre-extract d13831 1 a13833 1 print-go-deps d13835 1 a13837 1 print-summary-data d13839 1 a13841 1 pypi d13843 1 a13845 1 readme-all d13847 1 a13849 1 recvfrom d13851 1 a13853 1 release-localbase-lock d13855 1 a13857 1 relro d13859 1 a13861 1 reorder d13863 1 a13865 1 replace_interpreter d13867 1 a13869 1 resolv d13871 1 a13873 1 ruby d13875 1 a13877 1 sendfile d13879 1 a13881 1 setenv d13883 1 a13885 1 setprogname d13887 1 a13889 1 sh d13891 1 a13893 1 show d13895 1 a13897 1 show-build-defs d13899 1 a13901 1 show-deps d13903 1 a13905 1 show-downlevel d13907 1 a13909 1 show-tools d13911 1 a13913 1 show-vars d13915 1 a13917 1 socket d13919 1 a13921 1 st_mode d13923 1 a13925 1 strcasestr d13927 1 a13929 1 strip d13931 1 a13933 1 strnlen d13935 1 a13937 1 subst d13939 1 a13941 1 subversion d13943 1 a13945 1 sunpro d13947 1 a13949 1 svn d13951 1 a13953 1 test d13955 1 a13957 1 tex d13959 1 a13961 1 tmp d13963 1 a13965 1 tools d13967 1 a13969 1 type d13971 1 a13973 1 undefined d13975 1 a13977 1 unlimit d13979 1 a13981 1 unprivileged-install-hook d13983 1 a13985 1 update d13987 1 a13989 1 upload-distfiles d13991 1 a13993 1 user d13995 1 a13997 1 vasprintf d13999 1 a14001 1 vsnprintf d14003 1 a14005 1 warning d14007 1 a14009 1 warnx d14011 1 a14013 1 wattr_on d14015 1 a14017 1 wrapper d14019 1 @ 1.303 log @doc/pkgsrc.*: regen @ text @d14027 3 @ 1.302 log @doc/pkgsrc.*: regen @ text @d8092 1 a8092 1 https://github.com/username/exampleproject/archive/v1.0.zip, d8095 1 a8095 1 DISTNAME= exampleproject-1.0 d8097 1 a8097 1 #GITHUB_PROJECT= # can be omitted if same as DISTNAME d8104 31 a8134 5 21.2.3.2. Fetch based on a specific commit

    If your distfile URL looks similar to https://github.com​/example​/example​/archive​/988881adc9fc3655077dc2d4d757d480b5ea0e11.tar.gz, then you are packaging a specific commit not tied to a release.

    d8136 3 a8138 3 DISTNAME= example-1.0 MASTER_SITES= ${MASTER_SITE_GITHUB:=example/} #GITHUB_PROJECT= # can be omitted if same as DISTNAME d8144 1 a8144 1 21.2.3.3. Fetch based on release d8146 1 a8146 1 https://github.com​/username/exampleproject​/releases​/download​/rel-1.6​/offensive-1.6.zip, d8152 1 a8152 1 GITHUB_PROJECT= exampleproject d11194 3 d11198 1 a11200 1 BIN_INSTALL_FLAGS d11202 1 a11204 1 BLAS_ACCEPTED d11206 1 a11208 1 BLAS_TYPE d11210 1 a11212 1 BOOTSTRAP_SETUPTOOLS d11214 1 a11216 1 BROKEN_EXCEPT_ON_PLATFORM d11218 1 a11220 1 BSDSRCDIR d11222 1 a11224 1 BSD_MAKE_ENV d11226 1 a11228 1 BUILDLINK_AUTO_VARS d11230 1 a11232 1 BUILDLINK_CONTENTS_FILTER d11234 1 a11236 1 BUILDLINK_DEPMETHOD d11238 1 a11240 1 BUILDLINK_FILES_CMD d11242 1 a11244 1 BUILDLINK_LDFLAGS d11246 1 a11248 1 BUILDLINK_OPSYS_SUPPORT_PTHREAD d11250 1 a11252 1 BUILDLINK_PREFIX d11254 1 a11256 1 BUILDLINK_TREE d11258 1 a11260 1 BUILD_DEFS_EFFECTS d11262 1 a11264 1 BUILD_DIRS d11266 1 a11268 1 BUILD_MAKE_CMD d11270 1 a11272 1 BUILD_TARGET d11274 1 a11276 1 BUILTIN_FIND_FILES_VAR d11278 1 a11280 1 BUILTIN_FIND_HEADERS d11282 1 a11284 1 BUILTIN_PKG d11286 1 a11288 1 BUILTIN_TEST_CURSES_FUNCS d11290 1 a11292 1 BUILTIN_X11_TYPE d11294 1 a11296 1 CACTI_GROUP d11298 1 a11300 1 CANNA_GROUP d11302 1 a11304 1 CAT d11306 1 a11308 1 CCACHE_DIR d11310 1 a11312 1 CC_VERSION d11314 1 a11316 1 CDRECORD_CONF d11318 1 a11320 1 CDROM_PKG_URL_HOST d11322 1 a11324 1 CHECK_COMPILER d11326 1 a11328 1 CHECK_FILES d11330 1 a11332 1 CHECK_FILES_STRICT d11334 1 a11336 1 CHECK_HEADERS_SKIP d11338 1 a11340 1 CHECK_INTERPRETER_SKIP d11342 1 a11344 1 CHECK_PERMS_AUTOFIX d11346 1 a11348 1 CHECK_PORTABILITY d11350 1 a11352 1 CHECK_PORTABILITY_SKIP d11354 1 a11356 1 CHECK_RELRO_SKIP d11358 1 a11360 1 CHECK_SHLIBS d11362 1 a11364 1 CHECK_SHLIBS_SKIP d11366 1 a11368 1 CHECK_SSP d11370 1 a11372 1 CHECK_SSP_SUPPORTED d11374 1 a11376 1 CHECK_STRIPPED_SKIP d11378 1 a11380 1 CHECK_WRKREF_EXTRA_DIRS d11382 1 a11384 1 CLAMAV_DBDIR d11386 1 a11388 1 CLAMAV_USER d11390 1 a11392 1 CLEANDEPENDS d11394 1 a11396 1 CMAKE_INSTALL_PREFIX d11398 1 a11400 1 CMAKE_PKGSRC_BUILD_FLAGS d11402 1 a11404 1 CMAKE_USE_GNU_INSTALL_DIRS d11406 1 a11408 1 COMMON_LISP_EXAMPLES d11410 1 a11412 1 COMMON_LISP_PACKAGES d11414 1 a11416 1 COMPILER_RPATH_FLAG d11418 1 a11420 1 CONFIGURE_ARGS d11422 1 a11424 1 CONFIGURE_ENV d11426 1 a11428 1 CONFIGURE_HAS_INFODIR d11430 1 a11432 1 CONFIGURE_SCRIPT d11434 1 a11436 1 CONFIG_SHELL_FLAGS d11438 1 a11440 1 CONF_FILES_MODE d11442 1 a11444 1 CONSERVER_DEFAULTHOST d11446 1 a11448 1 CP d11450 1 a11452 1 CPP_PRECOMP_FLAGS d11454 1 a11456 1 CROSSBASE d11458 1 a11460 1 CTF_FILES_SKIP d11462 1 a11464 1 CTYPE d11466 1 a11468 1 CUPS_SYSTEM_GROUPS d11470 1 a11472 1 CURSES_DEFAULT d11474 1 a11476 1 CVS_EXTRACTDIR d11478 1 a11480 1 CVS_PROJECT d11482 1 a11484 1 CVS_ROOT d11486 1 a11488 1 CVS_ROOT_NONGNU d11490 1 a11492 1 CVS_TAG d11494 1 a11496 1 CYRUS_GROUP d11498 1 a11500 1 CYRUS_USER d11502 1 a11504 1 DAEMONTOOLS_LOG_USER d11506 1 a11508 1 DBUS_USER d11510 1 a11512 1 DEFANG_USER d11514 1 a11516 1 DEFAULT_DISTFILES d11518 1 a11520 1 DEFAULT_SERIAL_DEVICE d11522 1 a11524 1 DEINSTALLDEPENDS d11526 1 a11528 1 DEINSTALL_TEMPLATES d11530 1 a11532 1 DELAYED_WARNING_MSG d11534 1 a11536 1 DEPENDS_TARGET d11538 1 a11540 1 DESTDIR d11542 1 a11544 1 DIALER_GROUP d11546 1 a11548 1 DISTDIR d11550 1 a11552 1 DISTINFO_FILE d11554 1 a11556 1 DIST_PATH d11558 1 a11560 1 DJBDNS_AXFR_USER d11562 1 a11564 1 DJBDNS_DJBDNS_GROUP d11566 1 a11568 1 DJBDNS_RBL_USER d11570 1 a11572 1 DLOPEN_REQUIRE_PTHREADS d11574 1 a11576 1 DL_CFLAGS d11578 1 a11580 1 DL_LIBS d11582 1 d11694 4 d12101 1 d12103 2 d12106 1 a12108 1 MASTER_SITES d12110 1 a12112 1 MASTER_SITE_LOCAL d12114 1 a12116 1 MASTER_SITE_OVERRIDE d12118 1 a12120 1 MASTER_SORT d12122 1 a12124 1 MASTER_SORT_REGEX d12126 1 a12128 1 MEDIATOMB_GROUP d12130 1 a12132 1 MIPSPROBASE d12134 1 a12136 1 MIREDO_USER d12138 1 a12140 1 MKDIR d12142 1 a12144 1 MLDONKEY_HOME d12146 1 a12148 1 MONOTONE_GROUP d12150 1 a12152 1 MOTIFBASE d12154 1 a12156 1 MOTIF_TYPE_DEFAULT d12158 1 a12160 1 MSGFMT_STRIP_MSGCTXT d12162 1 a12164 1 MTOOLS_ENABLE_FLOPPYD d12166 1 a12168 1 MV d12170 1 a12172 1 MYSQL_DATADIR d12174 1 a12176 1 MYSQL_GROUP d12178 1 a12180 1 MYSQL_USER d12182 1 a12184 1 MYSQL_VERSION_DEFAULT d12186 1 a12188 1 NAGIOSDIR d12190 1 a12192 1 NAGIOS_USER d12194 1 a12196 1 NATIVE_APPEND_ELF d12198 1 a12200 1 NATIVE_MACHINE_PLATFORM d12202 1 a12204 1 NBPAX_PROGRAM_PREFIX d12206 1 a12208 1 NMH_EDITOR d12210 1 a12212 1 NMH_PAGER d12214 1 a12216 1 NOTE d12218 1 a12220 1 NOT_PAX_ASLR_SAFE d12222 1 a12224 1 NO_BUILD d12226 1 a12228 1 NO_CONFIGURE d12230 1 a12232 1 NS_PREFERRED d12234 1 a12236 1 NULLMAILER_USER d12238 1 a12240 1 OASIS_BUILD_ARGS d12242 1 a12244 1 OBJMACHINE d12246 1 a12248 1 OCAML_FINDLIB_REGISTER d12250 1 a12252 1 OCAML_SITELIBDIR d12254 1 a12256 1 OCAML_USE_DUNE d12258 1 a12260 1 OCAML_USE_JBUILDER d12262 1 a12264 1 OCAML_USE_OASIS_DYNRUN d12266 1 a12268 1 OCAML_USE_OPT_COMPILER d12270 1 a12272 1 OMF d12274 1 a12276 1 ONLY_FOR_PLATFORM d12278 1 a12280 1 OPENSSH_GROUP d12282 1 a12284 1 OPSYS d12286 1 d13110 3 d13114 1 a13116 1 TERMINFO_DEFAULT d13118 1 a13120 1 TEST d13122 1 a13124 1 TEST_DIRS d13126 1 a13128 1 TEST_ENV_SHELL d13130 1 a13132 1 TEST_MAKE_FLAGS d13134 1 a13136 1 TEXLIVE_IGNORE_PATTERNS d13138 1 a13140 1 TEXLIVE_UNVERSIONED d13142 1 a13144 1 TEX_FORMATS d13146 1 a13148 1 TEX_HYPHEN_DEF d13150 1 a13152 1 THTTPD_LOG_FACILITY d13154 1 a13156 1 TOOLS_ALIASES d13158 1 a13160 1 TOOLS_ARGS d13162 1 d13165 1 a13165 1 TOOLS_CMD d13298 3 d13302 1 a13304 1 WRKDIR d13306 1 a13308 1 WRKDIR_LOCKTYPE d13310 1 a13312 1 WRKOBJDIR d13314 1 a13316 1 X10_PORT d13318 1 a13320 1 X11BASE d13322 1 a13324 1 X11_TYPE d13326 1 a13328 1 X509_KEY d13330 1 d13333 1 a13333 1 XLOCK_DEFAULT_MODE d13657 8 @ 1.301 log @doc/pkgsrc.*: regen @ text @d1006 1 a1006 1 2020Q1.

    d1032 2 a1033 2

    The tar file for the stable branch 2020Q1 is in the directory pkgsrc-2020Q1 and is also called pkgsrc.tar.gz.

    d1036 1 a1036 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2020Q1/pkgsrc.tar.gz
    d1051 1 a1051 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2020Q1 -P pkgsrc
    d1136 1
    a1136 1
    	-rpkgsrc-2020Q1 option.

    d11843 1 a11844 1 HOST_SPECIFIC_PKGS d11847 1 a11848 1 HOWL_USER d11851 1 a11852 1 ICECAST_CHROOTDIR d11855 1 a11856 1 IDOBASE d11859 1 a11860 1 IGNORE_INFO_DIRS d11863 1 a11864 1 IMAKE d11867 1 a11868 1 IMAKE_MAKE d11871 1 a11872 1 IMAP_UW_CCLIENT_MBOX_FMT d11875 1 a11876 1 INCOMPAT_CURSES d11879 1 a11880 1 INFO_FILES d11883 1 a11884 1 INFO_MSG d11887 1 a11888 1 INN_DATA_DIR d11891 1 a11892 1 INN_USER d11895 1 a11896 1 INSTALLATION_DIRS_FROM_PLIST d11899 1 a11900 1 INSTALL_SH_OVERRIDE d11903 1 a11904 1 INSTALL_TEMPLATES d11907 1 a11908 1 IRCD_HYBRID_IRC_GROUP d11911 1 a11912 1 IRCD_HYBRID_MAXCONN d11915 1 a11916 1 IRCD_HYBRID_SYSLOG_EVENTS d11919 1 a11920 1 IRCD_HYBRID_TOPICLEN d11923 1 a11924 1 IRRD_USE_PGP d11927 1 a11928 1 JABBERD_LOGDIR d11931 1 a11932 1 JABBERD_SPOOLDIR d11935 1 a11936 1 JAKARTA_HOME d11939 1 a11940 1 JAVA_APP_TARGETS d11943 1 a11944 1 JAVA_CLASSPATH d11947 1 a11948 1 JAVA_LD_LIBRARY_PATH d11951 1 a11952 1 JAVA_UNLIMIT d11955 1 a11956 1 JPEG_ACCEPTED d11959 1 a11960 1 KERBEROS d11963 1 a11964 1 KJS_USE_PCRE d11967 1 a11968 1 KNEWS_DOMAIN_NAME d11971 1 a11972 1 KRB5_DEFAULT d11975 1 a11976 1 LAPACK_LIBS d11979 1 a11980 1 LDCONFIG_ADD_CMD d11983 1 a11984 1 LEAFNODE_DATA_DIR d11987 1 a11988 1 LEAFNODE_USER d11991 1 a11992 1 LIBDVDCSS_MASTER_SITES d11995 1 a11996 1 LIBTOOL d11999 1 a12000 1 LIBTOOL_M4_OVERRIDE d12003 1 a12004 1 LICENSE d12007 1 a12008 1 LINK_RPATH_FLAG d12011 1 a12012 1 LINUX_BASE_PREFERRED d12015 1 a12016 1 LINUX_LOCALES d12019 1 a12020 1 LOCALBASE_LOCKTYPE d12023 1 a12024 1 LOVE_DATA d12027 1 a12028 1 LOVE_VERSION d12031 1 a12032 1 MACHINE_PLATFORM d12035 1 a12036 1 MAILAGENT_EMAIL d12039 1 a12040 1 MAILAGENT_ORGANIZATION d12043 1 a12044 1 MAJOR_OS_VERSION d12047 1 a12048 1 MAKE_DIRS d12051 1 a12052 1 MAKE_ENV d12055 1 a12056 1 MAKE_FLAGS d12059 1 a12060 1 MAKE_JOBS_SAFE d12063 1 a12064 1 MANINSTALL d12067 1 a12068 1 MASTER_SITES d12071 1 a12072 1 MASTER_SITE_LOCAL d12075 1 a12076 1 MASTER_SITE_OVERRIDE d12079 1 a12080 1 MASTER_SORT d12083 1 a12084 1 MASTER_SORT_REGEX d12087 1 a12088 1 MEDIATOMB_GROUP d12091 1 a12092 1 MIPSPROBASE d12095 1 a12096 1 MIREDO_USER d12099 1 a12100 1 MKDIR d12103 1 a12104 1 MLDONKEY_HOME d12107 1 a12108 1 MONOTONE_GROUP d12111 1 a12112 1 MOTIFBASE d12115 1 a12116 1 MOTIF_TYPE_DEFAULT d12119 1 a12120 1 MSGFMT_STRIP_MSGCTXT d12123 1 a12124 1 MTOOLS_ENABLE_FLOPPYD d12127 1 a12128 1 MV d12131 1 a12132 1 MYSQL_DATADIR d12135 1 a12136 1 MYSQL_GROUP d12139 1 a12140 1 MYSQL_USER d12143 1 a12144 1 MYSQL_VERSION_DEFAULT d12147 1 a12148 1 NAGIOSDIR d12151 1 a12152 1 NAGIOS_USER d12155 1 a12156 1 NATIVE_APPEND_ELF d12159 1 a12160 1 NATIVE_MACHINE_PLATFORM d12163 1 a12164 1 NBPAX_PROGRAM_PREFIX d12167 1 a12168 1 NMH_EDITOR d12171 1 a12172 1 NMH_PAGER d12175 1 a12176 1 NOTE d12179 1 a12180 1 NOT_PAX_ASLR_SAFE d12183 1 a12184 1 NO_BUILD d12187 1 a12188 1 NO_CONFIGURE d12191 1 a12192 1 NS_PREFERRED d12195 1 a12196 1 NULLMAILER_USER d12199 1 a12200 1 OASIS_BUILD_ARGS d12203 1 a12204 1 OBJMACHINE d12207 1 a12208 1 OCAML_FINDLIB_REGISTER d12211 1 a12212 1 OCAML_SITELIBDIR d12215 1 a12216 1 OCAML_USE_DUNE d12219 1 a12220 1 OCAML_USE_JBUILDER d12223 1 a12224 1 OCAML_USE_OASIS_DYNRUN d12227 1 a12228 1 OCAML_USE_OPT_COMPILER d12231 1 a12232 1 OMF d12235 1 a12236 1 ONLY_FOR_PLATFORM d12239 1 a12240 1 OPENSSH_GROUP d12243 1 a12244 1 OPSYS d12247 1 a12248 1 OSS_TYPE d12251 1 a12252 1 OSX_TOLERATE_SDK_SKEW d12255 1 a12256 1 OS_HAVE_RCD d12259 1 a12260 1 OS_VERSION d12263 1 a12264 1 OVERRIDE_DIRDEPTH d12267 1 a12268 1 OVERRIDE_GNU_CONFIG_SCRIPTS d12271 1 a12272 1 OWN_DIRS d12275 1 a12276 1 P4GROUP d12279 1 a12280 1 P4ROOT d12283 1 a12284 1 PACKAGES d12287 1 a12288 1 PAMBASE d12291 1 a12292 1 PAPERSIZE d12295 1 a12296 1 PATCHDIR d12299 1 a12300 1 PATCH_ARGS d12303 1 a12304 1 PATCH_DIST_ARGS d12307 1 a12308 1 PATCH_DIST_STRIP d12311 1 a12312 1 PATCH_STRIP d12315 1 a12316 1 PCCBASE d12319 1 a12320 1 PEAR_CHANNEL d12323 1 a12324 1 PEAR_CHANNEL_VERSION d12327 1 a12328 1 PEAR_LIB d12331 1 a12332 1 PERL5 d12335 1 a12336 1 PERL5_CONFIGURE_DIRS d12339 1 a12340 1 PERL5_LICENSE d12343 1 a12344 1 PERL5_PACKLIST d12347 1 a12348 1 PERL5_PERLBASE d12351 1 a12352 1 PERL5_USE_PACKLIST d12355 1 a12356 1 PFCTL d12359 1 a12360 1 PF_VERSION d12363 1 a12364 1 PGHOME d12367 1 a12368 1 PGSQL_TYPE d12371 1 a12372 1 PGSQL_VERSION_DEFAULT d12375 1 a12376 1 PG_LIB_EXT d12379 1 a12380 1 PHPCOMMON_MK d12383 1 a12384 1 PHP_BASE_VERS d12387 1 a12388 1 PHP_EXTENSION_DIR d12391 1 a12392 1 PHP_PKG_PREFIX d12395 1 a12396 1 PHP_VERSIONS_ACCEPTED d12399 1 a12400 1 PHP_VERSION_DEFAULT d12403 1 a12404 1 PILRC_USE_GTK d12407 1 a12408 1 PKGCONFIG_FILE d12411 1 a12412 1 PKGCONFIG_OVERRIDE_STAGE d12415 1 a12416 1 PKGGNUDIR d12419 1 a12420 1 PKGLOCALEDIR d12423 1 a12424 1 PKGNAME d12427 1 a12428 1 PKGPATH d12431 1 a12432 1 PKGSRC_BLAS_TYPES d12435 1 a12436 1 PKGSRC_COMPILER d12439 1 a12440 1 PKGSRC_LOCKTYPE d12443 1 a12444 1 PKGSRC_MESSAGE_RECIPIENTS d12447 1 a12448 1 PKGSRC_MKREPRO d12451 1 a12452 1 PKGSRC_SETENV d12455 1 a12456 1 PKGSRC_TODO d12459 1 a12460 1 PKGSRC_USE_FORTIFY d12463 1 a12464 1 PKGSRC_USE_SSP d12467 1 a12468 1 PKGTASKS_DATAFILE d12471 1 a12472 1 PKGTOOLS_ENV d12475 1 a12476 1 PKG_APACHE d12479 1 a12480 1 PKG_APACHE_DEFAULT d12483 1 a12484 1 PKG_BUILD_OPTIONS d12487 1 a12488 1 PKG_CONFIG d12491 1 a12492 1 PKG_CREATE_USERGROUP d12495 1 a12496 1 PKG_DEBUG_LEVEL d12499 1 a12500 1 PKG_DESTDIR_SUPPORT d12503 1 a12504 1 PKG_DISABLED_OPTIONS d12507 1 a12508 1 PKG_FC d12511 1 a12512 1 PKG_GECOS d12515 1 a12516 1 PKG_GROUPS d12519 1 a12520 1 PKG_HOME d12523 1 a12524 1 PKG_JAVA_HOME d12527 1 a12528 1 PKG_JVMS_ACCEPTED d12531 1 a12532 1 PKG_LEGACY_OPTIONS d12535 1 a12536 1 PKG_OPTIONS d12539 1 a12540 1 PKG_OPTIONS_LEGACY_OPTS d12543 1 a12544 1 PKG_OPTIONS_NONEMPTY_SETS d12547 1 a12548 1 PKG_OPTIONS_REQUIRED_GROUPS d12551 1 a12552 1 PKG_PHP d12555 1 a12556 1 PKG_PHP_VERSION d12559 1 a12560 1 PKG_REFCOUNT_DBDIR d12563 1 a12564 1 PKG_RESUME_TRANSFERS d12567 1 a12568 1 PKG_SUGGESTED_OPTIONS d12571 1 a12572 1 PKG_SYSCONFBASE d12575 1 a12576 1 PKG_SYSCONFDIR d12579 1 a12580 1 PKG_SYSCONFSUBDIR d12583 1 a12584 1 PKG_TOOLS_BIN d12587 1 a12588 1 PKG_UPDATE_FONTS_DB d12591 1 a12592 1 PKG_USERS_VARS d12595 1 a12596 1 PLIST d12599 1 a12600 1 PLIST_AWK_ENV d12603 1 a12604 1 PLIST_SUBST d12607 1 a12608 1 PLIST_VARS d12611 1 a12612 1 POSSIBLE_GFORTRAN_VERSION d12615 1 a12616 1 PREFER d12619 1 a12620 1 PREFER_NATIVE_PTHREADS d12623 1 a12624 1 PREFIX d12627 1 a12628 1 PRE_ROOT_CMD d12631 1 a12632 1 PS d12635 1 a12636 1 PTHREAD_CFLAGS d12639 1 a12640 1 PTHREAD_LIBS d12643 1 a12644 1 PTHREAD_TYPE d12647 1 a12648 1 PYPKGPREFIX d12651 1 a12652 1 PYTHON_SELF_CONFLICT d12655 1 a12656 1 PYTHON_VERSIONS_ACCEPTED d12659 1 a12660 1 PYTHON_VERSION_DEFAULT d12663 1 a12664 1 PYVERSSUFFIX d12667 1 a12668 1 QMAILDIR d12671 1 a12672 1 QMAIL_DAEMON_USER d12675 1 a12676 1 QMAIL_NOFILES_GROUP d12679 1 a12680 1 QMAIL_QMAIL_GROUP d12683 1 a12684 1 QMAIL_QUEUE_EXTRA d12687 1 a12688 1 QMAIL_REMOTE_USER d12691 1 a12692 1 QMAIL_SEND_USER d12695 1 a12696 1 QPOPPER_SPOOL_DIR d12699 1 a12700 1 RAKE_NAME d12703 1 a12704 1 RCD_DIR d12707 1 a12708 1 RCD_SCRIPTS d12711 1 a12712 1 RCD_SCRIPTS_EXAMPLEDIR d12715 1 a12716 1 RCD_SCRIPTS_SHELL d12719 1 a12720 1 RCD_SUBR d12723 1 a12724 1 READLINE_DEFAULT d12727 1 a12728 1 REAL_ROOT_GROUP d12731 1 a12732 1 RECURSIVE_MAKE d12735 1 a12736 1 REPLACE_AWK d12739 1 a12740 1 REPLACE_CSH d12743 1 a12744 1 REPLACE_PERL d12747 1 a12748 1 REPLACE_PHP d12751 1 a12752 1 REPLACE_RUBY d12755 1 a12756 1 REPLACE_RUBY_PAT d12759 1 a12760 1 REPLACE_TEXLUA d12763 1 a12764 1 REQD_DIRS_PERMS d12767 1 a12768 1 REQD_FILES_MODE d12771 1 a12772 1 RESOLV_AUTO_VARS d12775 1 a12776 1 RESOLV_LIBS d12779 1 a12780 1 ROCKSPEC_NAME d12783 1 a12784 1 ROOT_CMD d12787 1 a12788 1 ROOT_USER d12791 1 a12792 1 RPM d12795 1 a12796 1 RPM2PKG_PREFIX d12799 1 a12800 1 RPM2PKG_STRIP d12803 1 a12804 1 RPMFILES d12807 1 a12808 1 RPM_DB_PREFIX d12811 1 a12812 1 RSSH_RDIST_PATH d12815 1 a12816 1 RSSH_SCP_PATH d12819 1 a12820 1 RUBY d12823 1 a12824 1 RUBYGEM_NAME d12827 1 a12828 1 RUBY_ABI_VERSION d12831 1 a12832 1 RUBY_ARCHINC d12835 1 a12836 1 RUBY_BASE d12839 1 a12840 1 RUBY_BUILD_DOCUMENT d12843 1 a12844 1 RUBY_DOC d12847 1 a12848 1 RUBY_EG d12851 1 a12852 1 RUBY_EXTCONF d12855 1 a12856 1 RUBY_EXTCONF_DEBUG d12859 1 a12860 1 RUBY_GEM_BASE d12863 1 a12864 1 RUBY_LIB d12867 1 a12868 1 RUBY_NAME d12871 1 a12872 1 RUBY_PKGPREFIX d12875 1 a12876 1 RUBY_RAILS51_VERSION d12879 1 a12880 1 RUBY_RAILS60_VERSION d12883 1 a12884 1 RUBY_RAILS_DEFAULT d12887 1 a12888 1 RUBY_RAILS_STRICT_DEP d12891 1 a12892 1 RUBY_SETUP d12895 1 a12896 1 RUBY_SHLIBALIAS d12899 1 a12900 1 RUBY_SIMPLE_INSTALL d12903 1 a12904 1 RUBY_SITELIB d12907 1 a12908 1 RUBY_SITERIDIR d12911 1 a12912 1 RUBY_SRCDIR d12915 1 a12916 1 RUBY_SUFFIX d12919 1 a12920 1 RUBY_USE_PTHREAD d12923 1 a12924 1 RUBY_VENDORLIB d12927 1 a12928 1 RUBY_VER d12931 1 a12932 1 RUBY_VERSIONS_ACCEPTED d12935 1 a12936 1 RUBY_VERSION_DEFAULT d12939 1 a12940 1 RUBY_VER_DIR d12943 1 a12944 1 RUN_LDCONFIG d12947 1 a12948 1 SCO d12951 1 a12952 1 SCREWS_USER d12955 1 a12956 1 SCROLLKEEPER_DATADIR d12959 1 a12960 1 SCROLLKEEPER_UPDATEDB d12963 1 a12964 1 SERIAL_DEVICES d12967 1 a12968 1 SETGID_GAMES_PERMS d12971 1 a12972 1 SH d12975 1 a12976 1 SHORTNAME d12979 1 a12980 1 SILC_CLIENT_WITH_PERL d12983 1 a12984 1 SKIP_DEPENDS d12987 1 a12988 1 SMF_MANIFEST d12991 1 a12992 1 SMF_METHOD_SHELL d12995 1 a12996 1 SMF_NAME d12999 1 a13000 1 SMF_SRCDIR d13003 1 a13004 1 SNIPROXY_USER d13007 1 a13008 1 SPECIAL_PERMS d13011 1 a13012 1 SSH_SUID d13015 1 a13016 1 SSYNC_PAWD d13019 1 a13020 1 STRIP d13023 1 a13024 1 STRIP_DEBUG d13027 1 a13028 1 STRIP_FILES_SKIP d13031 1 a13032 1 SUBDIR d13035 1 a13036 1 SUBST_CLASSES d13039 1 a13040 1 SUBST_FILTER_CMD d13043 1 a13044 1 SUBST_NOOP_OK d13047 1 a13048 1 SUBST_SHOW_DIFF d13051 1 a13052 1 SUBST_STAGE d13055 1 a13056 1 SUNWSPROBASE d13059 1 a13060 1 SU_CMD d13063 1 a13064 1 SVN_REPO d13067 1 a13068 1 SVN_REVISION d13071 1 a13072 1 TERMINFO_DEFAULT d13075 1 a13076 1 TEST d13079 1 a13080 1 TEST_DIRS d13083 1 a13084 1 TEST_ENV_SHELL d13087 1 a13088 1 TEST_MAKE_FLAGS d13091 1 a13092 1 TEXLIVE_IGNORE_PATTERNS d13095 1 a13096 1 TEXLIVE_UNVERSIONED d13099 1 a13100 1 TEX_FORMATS d13103 1 a13104 1 TEX_HYPHEN_DEF d13107 1 a13108 1 THTTPD_LOG_FACILITY d13111 1 a13112 1 TOOLS_ALIASES d13115 1 a13116 1 TOOLS_ARGS d13119 1 a13120 1 TOOLS_CMD d13123 1 a13124 1 TOOLS_DIR d13127 1 a13128 1 TOOLS_GNU_MISSING d13131 1 a13132 1 TOOLS_NOOP d13135 1 a13136 1 TOOLS_SCRIPT d13139 1 a13140 1 TTF_FONTDIR d13143 1 a13144 1 TYPE d13147 1 a13148 1 UCSPI_SSL_GROUP d13151 1 a13152 1 UNLIMIT_RESOURCES d13155 1 a13156 1 UNPRIVILEGED_GROUP d13159 1 a13160 1 UNPRIVILEGED_USER d13163 1 a13164 1 UNWRAP_PATTERNS d13167 1 a13168 1 UPDATE_TARGET d13171 1 a13172 1 USERGROUP_PHASE d13175 1 a13176 1 USER_SPECIFIC_PKGS d13179 1 a13180 1 USE_APR d13183 1 a13184 1 USE_BUILTIN d13187 1 a13188 1 USE_CURSES d13191 1 a13192 1 USE_DB185 d13195 1 a13196 1 USE_GAMESGROUP d13199 1 a13200 1 USE_IMAKE d13203 1 a13204 1 USE_JAVA2 d13207 1 a13208 1 USE_LIBTOOL d13211 1 a13212 1 USE_NETBSD_REPO d13215 1 a13216 1 USE_PKGSRC_GCC_RUNTIME d13219 1 a13220 1 USE_PKG_ADMIN_DIGEST d13223 1 a13224 1 USE_RUBY_INSTALL d13227 1 a13228 1 USE_RUBY_SETUP_PKG d13231 1 a13232 1 UUCP_GROUP d13235 1 a13236 1 VARBASE d13239 1 a13240 1 VIM_EXTRA_OPTS d13243 1 a13244 1 WCALC_CGIDIR d13247 1 a13248 1 WCALC_HTMLDIR d13251 1 a13252 1 WDM_MANAGERS d13255 1 a13256 1 WRKDIR d13259 1 a13260 1 WRKDIR_LOCKTYPE d13263 1 a13264 1 WRKOBJDIR d13267 1 a13268 1 X10_PORT d13271 1 a13272 1 X11BASE d13275 1 a13276 1 X11_TYPE d13279 1 a13280 1 X509_KEY d13283 1 a13284 1 XLOCK_DEFAULT_MODE d13287 1 a13288 1 XXX d13291 1 a13292 1 YES d13295 1 a13296 1 __stdc__ d13299 1 a13300 1 accept d13303 1 a13304 1 acquire-lock d13307 1 a13308 1 administrator d13311 1 a13312 1 alternatives d13315 1 a13316 1 asprintf d13319 1 a13320 1 autoconf d13323 1 a13324 1 autoreconf d13327 1 a13328 1 bash d13331 1 a13332 1 bin-install d13335 1 a13336 1 binpkg-list d13339 1 a13340 1 bootstrap-depends d13343 1 a13344 1 broken_on_platform d13347 1 a13348 1 bsd.prog.mk d13351 1 a13352 1 build-env d13355 1 a13356 1 buildlink-oss-soundcard-h d13359 1 a13360 1 c++ d13363 1 a13364 1 cce d13367 1 a13368 1 ceil d13371 1 a13372 1 changes-entry d13375 1 a13376 1 check d13379 1 a13380 1 check-files d13383 1 a13384 1 check-vulnerable d13387 1 a13388 1 checksum-phase d13391 1 a13392 1 clean-depends d13395 1 a13396 1 commit d13399 1 a13400 1 compact d13403 1 a13404 1 conf d13407 1 a13408 1 config.sub d13411 1 a13412 1 configure d13415 1 a13416 1 configure-help d13419 1 a13420 1 connect d13423 1 a13424 1 cputime d13427 1 a13428 1 csh d13431 1 a13432 1 cvs d13435 1 a13436 1 declaration d13439 1 a13440 1 defined d13443 1 a13444 1 dependencies d13447 1 a13448 1 depends-checksum d13451 1 a13452 1 deps d13455 1 a13456 1 destdir d13459 1 a13460 1 distclean d13463 1 a13464 1 dl d13467 1 a13468 1 do-build d13471 1 a13472 1 do-clean d13475 1 a13476 1 do-configure-post-hook d13479 1 a13480 1 do-fetch d13483 1 a13484 1 emul d13487 1 a13488 1 emul-fetch d13491 1 a13492 1 emulator d13495 1 a13496 1 endian d13499 1 a13500 1 enomem d13503 1 a13504 1 errx d13507 1 a13508 1 exp d13511 1 a13512 1 fabs d13515 1 a13516 1 features d13519 1 a13520 1 fetch-list d13523 1 a13524 1 forbids d13527 1 a13528 1 format d13531 1 a13532 1 fortify_source d13535 1 a13536 1 friend d13539 1 a13540 1 fts_close d13543 1 a13544 1 fts_read d13547 1 a13548 1 gcc d13551 1 a13552 1 gethostbyname d13555 1 a13556 1 getopt_long d13559 1 a13560 1 getservbyname d13563 1 a13564 1 getservent d13567 1 a13568 1 git d13571 1 a13572 1 gitlab d13575 1 a13576 1 gnu d13579 1 a13580 1 go d13583 1 a13584 1 golang d13587 1 a13588 1 hashbang d13591 1 a13592 1 help d13595 1 a13596 1 imake d13599 1 a13600 1 inet_aton d13603 1 a13604 1 interpreter d13607 1 a13608 1 iso d13611 1 a13612 1 krb d13615 1 a13616 1 ksh d13619 1 a13620 1 latex d13623 1 a13624 1 libintl_gettext d13627 1 a13628 1 libnbcompat d13631 1 a13632 1 libtool d13635 1 a13636 1 license d13639 1 a13640 1 little-endian d13643 1 a13644 1 locking d13647 1 a13648 1 make d13651 1 a13652 1 memory d13655 1 a13656 1 meta d13659 1 a13660 1 meta_package d13663 1 a13664 1 mk.conf d13667 1 a13668 1 mount d13671 1 a13672 1 mremap d13675 1 a13676 1 nbcompat d13679 1 a13680 1 obstack_ptr_grow d13683 1 a13684 1 only d13687 1 a13688 1 options d13691 1 a13692 1 order d13695 1 a13696 1 override-intltool d13699 1 a13700 1 package d13703 1 a13704 1 path d13707 1 a13708 1 paxctl d13711 1 a13712 1 pc d13715 1 a13716 1 perl5 d13719 1 a13720 1 php d13723 1 a13724 1 pkg-config d13727 1 a13728 1 platform d13731 1 a13732 1 post-extract d13735 1 a13736 1 post-wrapper d13739 1 a13740 1 pre-configure d13743 1 a13744 1 pre-extract d13747 1 a13748 1 print-go-deps d13751 1 a13752 1 print-summary-data d13755 1 a13756 1 pypi d13759 1 a13760 1 readme-all d13763 1 a13764 1 recvfrom d13767 1 a13768 1 release-localbase-lock d13771 1 a13772 1 relro d13775 1 a13776 1 reorder d13779 1 a13780 1 replace_interpreter d13783 1 a13784 1 resolv d13787 1 a13788 1 ruby d13791 1 a13792 1 sendfile d13795 1 a13796 1 setenv d13799 1 a13800 1 setprogname d13803 1 a13804 1 sh d13807 1 a13808 1 show d13811 1 a13812 1 show-build-defs d13815 1 a13816 1 show-deps d13819 1 a13820 1 show-downlevel d13823 1 a13824 1 show-tools d13827 1 a13828 1 show-vars d13831 1 a13832 1 socket d13835 1 a13836 1 st_mode d13839 1 a13840 1 strcasestr d13843 1 a13844 1 strip d13847 1 a13848 1 strnlen d13851 1 a13852 1 subst d13855 1 a13856 1 subversion d13859 1 a13860 1 sunpro d13863 1 a13864 1 svn d13867 1 a13868 1 test d13871 1 a13872 1 tex d13875 1 a13876 1 tmp d13879 1 a13880 1 tools d13883 1 a13884 1 type d13887 1 a13888 1 undefined d13891 1 a13892 1 unlimit d13895 1 a13896 1 unprivileged-install-hook d13899 1 a13900 1 update d13903 1 a13904 1 upload-distfiles d13907 1 a13908 1 user d13911 1 a13912 1 vasprintf d13915 1 a13916 1 vsnprintf d13919 1 a13920 1 warning d13923 1 a13924 1 warnx d13927 1 a13928 1 wattr_on d13931 1 a13932 1 wrapper d13935 1 a13936 1   @ 1.300 log @doc/pkgsrc.*: regen @ text @d4462 11 a4472 7 yes instead. What happens in the configure phase is roughly:

    .for d in ${CONFIGURE_DIRS}
            cd ${WRKSRC} \
            && cd ${d} \
            && env ${CONFIGURE_ENV} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}
    d4513 3
    a4515 2
    

    For building a package, a rough equivalent of the following code is executed.

    d4517 2 a4518 3 .for d in ${BUILD_DIRS} cd ${WRKSRC} \ && cd ${d} \ d4520 1 a4520 1 ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} \ d4556 13 a4568 12

    In the install phase, a rough equivalent of the following code is executed. Additionally, before and after this code, much magic is performed to do consistency checks, registering the package, and so on.

    .for d in ${INSTALL_DIRS}
            cd ${WRKSRC} \
            && cd ${d} \
            && env ${MAKE_ENV} \
                ${MAKE_PROGRAM} ${INSTALL_MAKE_FLAGS} \
                    -f ${MAKE_FILE} \
                    ${INSTALL_TARGET}
    @
    
    
    1.299
    log
    @doc/pkgsrc.*: regen
    @
    text
    @d6222 1
    a6222 1
    	  is the actual dependency recorded in the installed
    d6226 1
    a6226 1
    	  variable should be set to the first version of the
    d6340 2
    a6341 1
    

    These two variables differ in that one describes source d6346 6 a6351 1

    Changes to the d6353 2 a6354 6 variable in a buildlink3.mk file happen very rarely. One possible reason is that all packages depending on this already need a newer version. In case it is bumped see the description below.

    The most common example of an ABI change is that the major version of a shared library is increased. In this case, d6356 6 a6361 4 should be adjusted to require at least the new package version. Then the packages that depend on this package need their PKGREVISIONs increased and, if they have buildlink3.mk files, their d6363 16 a6378 7 adjusted, too. This is needed so pkgsrc will require the correct package dependency and not settle for an older one when building the source.

    See Section 21.1.5, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_ABI_DEPENDS and ABI_DEPENDS definitions.

    d6383 4 a6386 3 as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

    d6606 5 @ 1.298 log @doc/pkgsrc.*: regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.36 2020/01/03 15:55:24 leot Exp $

    d173 1 a173 1
    12. Creating a new pkgsrc package from scratch
    d175 3 a177 1
    12.1. Common types of packages
    d179 5 a183 4
    12.1.1. Perl modules
    12.1.2. Python modules and programs
    12.1.3. R packages
    12.1.4. TeXlive packages
    d185 9 a193 2
    12.2. Examples
    12.2.1. How the www/nvu package came into pkgsrc
    d195 1 a195 1
    13. Package components - files, directories and contents
    d197 5 a201 3
    13.1. Makefile
    13.2. distinfo
    13.3. patches/*
    d203 2 a204 5
    13.3.1. Structure of a single patch file
    13.3.2. Creating patch files
    13.3.3. Sources where the patch files come from
    13.3.4. Patching guidelines
    13.3.5. Feedback to the author
    d206 16 a221 2
    13.4. Other mandatory files
    13.5. Optional files
    d223 4 a226 3
    13.5.1. Files affecting the binary package
    13.5.2. Files affecting the build process
    13.5.3. Files affecting nothing at all
    d228 2 a229 2
    13.6. work*
    13.7. files/*
    d231 1 a231 1
    14. Programming in Makefiles
    d233 4 a236 4
    14.1. Caveats
    14.2. Makefile variables
    14.2.1. Naming conventions
    14.3. Code snippets
    d238 4 a241 4
    14.3.1. Adding things to a list
    14.3.2. Echoing a string exactly as-is
    14.3.3. Passing CFLAGS to GNU configure scripts
    14.3.4. Handling possibly empty variables
    d244 1 a244 1
    15. PLIST issues
    d246 4 a249 9
    15.1. RCS ID
    15.2. Semi-automatic PLIST generation
    15.3. Tweaking output of make print-PLIST
    15.4. Variable substitution in PLIST
    15.5. Man page compression
    15.6. Changing PLIST source with PLIST_SRC
    15.7. Platform-specific and differing PLISTs
    15.8. Build-specific PLISTs
    15.9. Sharing directories between packages
    d251 1 a251 1
    16. Buildlink methodology
    d253 8 a260 2
    16.1. Converting packages to use buildlink3
    16.2. Writing buildlink3.mk files
    d262 2 a263 2
    16.2.1. Anatomy of a buildlink3.mk file
    16.2.2. Updating d269 7 a275 1
    16.3. Writing builtin.mk files
    d277 9 a285 2
    16.3.1. Anatomy of a builtin.mk file
    16.3.2. Global preferences for native or pkgsrc software
    d287 6 d294 1 a294 1
    17. The pkginstall framework
    d296 12 a307 56
    17.1. Files and directories outside the installation prefix
    17.1.1. Directory manipulation
    17.1.2. File manipulation
    17.2. Configuration files
    17.2.1. How PKG_SYSCONFDIR is set
    17.2.2. Telling the software where configuration files are
    17.2.3. Patching installations
    17.2.4. Disabling handling of configuration files
    17.3. System startup scripts
    17.3.1. Disabling handling of system startup scripts
    17.4. System users and groups
    17.5. System shells
    17.5.1. Disabling shell registration
    17.6. Fonts
    17.6.1. Disabling automatic update of the fonts databases
    18. Options handling
    18.1. Global default options
    18.2. Converting packages to use bsd.options.mk
    18.3. Option Names
    18.4. Determining the options of dependencies
    19. The build process
    19.1. Introduction
    19.2. Program location
    19.3. Directories used during the build process
    19.4. Running a phase
    19.5. The fetch phase
    19.5.1. What to fetch and where to get it from
    19.5.2. How are the files fetched?
    19.6. The checksum phase
    19.7. The extract phase
    19.8. The patch phase
    19.9. The tools phase
    19.10. The wrapper phase
    19.11. The configure phase
    19.12. The build phase
    19.13. The test phase
    19.14. The install phase
    19.15. The package phase
    19.16. Cleaning up
    19.17. Other helpful targets
    20. Tools needed for building or running
    20.1. Tools for pkgsrc builds
    20.2. Tools needed by packages
    20.3. Tools provided by platforms
    d379 7 a385 1
    22. Debugging
    a397 7
    25. GNOME packaging and porting
    25.1. Meta packages
    25.2. Packaging a GNOME application
    25.3. Updating GNOME to a newer version
    25.4. Patching guidelines
    d401 1 a401 1
    26. Design of the pkgsrc infrastructure
    d403 3 a405 3
    26.1. The meaning of variable definitions
    26.2. Avoiding problems before they arise
    26.3. Variable evaluation
    d407 2 a408 2
    26.3.1. At load time
    26.3.2. At runtime
    d410 2 a411 2
    26.4. How can variables be specified?
    26.5. Designing interfaces for Makefile fragments
    d413 2 a414 2
    26.5.1. Procedures with parameters
    26.5.2. Actions taken on behalf of parameters
    d416 1 a416 1
    26.6. The order in which files are loaded
    d418 2 a419 2
    26.6.1. The order in bsd.prefs.mk
    26.6.2. The order in bsd.pkg.mk
    d422 1 a422 1
    27. Regression tests
    d424 2 a425 2
    27.1. Running the regression tests
    27.2. Adding a new regression test
    d427 2 a428 2
    27.2.1. Overridable functions
    27.2.2. Helper functions
    d431 2 a432 2
    28. Porting pkgsrc
    28.1. Porting pkgsrc to a new operating system
    d474 1 a474 1
    13.1. Patching examples d476 1 a476 1
    25.1. PLIST handling for GNOME packages d1755 1 a1755 1 See Section 13.3, “patches/* for more d2079 1 a2079 1

    See Section 19.17, “Other helpful targets”.

    d3061 1 a3061 1 the pkgsrc compiler wrappers.

    d3114 1 a3114 1
    12. Creating a new pkgsrc package from scratch
    d3116 3 a3118 1
    12.1. Common types of packages
    d3120 5 a3124 4
    12.1.1. Perl modules
    12.1.2. Python modules and programs
    12.1.3. R packages
    12.1.4. TeXlive packages
    d3126 9 a3134 2
    12.2. Examples
    12.2.1. How the www/nvu package came into pkgsrc
    d3136 1 a3136 1
    13. Package components - files, directories and contents
    d3138 5 a3142 3
    13.1. Makefile
    13.2. distinfo
    13.3. patches/*
    d3144 2 a3145 5
    13.3.1. Structure of a single patch file
    13.3.2. Creating patch files
    13.3.3. Sources where the patch files come from
    13.3.4. Patching guidelines
    13.3.5. Feedback to the author
    d3147 16 a3162 2
    13.4. Other mandatory files
    13.5. Optional files
    d3164 4 a3167 3
    13.5.1. Files affecting the binary package
    13.5.2. Files affecting the build process
    13.5.3. Files affecting nothing at all
    d3169 2 a3170 2
    13.6. work*
    13.7. files/*
    d3172 1 a3172 1
    14. Programming in Makefiles
    d3174 4 a3177 4
    14.1. Caveats
    14.2. Makefile variables
    14.2.1. Naming conventions
    14.3. Code snippets
    d3179 4 a3182 4
    14.3.1. Adding things to a list
    14.3.2. Echoing a string exactly as-is
    14.3.3. Passing CFLAGS to GNU configure scripts
    14.3.4. Handling possibly empty variables
    d3185 1 a3185 1
    15. PLIST issues
    d3187 4 a3190 9
    15.1. RCS ID
    15.2. Semi-automatic PLIST generation
    15.3. Tweaking output of make print-PLIST
    15.4. Variable substitution in PLIST
    15.5. Man page compression
    15.6. Changing PLIST source with PLIST_SRC
    15.7. Platform-specific and differing PLISTs
    15.8. Build-specific PLISTs
    15.9. Sharing directories between packages
    d3192 1 a3192 1
    16. Buildlink methodology
    d3194 8 a3201 2
    16.1. Converting packages to use buildlink3
    16.2. Writing buildlink3.mk files
    d3203 2 a3204 2
    16.2.1. Anatomy of a buildlink3.mk file
    16.2.2. Updating d3210 7 a3216 1
    16.3. Writing builtin.mk files
    d3218 9 a3226 2
    16.3.1. Anatomy of a builtin.mk file
    16.3.2. Global preferences for native or pkgsrc software
    d3228 6 d3235 1 a3235 1
    17. The pkginstall framework
    d3237 12 a3248 56
    17.1. Files and directories outside the installation prefix
    17.1.1. Directory manipulation
    17.1.2. File manipulation
    17.2. Configuration files
    17.2.1. How PKG_SYSCONFDIR is set
    17.2.2. Telling the software where configuration files are
    17.2.3. Patching installations
    17.2.4. Disabling handling of configuration files
    17.3. System startup scripts
    17.3.1. Disabling handling of system startup scripts
    17.4. System users and groups
    17.5. System shells
    17.5.1. Disabling shell registration
    17.6. Fonts
    17.6.1. Disabling automatic update of the fonts databases
    18. Options handling
    18.1. Global default options
    18.2. Converting packages to use bsd.options.mk
    18.3. Option Names
    18.4. Determining the options of dependencies
    19. The build process
    19.1. Introduction
    19.2. Program location
    19.3. Directories used during the build process
    19.4. Running a phase
    19.5. The fetch phase
    19.5.1. What to fetch and where to get it from
    19.5.2. How are the files fetched?
    19.6. The checksum phase
    19.7. The extract phase
    19.8. The patch phase
    19.9. The tools phase
    19.10. The wrapper phase
    19.11. The configure phase
    19.12. The build phase
    19.13. The test phase
    19.14. The install phase
    19.15. The package phase
    19.16. Cleaning up
    19.17. Other helpful targets
    20. Tools needed for building or running
    20.1. Tools for pkgsrc builds
    20.2. Tools needed by packages
    20.3. Tools provided by platforms
    d3320 7 a3326 1
    22. Debugging
    a3338 7
    25. GNOME packaging and porting
    25.1. Meta packages
    25.2. Packaging a GNOME application
    25.3. Updating GNOME to a newer version
    25.4. Patching guidelines
    d3387 1 a3387 1 Chapter 12. Creating a new pkgsrc package from scratch d3391 16 a3406 6
    12.1. Common types of packages
    12.1.1. Perl modules
    12.1.2. Python modules and programs
    12.1.3. R packages
    12.1.4. TeXlive packages
    d3408 2 a3409 2
    12.2. Examples
    12.2.1. How the www/nvu package came into pkgsrc
    d3412 39 a3450 47

    When you find a package that is not yet in pkgsrc, you most likely have a URL from where you can download the source code. Starting with this URL, creating a package involves only a few steps.

    1. First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

    2. Then, choose one of the top-level directories as the category in which you want to place your package. You can also create a directory of your own (maybe called local). In that category directory, create another directory for your package and change into it.

    3. Run the program url2pkg, which will ask you for a URL. Enter the URL of the distribution file (in most cases a .tar.gz file) and watch how the basic ingredients of your package are created automatically. The distribution file is extracted automatically to fill in some details in the Makefile that would otherwise have to be done manually.

    4. Examine the extracted files to determine the dependencies of your package. Ideally, this is mentioned in some README file, but things may differ. For each of these dependencies, look where it exists in pkgsrc, and if there is a file called buildlink3.mk in that directory, add a line to your package Makefile which includes that file just before the last line. If the buildlink3.mk file does not exist, it must be created first. The buildlink3.mk file makes sure that the package's include files and libraries are provided.

      If you just need binaries from a package, add a DEPENDS line to the Makefile, which specifies the version of the dependency and where it can be found in pkgsrc. This line should be placed in the third paragraph. If the dependency is only needed for building the package, but not when using it, use TOOL_DEPENDS or BUILD_DEPENDS instead of DEPENDS. The difference between TOOL_DEPENDS and BUILD_DEPENDS occurs when cross-compiling: TOOL_DEPENDS are native packages, i.e. packages for the architecture where the package is built; BUILD_DEPENDS are target packages, i.e. packages for the architecture for which the package is built. There is also TEST_DEPENDS, which is used to specify a dependency used only for testing the resulting package built, using the upstream project's included test suite. Your package may then look like this:

      d3452 8 a3459 11 [...] TOOL_DEPENDS+= libxslt-[0-9]*:../../textproc/libxslt DEPENDS+= screen-[0-9]*:../../misc/screen DEPENDS+= screen>=4.0:../../misc/screen [...] .include "../../category/package/buildlink3.mk" .include "../../devel/glib2/buildlink3.mk" .include "../../mk/bsd.pkg.mk" d3462 97 a3558 36
    5. Run pkglint to see what things still need to be done to make your package a good one. If you don't know what pkglint's warnings want to tell you, try pkglint --explain or pkglint -e, which outputs additional explanations.

    6. In many cases the package is not yet ready to build. You can find instructions for the most common cases in the next section, Section 12.1, “Common types of packages”. After you have followed the instructions over there, you can hopefully continue here.

    7. Run bmake clean to clean the working directory from the extracted files. Besides these files, a lot of cache files and other system information has been saved in the working directory, which may become wrong after you edited the Makefile.

    8. Now, run bmake to build the package. For the various things that can go wrong in this phase, consult Chapter 21, Making your package work.

    9. When the package builds fine, the next step is to install the package. Run bmake install and hope that everything works.

    10. Up to now, the file PLIST, which contains a list of the files that are installed by the package, is nearly empty. Run bmake print-PLIST >PLIST to generate a probably correct list. Check the file using your preferred text editor to see if the list of files looks plausible.

    11. Run pkglint again to see if the generated PLIST contains garbage or not.

    12. When you ran bmake install, the package has been registered in the database of installed files, but with an empty list of files. To fix this, run bmake deinstall and bmake install again. Now the package is registered with the list of files from PLIST.

    13. Run bmake package to create a binary package from the set of installed files.

    d3561 36 a3596 1 12.1. Common types of packages d3599 25 a3623 3 12.1.1. Perl modules

    Simple Perl modules are handled automatically by url2pkg, including dependencies.

    d3627 33 a3659 60 12.1.2. Python modules and programs

    Python modules and programs packages are easily created using a set of predefined variables.

    If some Python versions are not supported by the software, set the PYTHON_VERSIONS_INCOMPATIBLE variable to the Python versions that are not supported, e.g.

    PYTHON_VERSIONS_INCOMPATIBLE=       27
    

    If the packaged software is a Python module, include one of ../../lang/python/egg.mk, ../../lang/python/distutils.mk, or ../../lang/python/extension.mk.

    Most Python packages use either distutils or easy-setup/setuptools (eggs). If the packaged software is using setuptools, you only need to include ../../lang/python/egg.mk. Otherwise, if the software uses distutils, include ../../lang/python/distutils.mk, so pkgsrc will use this framework. distutils uses a script called setup.py; if the distutils driver is not called setup.py, set the PYSETUP variable to the name of the script.

    Either way, the package directory should be called py-software and PKGNAME should be set to ${PYPKGPREFIX}-${DISTNAME}, e.g.

    DISTNAME=   foopymodule-1.2.10
    PKGNAME=    ${PYPKGPREFIX}-${DISTNAME}
    

    If it is an application, include ../../lang/python/application.mk. In order to correctly set the path to the Python interpreter, use the REPLACE_PYTHON variable and set it to the list of files (paths relative to WRKSRC) that must be corrected. For example:

    REPLACE_PYTHON=   *.py
    

    Some Python modules have separate distributions for Python-2.x and Python-3.x support. In pkgsrc this is handled by the versioned_dependencies.mk file. Set PYTHON_VERSIONED_DEPENDENCIES to the list of packages that should be depended upon and include ../../lang/python/versioned_dependencies.mk, then the pkgsrc infrastructure will depend on the appropriate package version. For example:

    PYTHON_VERSIONED_DEPENDENCIES=dialog
    

    Look inside versioned_dependencies.mk for a list of supported packages.

    d3663 24 a3686 12 12.1.3. R packages

    Simple R packages from CRAN are handled automatically by R2pkg, which is available in pkgtools/R2pkg. Individual packages (and optionally their dependencies) may be created and updated. R packages generally follow the same form, and most of the relevant information needed is contained in a DESCRIPTION file as part of each R package on CRAN. Consequently, R2pkg downloads that information and creates or updates a package in the canonical form. The resulting package should be reviewed for correctness.

    d3690 40 a3729 17 12.1.4. TeXlive packages

    TeXlive packages from CTAN are handled automatically by texlive2pkg, which is available in pkgtools/texlive2pkg.

    If the TeXlive package name is not known, it may be useful to search CTAN. A Contained in field on the package page typically identifies the basename of the package file in the TeXlive archive.

    If the TeXlive package name is known, download the files from the TeXlive archive. For package foo, you will need to download foo.tar.xz. Most TeXlive packages also have associated documentation packages, so download foo.doc.tar.xz at the same time. These files should be placed in the appropriate category directory, which is often but not always print. Then run the following command in the category directory.

    d3731 4 a3734 1 texlive2pkg foo.tar.xz foo.doc.tar.xz d3736 2 a3737 10

    This will create two packages, tex-foo and tex-foo-doc. Be sure to check that both packages are correct.

    Finally, CTAN currently does not include version information in package filenames and changes their contents periodically when updates occur. Consequently, pkgsrc avoids downloading distfiles directly from CTAN and instead relies on the pkgsrc archives. For each new or updated TeXlive package, e.g., the main one and the corresponding documentation, upload the distfiles with the following command in each package directory.

    d3739 1 a3739 1 make upload-distfiles d3741 5 a3745 15

    12.2. Examples

    12.2.1. How the www/nvu package came into pkgsrc

    12.2.1.1. The initial package

    Looking at the file pkgsrc/doc/TODO, I saw that the nvu package has not yet been imported into pkgsrc. As the description says it has to do with the web, the obvious choice for the category is www.

    d3747 3 a3749 2 $ mkdir www/nvu $ cd www/nvu d3751 2 a3752 2

    The web site says that the sources are available as a tar file, so I fed that URL to the url2pkg program:

    d3754 3 a3756 1 $ url2pkg http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2 d3758 5 a3762 6

    My editor popped up, and I added a PKGNAME line below the DISTNAME line, as the package name should not have the word sources in it. I also filled in the MAINTAINER, HOMEPAGE and COMMENT fields. Then the package Makefile looked like that:

    d3764 10 a3773 15 # $NetBSD $ # DISTNAME= nvu-1.0-sources PKGNAME= nvu-1.0 CATEGORIES= www MASTER_SITES= http://cvs.nvu.com/download/ EXTRACT_SUFX= .tar.bz2 MAINTAINER= rillig@@NetBSD.org HOMEPAGE= http://cvs.nvu.com/ COMMENT= Web Authoring System # url2pkg-marker (please do not remove this line.) .include "../../mk/bsd.pkg.mk" d3775 2 a3776 5

    On the first line of output above, an artificial space has been added between NetBSD and $, this is a workaround to prevent CVS expanding to the filename of the guide.

    Then, I quit the editor and watched pkgsrc downloading a large source archive:

    d3778 10 a3787 19 url2pkg> Running "make makesum" ... => Required installed package digest>=20010302: digest-20060826 found => Fetching nvu-1.0-sources.tar.bz2 Requesting http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2 100% |*************************************| 28992 KB 150.77 KB/s00:00 ETA 29687976 bytes retrieved in 03:12 (150.77 KB/s) url2pkg> Running "make extract" ... => Required installed package digest>=20010302: digest-20060826 found => Checksum SHA1 OK for nvu-1.0-sources.tar.bz2 => Checksum RMD160 OK for nvu-1.0-sources.tar.bz2 work.bacc -> /tmp/roland/pkgsrc/www/nvu/work.bacc ===> Installing dependencies for nvu-1.0 ===> Overriding tools for nvu-1.0 ===> Extracting for nvu-1.0 url2pkg> Adjusting the Makefile. Remember to correct CATEGORIES, HOMEPAGE, COMMENT, and DESCR when you're done! Good luck! (See pkgsrc/doc/pkgsrc.txt for some more help :-) d3789 29 d3819 37 a3855 9

    12.2.1.2. Fixing all kinds of problems to make the package work

    Now that the package has been extracted, let's see what's inside it. The package has a README.txt, but that only says something about mozilla, so it's probably useless for seeing what dependencies this package has. But since there is a GNU configure script in the package, let's hope that it will complain about everything it needs.

    d3857 1 a3857 12 $ bmake => Required installed package digest>=20010302: digest-20060826 found => Checksum SHA1 OK for nvu-1.0-sources.tar.bz2 => Checksum RMD160 OK for nvu-1.0-sources.tar.bz2 ===> Patching for nvu-1.0 ===> Creating toolchain wrappers for nvu-1.0 ===> Configuring for nvu-1.0 [...] configure: error: Perl 5.004 or higher is required. [...] WARNING: Please add USE_TOOLS+=perl to the package Makefile. [...] d3859 26 a3884 6

    That worked quite well. So I opened the package Makefile in my editor, and since it already has a USE_TOOLS line, I just appended perl to it. Since the dependencies of the package have changed now, and since a perl wrapper is automatically installed in the tools phase, I need to build the package from scratch.

    d3886 1 a3886 7 $ bmake clean ===> Cleaning for nvu-1.0 $ bmake [...] *** /tmp/roland/pkgsrc/www/nvu/work.bacc/.tools/bin/make is not \ GNU Make. You will not be able to build Mozilla without GNU Make. [...] d3888 83 a3970 97

    So I added gmake to the USE_TOOLS line and tried again (from scratch).

    [...]
    checking for GTK - version >= 1.2.0... no
    *** Could not run GTK test program, checking why...
    [...]
    

    Now to the other dependencies. The first question is: Where is the GTK package hidden in pkgsrc?

    $ echo ../../*/gtk*
    [many packages ...]
    $ echo ../../*/gtk
    ../../x11/gtk
    $ echo ../../*/gtk2
    ../../x11/gtk2
    $ echo ../../*/gtk2/bui*
    ../../x11/gtk2/buildlink3.mk
    

    The first try was definitely too broad. The second one had exactly one result, which is very good. But there is one pitfall with GNOME packages. Before GNOME 2 had been released, there were already many GNOME 1 packages in pkgsrc. To be able to continue to use these packages, the GNOME 2 packages were imported as separate packages, and their names usually have a 2 appended. So I checked whether this was the case here, and indeed it was.

    Since the GTK2 package has a buildlink3.mk file, adding the dependency is very easy. I just inserted an .include line before the last line of the package Makefile, so that it now looks like this:

    [...]
    .include "../../x11/gtk2/buildlink3.mk"
    .include "../../mk/bsd.pkg.mk
    

    After another bmake clean && bmake, the answer was:

    [...]
    checking for gtk-config... /home/roland/pkg/bin/gtk-config
    checking for GTK - version >= 1.2.0... no
    *** Could not run GTK test program, checking why...
    *** The test program failed to compile or link. See the file config.log for the
    *** exact error that occured. This usually means GTK was incorrectly installed
    *** or that you have moved GTK since it was installed. In the latter case, you
    *** may want to edit the gtk-config script: /home/roland/pkg/bin/gtk-config
    configure: error: Test for GTK failed.
    [...]
    

    In this particular case, the assumption that every package prefers GNOME 2 had been wrong. The first of the lines above told me that this package really wanted to have the GNOME 1 version of GTK. If the package had looked for GTK2, it would have looked for pkg-config instead of gtk-config. So I changed the x11/gtk2 to x11/gtk in the package Makefile, and tried again.

    [...]
    cc -o xpidl.o -c -DOSTYPE=\"NetBSD3\" -DOSARCH=\"NetBSD\"  [...]
    In file included from xpidl.c:42:
    xpidl.h:53:24: libIDL/IDL.h: No such file or directory
    In file included from xpidl.c:42:
    xpidl.h:132: error: parse error before "IDL_ns"
    [...]
    

    The package still does not find all of its dependencies. Now the question is: Which package provides the libIDL/IDL.h header file?

    $ echo ../../*/*idl*
    ../../devel/py-idle ../../wip/idled ../../x11/acidlaunch
    $ echo ../../*/*IDL*
    ../../net/libIDL
    

    Let's take the one from the second try. So I included the ../../net/libIDL/buildlink3.mk file and tried again. But the error didn't change. After digging through some of the code, I concluded that the build process of the package was broken and couldn't have ever worked, but since the Mozilla source tree is quite large, I didn't want to fix it. So I added the following to the package Makefile and tried again:

    CPPFLAGS+=              -I${BUILDLINK_PREFIX.libIDL}/include/libIDL-2.0
    BUILDLINK_TRANSFORM+=   l:IDL:IDL-2
    

    The latter line is needed because the package expects the library libIDL.so, but only libIDL-2.so is available. So I told the compiler wrapper to rewrite that on the fly.

    The next problem was related to a recent change of the FreeType interface. I looked up in www/seamonkey which patch files were relevant for this issue and copied them to the patches directory. Then I retried, fixed the patches so that they applied cleanly and retried again. This time, everything worked.

    d3972 12 a3983 3

    12.2.1.3. Installing the package

    d3985 1 a3985 5 $ bmake CHECK_FILES=no install [...] $ bmake print-PLIST >PLIST $ bmake deinstall $ bmake install a3988 2
    d3991 1 a3991 1 Chapter 13. Package components - files, directories and contents
    d3995 21 a4015 19
    13.1. Makefile
    13.2. distinfo
    13.3. patches/*
    13.3.1. Structure of a single patch file
    13.3.2. Creating patch files
    13.3.3. Sources where the patch files come from
    13.3.4. Patching guidelines
    13.3.5. Feedback to the author
    13.4. Other mandatory files
    13.5. Optional files
    13.5.1. Files affecting the binary package
    13.5.2. Files affecting the build process
    13.5.3. Files affecting nothing at all
    13.6. work*
    13.7. files/*
    a4017 3

    Whenever you're preparing a package, there are a number of files involved which are described in the following sections.

    d4020 41 a4060 13 13.1. Makefile

    Building, installation and creation of a binary package are all controlled by the package's Makefile. The Makefile describes various things about a package, for example from where to get it, how to configure, build, and install it.

    A package Makefile contains several sections that describe the package.

    In the first section there are the following variables, which should appear exactly in the order given here. The order and grouping of the variables is mostly historical and has no further meaning.

    d4062 69 a4130 127
  • DISTNAME is the basename of the distribution file to be downloaded from the package's website.

  • PKGNAME is the name of the package, as used by pkgsrc. You need to provide it if DISTNAME (which is the default) is not a good name for the package in pkgsrc or DISTNAME is not provided (no distribution file is required). Usually it is the pkgsrc directory name together with the version number. It must match the regular expression ^[A-Za-z0-9][A-Za-z0-9-_.+]*$, that is, it starts with a letter or digit, and contains only letters, digits, dashes, underscores, dots and plus signs.

  • CATEGORIES is a list of categories which the package fits in. You can choose any of the top-level directories of pkgsrc for it.

    Currently the following values are available for CATEGORIES. If more than one is used, they need to be separated by spaces:

    archivers     cross         geography     meta-pkgs     security
    audio         databases     graphics      misc          shells
    benchmarks    devel         ham           multimedia    sysutils
    biology       editors       inputmethod   net           textproc
    cad           emulators     lang          news          time
    chat          finance       mail          parallel      wm
    comms         fonts         math          pkgtools      www
    converters    games         mbone         print         x11
    
  • MASTER_SITES, DYNAMIC_MASTER_SITES, DIST_SUBDIR, EXTRACT_SUFX and DISTFILES are discussed in detail in Section 19.5, “The fetch phase”.

  • The second section contains information about separately downloaded patches, if any.

    • PATCHFILES: Name(s) of additional files that contain distribution patches. There is no default. pkgsrc will look for them at PATCH_SITES. They will automatically be uncompressed before patching if the names end with .gz or .Z.

    • PATCH_SITES: Primary location(s) for distribution patch files (see PATCHFILES above) if not found locally.

    • PATCH_DIST_STRIP: an argument to patch(1) that sets the pathname strip count to help find the correct files to patch. It defaults to -p0.

    The third section contains the following variables.

    • MAINTAINER is the email address of the person who feels responsible for this package, and who is most likely to look at problems or questions regarding this package which have been reported with send-pr(1). Other developers may contact the MAINTAINER before making changes to the package, but are not required to do so. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to .

    • OWNER should be used instead of MAINTAINER when you do not want other developers to update or change the package without contacting you first. A package Makefile should contain one of MAINTAINER or OWNER, but not both.

    • HOMEPAGE is a URL where users can find more information about the package.

    • COMMENT is a one-line description of the package (should not include the package name).

    • LICENSE indicates the license(s) applicable for the package. See Section 21.1.3, “Handling licenses” for further details.

    Other variables that affect the build:

    • WRKSRC: The directory where the interesting distribution files of the package are found. The default is ${WRKDIR}/${DISTNAME}, which works for most packages.

      If a package doesn't create a subdirectory for itself (most GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC=${WRKDIR}.

      If a package doesn't create a subdirectory with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}, for example WRKSRC=${WRKDIR}/${DISTNAME}/unix. See lang/tcl and x11/tk for other examples.

      The name of the working directory created by pkgsrc is taken from the WRKDIR_BASENAME variable. By default, its value is work. If you want to use the same pkgsrc tree for building different kinds of binary packages, you can change the variable according to your needs. Two other variables handle common cases of setting WRKDIR_BASENAME individually. If OBJHOSTNAME is defined in mk.conf, the first component of the host's name is attached to the directory name. If OBJMACHINE is defined, the platform name is attached, which might look like work.i386 or work.sparc.

    Please pay attention to the following gotchas:

    • Add MANCOMPRESSED if man pages are installed in compressed form by the package. For packages using BSD-style makefiles which honor MANZ, there is MANCOMPRESSED_IF_MANZ.

    • Replace /usr/local with ${PREFIX} in all files (see patches, below).

    • If the package installs any info files, see Section 21.6.7, “Packages installing info files”.

    d4134 7 a4140 24 13.2. distinfo

    The distinfo file contains the message digest, or checksum, of each distfile needed for the package. This ensures that the distfiles retrieved from the Internet have not been corrupted during transfer or altered by a malign force to introduce a security hole. To provide maximum security, all distfiles are protected using three different message digest algorithms (SHA1, RMD160, SHA512), as well as the file size.

    The distinfo file also contains the checksums for all the patches found in the patches directory (see Section 13.3, “patches/*). These checksums ensure that patches are only applied intentionally and that they don't accidentally change, e.g. when merging different changes together. They also make sure that new patches are actually added to CVS and old ones are removed. Too see whether the patches and the distinfo file match, run pkglint after changing the patches.

    To regenerate the distinfo file, use the make distinfo command.

    Some packages have different sets of distfiles depending on the platform, for example lang/openjdk8. These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d4144 5 a4148 9 13.3. patches/*

    Some packages don't work out-of-the box on the various platforms that are supported by pkgsrc. These packages need to be patched to make them work. The patch files can be found in the patches/ directory.

    In the patch phase, these patches are applied to the files in WRKSRC directory after extracting them, in alphabetic order.

    d4151 123 a4273 128 13.3.1. Structure of a single patch file

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, each patch should contain only changes for a single file, and no file should be patched by more than one patch file. This helps to keep future modifications simple.

    Each patch file is structured as follows: In the first line, there is the RCS Id of the patch itself. The second line should be empty for aesthetic reasons. After that, there should be a comment for each change that the patch does. There are a number of standard cases:

    • Patches for commonly known vulnerabilities should mention the vulnerability ID (CAN, CVE).

    • Patches that change source code should mention the platform and other environment (for example, the compiler) that the patch is needed for.

    The patch should be commented so that any developer who knows the code of the application can make some use of the patch. Special care should be taken for the upstream developers, since we generally want that they accept our patches, so we have less work in the future.

    13.3.2. Creating patch files

    One important thing to mention is to pay attention that no RCS IDs get stored in the patch files, as these will cause problems when later checked into the NetBSD CVS tree. Use the pkgdiff command from the pkgtools/pkgdiff package to avoid these problems.

    For even more automation, we recommend using mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff. The files in patches are replaced by new files, so carefully check if you want to take all the changes.

    When you have finished a package, remember to generate the checksums for the patch files by using the make makepatchsum command, see Section 13.2, “distinfo.

    When adding a patch that corrects a problem in the distfile (rather than e.g. enforcing pkgsrc's view of where man pages should go), send the patch as a bug report to the maintainer. This benefits non-pkgsrc users of the package, and usually makes it possible to remove the patch in future version.

    The file names of the patch files are usually of the form patch-path_to_file__with__underscores.c. Many packages still use the previous convention patch-[a-z][a-z], but new patches should be of the form containing the filename. mkpatches included in pkgtools/pkgdiff takes care of the name automatically.

    13.3.3. Sources where the patch files come from

    If you want to share patches between multiple packages in pkgsrc, e.g. because they use the same distfiles, set PATCHDIR to the path where the patch files can be found, e.g.:

    PATCHDIR=       ../../editors/xemacs/patches
    

    Patch files that are distributed by the author or other maintainers can be listed in PATCHFILES.

    If it is desired to store any patches that should not be committed into pkgsrc, they can be kept outside the pkgsrc tree in the $LOCALPATCHES directory. The directory tree there is expected to have the same category/package structure as pkgsrc, and patches are expected to be stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example, if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch files, and they are applied after pkgsrc patches are applied.

    13.3.4. Patching guidelines

    When fixing a portability issue in the code do not use preprocessor magic to check for the current operating system nor platform. Doing so hurts portability to other platforms because the OS-specific details are not abstracted appropriately.

    The general rule to follow is: instead of checking for the operating system the application is being built on, check for the specific features you need. For example, instead of assuming that kqueue is available under NetBSD and using the __NetBSD__ macro to conditionalize kqueue support, add a check that detects kqueue itself — yes, this generally involves patching the configure script. There is absolutely nothing that prevents some OSes from adopting interfaces from other OSes (e.g. Linux implementing kqueue), something that the above checks cannot take into account.

    Of course, checking for features generally involves more work on the developer's side, but the resulting changes are cleaner and there are chances they will work on many other platforms. Not to mention that there are higher chances of being later integrated into the mainstream sources. Remember: It doesn't work unless it is right!

    Some typical examples:

    Table 13.1. Patching examples

    d4275 2 a4276 14 d4279 2 a4280 15 d4283 13 a4295 2
    Where Incorrect Correct
    configure script
    case ${target_os} in
    netbsd*) have_kvm=yes ;;
    *)       have_kvm=no  ;;
    esac
    
    AC_CHECK_LIB(kvm, kvm_open, have_kvm=yes, have_kvm=no)
    
    C source file
    #if defined(__NetBSD__)
    #  include <sys/event.h>
    #endif
    
    #if defined(HAVE_SYS_EVENT_H)
    #  include <sys/event.h>
    #endif
    
    C source file d4297 2 a4298 10 int monitor_file(...) { #if defined(__NetBSD__) int fd = kqueue(); ... #else ... #endif } d4300 11 a4310 2 d4312 23 a4334 15 int monitor_file(...) { #if defined(HAVE_KQUEUE) int fd = kqueue(); ... #else ... #endif }
    a4335 23

    13.3.5. Feedback to the author

    Always, always, always feed back any portability fixes or improvements you do to a package to the mainstream developers. This is the only way to get their attention on portability issues and to ensure that future versions can be built out-of-the box on NetBSD. Furthermore, any user that gets newer distfiles will get the fixes straight from the packaged code.

    This generally involves cleaning up the patches (because sometimes the patches that are added to pkgsrc are quick hacks), filing bug reports in the appropriate trackers for the projects and working with the mainstream authors to accept your changes. It is extremely important that you do it so that the packages in pkgsrc are kept simple and thus further changes can be done without much hassle.

    When you have done this, please add a URL to the upstream bug report to the patch comment.

    Support the idea of free software!

    d4337 10 d4350 13 a4362 1 13.4. Other mandatory files
    d4364 11 a4374 12
    DESCR

    A multi-line description of the piece of software. This should include any credits where they are due. Please bear in mind that others do not share your sense of humour (or spelling idiosyncrasies), and that others will read everything that you write here.

    PLIST

    This file governs the files that are installed on your system: all the binaries, manual pages, etc. There are other directives which may be entered in this file, to control the creation and deletion of directories, and the location of inserted files. See Chapter 15, PLIST issues for more information.

    d4376 11 d4390 16 a4405 118 13.5. Optional files

    13.5.1. Files affecting the binary package

    INSTALL

    This shell script is invoked twice by pkg_add(1). First time after package extraction and before files are moved in place, the second time after the files to install are moved in place. This can be used to do any custom procedures not possible with @@exec commands in PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 17.1, “Files and directories outside the installation prefix”. Please note that you can modify variables in it easily by using FILES_SUBST in the package's Makefile:

    FILES_SUBST+=  SOMEVAR="somevalue"
    

    replaces "@@SOMEVAR@@" with somevalue in the INSTALL. By default, substitution is performed for PREFIX, LOCALBASE, X11BASE, VARBASE, and a few others, type make help topic=FILES_SUBST for a complete list.

    DEINSTALL

    This script is executed before and after any files are removed. It is this script's responsibility to clean up any additional messy details around the package's installation, since all pkg_delete knows is how to delete the files created in the original distribution. See pkg_delete(1) and pkg_create(1) for more information. The same methods to replace variables can be used as for the INSTALL file.

    MESSAGE

    This file is displayed after installation of the package. Useful for things like legal notices on almost-free software and hints for updating config files after installing modules for apache, PHP etc. Please note that you can modify variables in it easily by using MESSAGE_SUBST in the package's Makefile:

    MESSAGE_SUBST+=  SOMEVAR="somevalue"
    

    replaces "${SOMEVAR}" with somevalue in MESSAGE. By default, substitution is performed for PKGNAME, PKGBASE, PREFIX, LOCALBASE, X11BASE, PKG_SYSCONFDIR, ROOT_GROUP, and ROOT_USER.

    You can display a different or additional files by setting the MESSAGE_SRC variable. Its default is MESSAGE, if the file exists.

    ALTERNATIVES

    This file is used by the alternatives framework. It creates, configures, and destroys generic wrappers used to run programs with similar interfaces. See pkg_alternatives(8) from pkgtools/pkg_alternatives for more information.

    Each line of the file contains two filenames, first the wrapper and then the alternative provided by the package. Both paths are relative to PREFIX.

    13.5.2. Files affecting the build process

    Makefile.common

    This file contains arbitrary things that could also go into a Makefile, but its purpose is to be used by more than one package. This file should only be used when the packages that will use the file are known in advance. For other purposes it is often better to write a *.mk file and give it a good name that describes what it does.

    buildlink3.mk

    This file contains the dependency information for the buildlink3 framework (see Chapter 16, Buildlink methodology).

    hacks.mk

    This file contains workarounds for compiler bugs and similar things. It is included automatically by the pkgsrc infrastructure, so you don't need an extra .include line for it.

    options.mk

    This file contains the code for the package-specific options (see Chapter 18, Options handling) that can be selected by the user. If a package has only one or two options, it is equally acceptable to put the code directly into the Makefile.

    13.5.3. Files affecting nothing at all

    README*

    These files do not take place in the creation of a package and thus are purely informative to the package developer.

    TODO

    This file contains things that need to be done to make the package even better.

    d4409 3 a4411 11 13.6. work*

    When you type make, the distribution files are unpacked into the directory denoted by WRKDIR. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp files. The directory gets removed completely on clean. The default is ${.CURDIR}/work or ${.CURDIR}/work.${MACHINE_ARCH} if OBJMACHINE is set.

    d4415 49 a4463 10 13.7. files/*

    If you have any files that you wish to be placed in the package prior to configuration or building, you can place these files here and use a ${CP} command in the post-extract target to achieve this.

    If you want to share files in this way with other packages, set the FILESDIR variable to point to the other package's files directory, e.g.:

    d4465 5 a4469 1 FILESDIR= ../../editors/xemacs/files d4471 34 a4505 33

    Chapter 14. Programming in Makefiles

    Pkgsrc consists of many Makefile fragments, each of which forms a well-defined part of the pkgsrc system. Using the make(1) system as a programming language for a big system like pkgsrc requires some discipline to keep the code correct and understandable.

    The basic ingredients for Makefile programming are variables and shell commands. Among these shell commands may even be more complex ones like awk(1) programs. To make sure that every shell command runs as intended it is necessary to quote all variables correctly when they are used.

    This chapter describes some patterns that appear quite often in Makefiles, including the pitfalls that come along with them.

    d4508 3 a4510 8 14.1. Caveats
    • When you are creating a file as a target of a rule, always write the data to a temporary file first and finally rename that file. Otherwise there might occur an error in the middle of generating the file, and when the user runs make(1) for the second time, the file exists and will not be regenerated properly. Example:

      d4512 8 a4519 10 wrong: @@echo "line 1" > ${.TARGET} @@echo "line 2" >> ${.TARGET} @@false correct: @@echo "line 1" > ${.TARGET}.tmp @@echo "line 2" >> ${.TARGET}.tmp @@false @@mv ${.TARGET}.tmp ${.TARGET} d4521 19 a4539 10

      When you run make wrong twice, the file wrong will exist, although there was an error message in the first run. On the other hand, running make correct gives an error message twice, as expected.

      You might remember that make(1) sometimes removes ${.TARGET} in case of error, but this only happens when it is interrupted, for example by pressing Ctrl+C. This does not happen when one of the commands fails (like false(1) above).

    d4543 2 a4544 38 14.2. Makefile variables

    Makefile variables contain strings that can be processed using the five operators =, +=, ?=, := and !=, which are described in the make(1) man page.

    When a variable's value is parsed from a Makefile, the hash character # and the backslash character \ are handled specially. If a backslash is the last character in a line, that backslash is removed from the line and the line continues with the next line of the file.

    The # character starts a comment that reaches until the end of the line. To get an actual # character, such as in a URL, write \# instead.

    The evaluation of variables either happens immediately or lazy. It happens immediately when the variable occurs on the right-hand side of the := or the != operator, in a .if condition or a .for loop. In the other cases, it is evaluated lazily.

    Some of the modifiers split the string into words and then operate on the words, others operate on the string as a whole. When a string is split into words, double quotes and single quotes are interpreted as delimiters, just like in sh(1).

    14.2.1. Naming conventions

    • All variable names starting with an underscore are reserved for use by the pkgsrc infrastructure. They shall not be used by packages.

    • In .for loops you should use lowercase variable names for the iteration variables.

    • All list variables should have a plural name, such as PKG_OPTIONS or DISTFILES.

    d4548 8 a4555 9 14.3. Code snippets

    14.3.1. Adding things to a list

    When adding a string that possibly contains whitespace or quotes to a list (example 1), it must be quoted using the :Q modifier.

    When adding another list to a list (example 2), it must not be quoted, since its elements are already quoted.

    d4557 8 a4564 6 STRING= foo * bar `date` LIST= # empty ANOTHER_LIST= a=b c=d LIST+= ${STRING:Q} # 1 LIST+= ${ANOTHER_LIST} # 2 d4566 72 a4638 121

    14.3.2. Echoing a string exactly as-is

    Echoing a string containing special characters needs special work.

    STRING=         foo bar <    > * `date` $$HOME ' "
    EXAMPLE_ENV=    string=${STRING:Q} x=multiple\ quoted\ words
    
    all:
            echo ${STRING}                  # 1
            echo ${STRING:Q}                # 2
            printf '%s\n' ${STRING:Q}''     # 3
            env ${EXAMPLE_ENV} sh -c 'echo "$$string"; echo "$$x"'   # 4
    

    Example 1 leads to a syntax error in the shell, as the characters are just copied.

    Example 2 quotes the string so that the shell interprets it correctly. But the echo command may additionally interpret strings with a leading dash or those containing backslashes.

    Example 3 can handle arbitrary strings, since printf(1) only interprets the format string, but not the next argument. The trailing single quotes handle the case when the string is empty. In that case, the :Q modifier would result in an empty string too, which would then be skipped by the shell. For printf(1) this doesn't make a difference, but other programs may care.

    In example 4, the EXAMPLE_ENV does not need to be quoted because the quoting has already been done when adding elements to the list.

    14.3.3. Passing CFLAGS to GNU configure scripts

    When passing CFLAGS or similar variables to a GNU-style configure script (especially those that call other configure scripts), it must not have leading or trailing whitespace, since otherwise the configure script gets confused. To trim leading and trailing whitespace, use the :M modifier, as in the following example:

    CPPFLAGS=               # empty
    CPPFLAGS+=              -Wundef -DPREFIX=\"${PREFIX}\"
    CPPFLAGS+=              ${MY_CPPFLAGS}
    
    CONFIGURE_ARGS+=        CPPFLAGS=${CPPFLAGS:M*:Q}
    
    all:
            echo x${CPPFLAGS:Q}x            # leading and trailing whitespace
            echo x${CONFIGURE_ARGS:Q}x      # properly trimmed
    

    In this example, CPPFLAGS has both leading and trailing whitespace because the += operator always adds a space.

    14.3.4. Handling possibly empty variables

    When a possibly empty variable is used in a shell program, it may lead to a syntax error.

    EGFILES=        # empty
    
    install-examples:   # produces a syntax error in the shell
            for egfile in ${EGFILES}; do            \
                    echo "Installing $$egfile";     \
            done
    

    The shell only sees the text for egfile in ; do, since ${EGFILES} is replaced with an empty string by make(1). To fix this syntax error, use one of the snippets below.

    EMPTY=          # empty
    
    install-examples:
            for egfile in ${EGFILES} ""; do         \
                    [ -n "$$egfile" ] || continue;  \
                    echo "Installing $$egfile";     \
            done
    

    In this case, an empty string is appended to the iteration list (to prevent the syntax error) and filtered out later.

    EGFILES=        # empty
    
    install-examples:
    .for egfile in ${EGFILES}
            echo "Installing ${egfile}"
    .endfor
    

    If one of the filenames contains special characters, it should be enclosed in single or double quotes.

    To have a shell command test whether a make variable is empty, use the following code: ${TEST} -z ${POSSIBLY_EMPTY:Q}"".

    Chapter 15. PLIST issues

    The PLIST file contains a package's packing list, i.e. a list of files that belong to the package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the pkg_create(1) man page for a full list. This chapter addresses some issues that need attention when dealing with the PLIST file (or files, see below!).

    d4641 12 a4652 9 15.1. RCS ID

    Be sure to add a RCS ID line as the first thing in any PLIST file you write:

    @@comment $NetBSD $
    

    An artificial space has been added between NetBSD and $, this is a workaround here to prevent CVS expanding to the filename of the guide. When adding the RCS ID the space should be omitted.

    d4656 5 a4660 25 15.2. Semi-automatic PLIST generation

    You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See Section 19.17, “Other helpful targets” for more information on this target.

    15.3. Tweaking output of make print-PLIST

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with quoting.

    For example, to get all files inside the libdata/foo directory removed from the resulting PLIST:

    PRINT_PLIST_AWK+=       /^libdata\/foo/ { next; }
    

    The PRINT_PLIST_AWK transformations are evaluated after the file list and directory list are sorted. EARLY_PRINT_PLIST_AWK is like PRINT_PLIST_AWK except it operates before the file list and directory list are sorted.

    d4664 1 a4664 4 15.4. Variable substitution in PLIST

    A number of variables are substituted automatically in PLISTs when a package is installed on a system. This includes the following variables:

    d4666 18 a4683 1
    ${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}
    d4685 9 a4693 19

    Some packages like emacs and perl embed information about which architecture they were built on into the pathnames where they install their files. To handle this case, PLIST will be preprocessed before actually used, and the symbol ${MACHINE_ARCH} will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf-created configure scripts.

    Legacy note

    There used to be a symbol $ARCH that was replaced by the output of uname -m, but that's no longer supported and has been removed.

    d4695 1 a4695 1
    ${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}
    d4697 10 a4706 9

    Some packages want to embed the OS name and version into some paths. To do this, use these variables in the PLIST:

    • ${OPSYS} - output of uname -s

    • ${LOWER_OPSYS} - lowercase common name (eg. solaris)

    • ${OS_VERSION} - uname -r

    d4708 711 a5418 8

    For a list of values which are replaced by default, the output of make help topic=PLIST_SUBST as well as searching the pkgsrc/mk directory with grep for PLIST_SUBST should help.

    If you want to change other variables not listed above, you can add variables and their expansions to this variable in the following way, similar to MESSAGE_SUBST (see Section 13.5, “Optional files”):

    d5420 10 a5429 1 PLIST_SUBST+= SOMEVAR="somevalue" d5431 8 a5438 14

    This replaces all occurrences of ${SOMEVAR} in the PLIST with somevalue.

    The PLIST_VARS variable can be used to simplify the common case of conditionally including some PLIST entries. It can be done by adding PLIST_VARS+=foo and setting the corresponding PLIST.foo variable to yes if the entry should be included. This will substitute ${PLIST.foo} in the PLIST with either "" or "@@comment ". For example, in Makefile:

    d5440 7 a5446 4 PLIST_VARS+= foo .if condition PLIST.foo= yes .else d5448 3 a5450 1

    And then in PLIST:

    d5452 4 a5455 6 @@comment $NetBSD $ bin/bar man/man1/bar.1 ${PLIST.foo}bin/foo ${PLIST.foo}man/man1/foo.1 ${PLIST.foo}share/bar/foo.data d5457 7 a5463 52

    An artificial space has been added between NetBSD and $, this is a workaround here to prevent CVS expanding to the filename of the guide. When adding the RCS ID the space should be ommited.

    15.5. Man page compression

    Man pages should be installed in compressed form if MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix .gz is appended/removed automatically for man pages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    15.6. Changing PLIST source with PLIST_SRC

    To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). The files are later concatenated using cat(1), and the order of things is important. The default for PLIST_SRC is ${PKGDIR}/PLIST.

    15.7. Platform-specific and differing PLISTs

    Some packages decide to install a different set of files based on the operating system being used. These differences can be automatically handled by using the following files:

    • PLIST.common

    • PLIST.${OPSYS}

    • PLIST.${MACHINE_ARCH}

    • PLIST.${OPSYS}-${MACHINE_ARCH}

    • PLIST.common_end

    15.8. Build-specific PLISTs

    Some packages decide to generate hard-to-guess file names during installation that are hard to wire down.

    In such cases, you can set the GENERATE_PLIST variable to shell code terminated (with a semicolon) that will output PLIST entries which will be appended to the PLIST

    You can find one example in editors/xemacs:

    d5465 2 a5466 1 GENERATE_PLIST+= ${ECHO} bin/${DISTNAME}-`${WRKSRC}/src/xemacs -sd`.dmp ; d5468 10 a5477 4

    which will append something like bin/xemacs-21.4.23-54e8ea71.dmp to the PLIST.

    d5479 3 a5481 17

    15.9. Sharing directories between packages

    A shared directory is a directory where multiple (and unrelated) packages install files. These directories were problematic because you had to add special tricks in the PLIST to conditionally remove them, or have some centralized package handle them.

    In pkgsrc, it is now easy: Each package should create directories and install files as needed; pkg_delete will remove any directories left empty after uninstalling a package.

    If a package needs an empty directory to work, create the directory during installation as usual, and also add an entry to the PLIST:

    d5483 5 a5487 1 @@pkgdir path/to/empty/directory d5489 2 a5490 5

    or take a look at MAKE_DIRS and OWN_DIRS.

    d5495 1 a5495 1 Chapter 16. Buildlink methodology
    d5499 9 a5507 14
    16.1. Converting packages to use buildlink3
    16.2. Writing buildlink3.mk files
    16.2.1. Anatomy of a buildlink3.mk file
    16.2.2. Updating BUILDLINK_API_DEPENDS.pkg and BUILDLINK_ABI_DEPENDS.pkg in buildlink3.mk files
    16.3. Writing builtin.mk files
    16.3.1. Anatomy of a builtin.mk file
    16.3.2. Global preferences for native or pkgsrc software
    d5511 14 a5524 22

    Buildlink is a framework in pkgsrc that controls what headers and libraries are seen by a package's configure and build processes. This is implemented in a two step process:

    1. Symlink headers and libraries for dependencies into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    2. Create wrapper scripts that are used in place of the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    This normalizes the environment in which a package is built so that the package may be built consistently despite what other software may be installed. Please note that the normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- buildlink3 is designed to insulate the package build from non-system-supplied software.

    d5527 8 a5534 23 16.1. Converting packages to use buildlink3

    The process of converting packages to use the buildlink3 framework (bl3ifying) is fairly straightforward. The things to keep in mind are:

    1. Ensure that the build always calls the wrapper scripts instead of the actual toolchain. Some packages are tricky, and the only way to know for sure is the check ${WRKDIR}/.work.log to see if the wrappers are being invoked.

    2. Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files relative to pkg_info -qp pkgname.

    3. Remember that only the buildlink3.mk files that you list in a package's Makefile are added as dependencies for that package.

    If a dependency on a particular package is required for its libraries and headers, then we replace:

    d5536 10 a5545 1 DEPENDS+= foo>=1.1.0:../../category/foo d5547 63 a5609 1

    with

    d5611 6 a5616 1 .include "../../category/foo/buildlink3.mk" d5618 6 a5623 3

    The buildlink3.mk files usually define the required dependencies. If you need a newer version of the dependency when using buildlink3.mk files, then you can define it in your Makefile; for example:

    d5625 8 a5632 2 BUILDLINK_API_DEPENDS.foo+= foo>=1.1.0 .include "../../category/foo/buildlink3.mk" d5634 14 a5647 47

    There are several buildlink3.mk files in pkgsrc/mk that handle special package issues:

    • bdb.buildlink3.mk chooses either the native or a pkgsrc Berkeley DB implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    • curses.buildlink3.mk: If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    • krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between adding a dependency on Heimdal or MIT-krb5 for packages that require a Kerberos 5 implementation.

    • motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/motif. The user can set MOTIF_TYPE to dt, lesstif or motif to choose which Motif version will be used.

    • readline.buildlink3.mk checks for a system-provided GNU readline or editline (libedit) installation, or adds a dependency on devel/readline, devel/editline. The user can set READLINE_DEFAULT to choose readline implementation. If your package really needs GNU readline library, its Makefile should include devel/readline/buildlink3.mk instead of readline.buildlink3.mk.

    • oss.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API.

    • pgsql.buildlink3.mk will accept any of the Postgres versions in the variable PGSQL_VERSIONS_ACCEPTED and default to the version PGSQL_VERSION_DEFAULT. See the file for more information.

    • pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed.

    • xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    The comments in those buildlink3.mk files provide a more complete description of how to use them properly.

    a5648 20

    16.2. Writing buildlink3.mk files

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    To generate an initial buildlink3.mk file for further editing, Rene Hexel's pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    % cd pkgsrc/category/pkgdir
    % createbuildlink >buildlink3.mk
        
    d5651 7 a5657 4 16.2.1. Anatomy of a buildlink3.mk file

    The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d5659 3 a5661 1 # $NetBSD: buildlink3.mk,v 1.16 2009/03/20 19:24:45 joerg Exp $ d5663 1 a5663 1 BUILDLINK_TREE+= tiff d5665 15 a5679 2 .if !defined(TIFF_BUILDLINK3_MK) TIFF_BUILDLINK3_MK:= d5681 10 a5690 3 BUILDLINK_API_DEPENDS.tiff+= tiff>=3.6.1 BUILDLINK_ABI_DEPENDS.tiff+= tiff>=3.7.2nb1 BUILDLINK_PKGSRCDIR.tiff?= ../../graphics/tiff d5692 10 a5701 3 .include "../../devel/zlib/buildlink3.mk" .include "../../graphics/jpeg/buildlink3.mk" .endif # TIFF_BUILDLINK3_MK d5703 4 a5706 1 BUILDLINK_TREE+= -tiff d5708 18 a5725 176

    The header and footer manipulate BUILDLINK_TREE, which is common across all buildlink3.mk files and is used to track the dependency tree.

    The main section is protected from multiple inclusion and controls how the dependency on pkg is added. Several important variables are set in the section:

    • BUILDLINK_API_DEPENDS.pkg is the dependency version recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the last version of the package that had an backwards-incompatible API change.

    • BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc directory.

    • BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to build. By default, the full dependency is used.

    • BUILDLINK_INCDIRS.pkg and BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These default to include and lib respectively.

    • BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The -I option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

    The following variables are all optionally defined within this second section (protected against multiple inclusion) and control which package files are symlinked into ${BUILDLINK_DIR} and how their names are transformed during the symlinking:

    • BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

    • BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The resulting files are to be symlinked into ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    • BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS.

    • BUILDLINK_FNAME_TRANSFORM.pkg (not shown above) is a list of sed arguments used to transform the name of the source filename into a destination filename, e.g. -e "s|/curses.h|/ncurses.h|g".

    This section can additionally include any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included. Dependencies are only added for directly include buildlink3.mk files.

    When providing a buildlink3.mk and including other buildlink3.mk files in it, please only add necessary ones, i.e., those whose libraries or header files are automatically exposed when the package is use.

    In particular, if only an executable (bin/foo) is linked against a library, that library does not need to be propagated in the buildlink3.mk file.

    The following steps should help you decide if a buildlink3.mk file needs to be included:

    • Look at the installed header files: What headers do they include? The packages providing these files must be buildlinked.

    • Run ldd on all installed libraries and look against what other libraries they link. Some of the packages providing these probably need to be buildlinked; however, it's not automatic, since e.g. GTK on some systems pulls in the X libraries, so they will show up in the ldd output, while on others (like OS X) it won't. ldd output can thus only be used as a hint.

    16.2.2. Updating BUILDLINK_API_DEPENDS.pkg and BUILDLINK_ABI_DEPENDS.pkg in buildlink3.mk files

    Both variables set lower bounds for a version of this package. The two variables differ in that one describes source compatibility (API) and the other binary compatibility (ABI). The difference is that a change in the API breaks compilation of programs while changes in the ABI stop compiled programs from running.

    The BUILDLINK_API_DEPENDS.pkg variable in a buildlink3.mk should be changed very rarely. (One possible scenario: If all packages using this package need a higher version than defined in the buildlink3.mk, BUILDLINK_API_DEPENDS.pkg could be updated to that higher version.)

    On the other hand, changes to BUILDLINK_ABI_DEPENDS.pkg are more common. The variable will need to be updated every time the major version of one of its shared libraries is changed, or any other change where a binary built against the previous version of the package will not run against the new version any longer.

    In such a case, the package's BUILDLINK_ABI_DEPENDS.pkg must be increased to require the new package version. Then the PKGREVISION of all packages that depend on this package need to be increased, and if they have buildlink3.mk files, their BUILDLINK_ABI_DEPENDS.pkg must be increased to the new version as well. This is required so that a package will pull in the versions of the packages that use the new ABI and that the packages' PKGREVISIONs uniquely identify the packages built against the new ABI. The pkgtools/revbump package can help with these updates.

    See Section 21.1.5, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_API_DEPENDS definitions.

    Please take careful consideration before adjusting BUILDLINK_API_DEPENDS.pkg or BUILDLINK_ABI_DEPENDS.pkg in a buildlink3.mk file as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

    Also it is not needed to set BUILDLINK_ABI_DEPENDS.pkg when it is identical to BUILDLINK_API_DEPENDS.pkg.

    d5727 41 d5771 8 a5778 28 16.3. Writing builtin.mk files

    Some packages in pkgsrc install headers and libraries that coincide with headers and libraries present in the base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

    The only requirements of a builtin.mk file for pkg are:

    1. It should set USE_BUILTIN.pkg to either yes or no after it is included.

    2. It should not override any USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    3. It should be written to allow multiple inclusion. This is very important and takes careful attention to Makefile coding.

    16.3.1. Anatomy of a builtin.mk file

    The following is the recommended template for builtin.mk files:

    d5780 20 a5799 6 .if !defined(IS_BUILTIN.foo) # # IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo" # genuinely exists in the system or not. # IS_BUILTIN.foo?= no d5801 6 a5806 7 # BUILTIN_PKG.foo should be set here if "foo" is built-in and its package # version can be determined. # . if !empty(IS_BUILTIN.foo:M[yY][eE][sS]) BUILTIN_PKG.foo?= foo-1.0 . endif .endif # IS_BUILTIN.foo d5808 7 a5814 12 .if !defined(USE_BUILTIN.foo) USE_BUILTIN.foo?= ${IS_BUILTIN.foo} . if defined(BUILTIN_PKG.foo) . for _depend_ in ${BUILDLINK_API_DEPENDS.foo} . if !empty(USE_BUILTIN.foo:M[yY][eE][sS]) USE_BUILTIN.foo!= \ ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo} \ && ${ECHO} "yes" || ${ECHO} "no" . endif . endfor . endif .endif # USE_BUILTIN.foo d5816 90 a5905 7 CHECK_BUILTIN.foo?= no .if !empty(CHECK_BUILTIN.foo:M[nN][oO]) # # Here we place code that depends on whether USE_BUILTIN.foo is set to # "yes" or "no". # .endif # CHECK_BUILTIN.foo a5906 44

    The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be yes if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

    The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is yes). This variable is only used internally within the builtin.mk file.

    The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_API_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_API_DEPENDS.pkg. USE_BUILTIN.pkg must be set to the correct value by the end of the builtin.mk file. Note that USE_BUILTIN.pkg may be yes even if IS_BUILTIN.pkg is no because we may make the determination that the built-in version of the software is similar enough to be used as a replacement.

    The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding additional dependency restrictions and listing additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

    d5908 32 a5939 22

    16.3.2. Global preferences for native or pkgsrc software

    When building packages, it's possible to choose whether to set a global preference for using either the built-in (native) version or the pkgsrc version of software to satisfy a dependency. This is controlled by setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either yes, no, or a list of packages. PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

    d5941 6 a5946 15 PREFER_PKGSRC= yes PREFER_NATIVE= getopt skey tcp_wrappers

    A package must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    Setting PREFER_NATIVE should be performed straight after bootstrap and PREFER_PKGSRC during bootstrap. Switching between settings globally at a later date can introduce complications with dependency resolution. This is caused by packages built with the opposite preference being installed alongside each other.

    # ./bootstrap --prefer-pkgsrc yes
    d5948 6
    a5953 1
    
    d5958 1
    a5958 1
    Chapter 17. The pkginstall framework
    d5962 3
    a5964 19
    
    17.1. Files and directories outside the installation prefix
    17.1.1. Directory manipulation
    17.1.2. File manipulation
    17.2. Configuration files
    17.2.1. How PKG_SYSCONFDIR is set
    17.2.2. Telling the software where configuration files are
    17.2.3. Patching installations
    17.2.4. Disabling handling of configuration files
    17.3. System startup scripts
    17.3.1. Disabling handling of system startup scripts
    17.4. System users and groups
    17.5. System shells
    17.5.1. Disabling shell registration
    17.6. Fonts
    17.6.1. Disabling automatic update of the fonts databases
    d5967 19 a5985 21

    This chapter describes the framework known as pkginstall, whose key features are:

    • Generic installation and manipulation of directories and files outside the pkgsrc-handled tree, LOCALBASE.

    • Automatic handling of configuration files during installation, provided that packages are correctly designed.

    • Generation and installation of system startup scripts.

    • Registration of system users and groups.

    • Registration of system shells.

    • Automatic updating of fonts databases.

    The following sections inspect each of the above points in detail.

    You may be thinking that many of the things described here could be easily done with simple code in the package's post-installation target (post-install). This is incorrect, as the code in them is only executed when building from source. Machines using binary packages could not benefit from it at all (as the code itself could be unavailable). Therefore, the only way to achieve any of the items described above is by means of the installation scripts, which are automatically generated by pkginstall.

    d5988 10 a5997 170 17.1. Files and directories outside the installation prefix

    As you already know, the PLIST file holds a list of files and directories that belong to a package. The names used in it are relative to the installation prefix (${PREFIX}), which means that it cannot register files outside this directory (absolute path names are not allowed). Despite this restriction, some packages need to install files outside this location; e.g., under ${VARBASE} or ${PKG_SYSCONFDIR}. The only way to achieve this is to create such files during installation time by using installation scripts.

    The generic installation scripts are shell scripts that can contain arbitrary code. The list of scripts to execute is taken from the INSTALL_FILE variable, which defaults to INSTALL. A similar variable exists for package removal (DEINSTALL_FILE, whose default is DEINSTALL). These scripts can run arbitrary commands, so they have the potential to create and manage files anywhere in the file system.

    Using these general installation files is not recommended, but may be needed in some special cases. One reason for avoiding them is that the user has to trust the packager that there is no unwanted or simply erroneous code included in the installation script. Also, previously there were many similar scripts for the same functionality, and fixing a common error involved finding and changing all of them.

    The pkginstall framework offers another, standardized way. It provides generic scripts to abstract the manipulation of such files and directories based on variables set in the package's Makefile. The rest of this section describes these variables.

    17.1.1. Directory manipulation

    The following variables can be set to request the creation of directories anywhere in the file system:

    • MAKE_DIRS and OWN_DIRS contain a list of directories that should be created and should attempt to be destroyed by the installation scripts. The difference between the two is that the latter prompts the administrator to remove any directories that may be left after deinstallation (because they were not empty), while the former does not. Example:

      MAKE_DIRS+=             ${VARBASE}/foo/private
      
    • MAKE_DIRS_PERMS and OWN_DIRS_PERMS contain a list of tuples describing which directories should be created and should attempt to be destroyed by the installation scripts. Each tuple holds the following values, separated by spaces: the directory name, its owner, its group and its numerical mode. For example:

      MAKE_DIRS_PERMS+=       ${VARBASE}/foo/private \
                              ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
      

      The difference between the two is exactly the same as their non-PERMS counterparts.

    17.1.2. File manipulation

    Creating non-empty files outside the installation prefix is tricky because the PLIST forces all files to be inside it. To overcome this problem, the only solution is to extract the file in the known place (i.e., inside the installation prefix) and copy it to the appropriate location during installation (done by the installation scripts generated by pkginstall). We will call the former the master file in the following paragraphs, which describe the variables that can be used to automatically and consistently handle files outside the installation prefix:

    • CONF_FILES and REQD_FILES are pairs of master and target files. During installation time, the master file is copied to the target one if and only if the latter does not exist. Upon deinstallation, the target file is removed provided that it was not modified by the installation.

      The difference between the two is that the latter prompts the administrator to remove any files that may be left after deinstallation (because they were not empty), while the former does not.

    • CONF_FILES_PERMS and REQD_FILES_PERMS contain tuples describing master files as well as their target locations. For each of them, it also specifies their owner, their group and their numeric permissions, in this order. For example:

      REQD_FILES_PERMS+=      ${PREFIX}/share/somefile ${VARBASE}/somefile \
                              ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
      

      The difference between the two is exactly the same as their non-PERMS counterparts.

    17.2. Configuration files

    Configuration files are special in the sense that they are installed in their own specific directory, PKG_SYSCONFDIR, and need special treatment during installation (most of which is automated by pkginstall). The main concept you must bear in mind is that files marked as configuration files are automatically copied to the right place (somewhere inside PKG_SYSCONFDIR) during installation if and only if they didn't exist before. Similarly, they will not be removed if they have local modifications. This ensures that administrators never lose any custom changes they may have made.

    17.2.1. How PKG_SYSCONFDIR is set

    As said before, the PKG_SYSCONFDIR variable specifies where configuration files shall be installed. Its contents are set based upon the following variables:

    • PKG_SYSCONFBASE: The configuration's root directory. Defaults to ${PREFIX}/etc although it may be overridden by the user to point to his preferred location (e.g., /etc, /etc/pkg, etc.). Packages must not use it directly.

    • PKG_SYSCONFSUBDIR: A subdirectory of PKG_SYSCONFBASE under which the configuration files for the package being built shall be installed. The definition of this variable only makes sense in the package's Makefile (i.e., it is not user-customizable).

      As an example, consider the Apache package, www/apache24, which places its configuration files under the httpd/ subdirectory of PKG_SYSCONFBASE. This should be set in the package Makefile.

    • PKG_SYSCONFVAR: Specifies the name of the variable that holds this package's configuration directory (if different from PKG_SYSCONFBASE). It defaults to PKGBASE's value, and is always prefixed with PKG_SYSCONFDIR.

    • PKG_SYSCONFDIR.${PKG_SYSCONFVAR}: Holds the directory where the configuration files for the package identified by PKG_SYSCONFVAR's shall be placed.

    Based on the above variables, pkginstall determines the value of PKG_SYSCONFDIR, which is the only variable that can be used within a package to refer to its configuration directory. The algorithm used to set its value is basically the following:

    1. If PKG_SYSCONFDIR.${PKG_SYSCONFVAR} is set, its value is used.

    2. If the previous variable is not defined but PKG_SYSCONFSUBDIR is set in the package's Makefile, the resulting value is ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}.

    3. Otherwise, it is set to ${PKG_SYSCONFBASE}.

    It is worth mentioning that ${PKG_SYSCONFDIR} is automatically added to OWN_DIRS. See Section 17.1.1, “Directory manipulation” what this means. This does not apply to subdirectories of ${PKG_SYSCONFDIR}, they still have to be created with OWN_DIRS or MAKE_DIRS.

    d5999 8 a6006 9

    17.2.2. Telling the software where configuration files are

    Given that pkgsrc (and users!) expect configuration files to be in a known place, you need to teach each package where it shall install its files. In some cases you will have to patch the package Makefiles to achieve it. If you are lucky, though, it may be as easy as passing an extra flag to the configuration script; this is the case of GNU Autoconf- generated files:

    d6008 1 a6008 1 CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} d6010 8 a6017 4

    Note that this specifies where the package has to look for its configuration files, not where they will be originally installed (although the difference is never explicit, unfortunately).

    d6019 7 a6025 22

    17.2.3. Patching installations

    As said before, pkginstall automatically handles configuration files. This means that the packages themselves must not touch the contents of ${PKG_SYSCONFDIR} directly. Bad news is that many software installation scripts will, out of the box, mess with the contents of that directory. So what is the correct procedure to fix this issue?

    You must teach the package (usually by manually patching it) to install any configuration files under the examples hierarchy, share/examples/${PKGBASE}/. This way, the PLIST registers them and the administrator always has the original copies available.

    Once the required configuration files are in place (i.e., under the examples hierarchy), the pkginstall framework can use them as master copies during the package installation to update what is in ${PKG_SYSCONFDIR}. To achieve this, the variables CONF_FILES and CONF_FILES_PERMS are used. Check out Section 17.1.2, “File manipulation” for information about their syntax and their purpose. Here is an example, taken from the mail/mutt package:

    d6027 7 a6033 2 EGDIR= ${PREFIX}/share/doc/mutt/samples CONF_FILES= ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc a6034 2

    Note that the EGDIR variable is specific to that package and has no meaning outside it.

    a6035 6

    17.2.4. Disabling handling of configuration files

    The automatic copying of config files can be toggled by setting the environment variable PKG_CONFIG prior to package installation.

    d6037 22 d6060 22 d6084 4 a6087 8 17.3. System startup scripts

    System startup scripts are special files because they must be installed in a place known by the underlying OS, usually outside the installation prefix. Therefore, the same rules described in Section 17.1, “Files and directories outside the installation prefix” apply, and the same solutions can be used. However, pkginstall provides a special mechanism to handle these files.

    In order to provide system startup scripts, the package has to:

    d6089 28 a6116 8
  • Store the script inside ${FILESDIR}, with the .sh suffix appended. Considering the print/cups package as an example, it has a cupsd.sh in its files directory.

  • Tell pkginstall to handle it, appending the name of the script, without its extension, to the RCD_SCRIPTS variable. Continuing the previous example:

    d6118 2 a6119 1 RCD_SCRIPTS+= cupsd d6121 47 a6167 63
  • Once this is done, pkginstall will do the following steps for each script in an automated fashion:

    1. Process the file found in the files directory applying all the substitutions described in the FILES_SUBST variable.

    2. Copy the script from the files directory to the examples hierarchy, ${PREFIX}/share/examples/rc.d/. Note that this master file must be explicitly registered in the PLIST.

    3. Add code to the installation scripts to copy the startup script from the examples hierarchy into the system-wide startup scripts directory.

    17.3.1. Disabling handling of system startup scripts

    The automatic copying of config files can be toggled by setting the environment variable PKG_RCD_SCRIPTS prior to package installation. Note that the scripts will be always copied inside the examples hierarchy, ${PREFIX}/share/examples/rc.d/, no matter what the value of this variable is.

    17.4. System users and groups

    If a package needs to create special users and/or groups during installation, it can do so by using the pkginstall framework.

    Users can be created by adding entries to the PKG_USERS variable. Each entry has the following syntax:

    user:group
    

    Further specification of user details may be done by setting per-user variables. PKG_UID.user is the numeric UID for the user. PKG_GECOS.user is the user's description or comment. PKG_HOME.user is the user's home directory, and defaults to /nonexistent if not specified. PKG_SHELL.user is the user's shell, and defaults to /sbin/nologin if not specified.

    Similarly, groups can be created by adding entries to the PKG_GROUPS variable, whose syntax is:

    group
    

    The numeric GID of the group may be set by defining PKG_GID.group.

    If a package needs to create the users and groups at an earlier stage, then it can set USERGROUP_PHASE to either configure,build, or pre-install to indicate the phase before which the users and groups are created. In this case, the numeric UIDs and GIDs of the created users and groups are automatically hardcoded into the final installation scripts.

    d6171 18 a6188 13 17.5. System shells

    Packages that install system shells should register them in the shell database, /etc/shells, to make things easier to the administrator. This must be done from the installation scripts to keep binary packages working on any system. pkginstall provides an easy way to accomplish this task.

    When a package provides a shell interpreter, it has to set the PKG_SHELL variable to its absolute file name. This will add some hooks to the installation scripts to handle it. Consider the following example, taken from shells/zsh:

    PKG_SHELL=      ${PREFIX}/bin/zsh
    
    d6191 4 a6194 21 17.5.1. Disabling shell registration

    The automatic registration of shell interpreters can be disabled by the administrator by setting the PKG_REGISTER_SHELLS environment variable to NO.

    17.6. Fonts

    Packages that install X11 fonts should update the database files that index the fonts within each fonts directory. This can easily be accomplished within the pkginstall framework.

    When a package installs X11 fonts, it must list the directories in which fonts are installed in the FONTS_DIRS.type variables, where type can be one of ttf, type1 or x11. This will add hooks to the installation scripts to run the appropriate commands to update the fonts database files within each of those directories. For convenience, if the directory path is relative, it is taken to be relative to the package's installation prefix. Consider the following example, taken from fonts/dbz-ttf:

    d6196 16 a6211 1 FONTS_DIRS.ttf= ${PREFIX}/share/fonts/X11/TTF d6213 120 d6335 42 a6376 18 17.6.1. Disabling automatic update of the fonts databases

    The automatic update of fonts databases can be disabled by the administrator by setting the PKG_UPDATE_FONTS_DB environment variable to NO.

    Chapter 18. Options handling

    Table of Contents

    18.1. Global default options
    18.2. Converting packages to use bsd.options.mk
    18.3. Option Names
    18.4. Determining the options of dependencies
    a6377 41

    Many packages have the ability to be built to support different sets of features. bsd.options.mk is a framework in pkgsrc that provides generic handling of those options that determine different ways in which the packages can be built. It's possible for the user to specify exactly which sets of options will be built into a package or to allow a set of global default options apply.

    There are two broad classes of behaviors that one might want to control via options. One is whether some particular feature is enabled in a program that will be built anyway, often by including or not including a dependency on some other package. The other is whether or not an additional program will be built as part of the package. Generally, it is better to make a split package for such additional programs instead of using options, because it enables binary packages to be built which can then be added separately. For example, the foo package might have minimal dependencies (those packages without which foo doesn't make sense), and then the foo-gfoo package might include the GTK frontend program gfoo. This is better than including a gtk option to foo that adds gfoo, because either that option is default, in which case binary users can't get foo without gfoo, or not default, in which case they can't get gfoo. With split packages, they can install foo without having GTK, and later decide to install gfoo (pulling in GTK at that time). This is an advantage to source users too, avoiding the need for rebuilds.

    Plugins with widely varying dependencies should usually be split instead of options.

    It is often more work to maintain split packages, especially if the upstream package does not support this. The decision of split vs. option should be made based on the likelihood that users will want or object to the various pieces, the size of the dependencies that are included, and the amount of work.

    A further consideration is licensing. Non-free parts, or parts that depend on non-free dependencies (especially plugins) should almost always be split if feasible.

    18.1. Global default options

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of the options that should be built into every package if that option is supported. This variable should be set in mk.conf.

    d6381 28 a6408 8 18.2. Converting packages to use bsd.options.mk

    The following example shows how bsd.options.mk should be used by the hypothetical ``wibble'' package, either in the package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    d6410 6 a6415 7 PKG_OPTIONS_VAR= PKG_OPTIONS.wibble PKG_SUPPORTED_OPTIONS= wibble-foo ldap PKG_OPTIONS_OPTIONAL_GROUPS= database PKG_OPTIONS_GROUP.database= mysql pgsql PKG_SUGGESTED_OPTIONS= wibble-foo PKG_OPTIONS_LEGACY_VARS+= WIBBLE_USE_OPENLDAP:ldap PKG_OPTIONS_LEGACY_OPTS+= foo:wibble-foo d6417 7 a6423 1 .include "../../mk/bsd.prefs.mk" d6425 12 a6436 6 # this package was previously named wibble2 .if defined(PKG_OPTIONS.wibble2) PKG_LEGACY_OPTIONS+= ${PKG_OPTIONS.wibble2} PKG_OPTIONS_DEPRECATED_WARNINGS+= \ "Deprecated variable PKG_OPTIONS.wibble2 used, use ${PKG_OPTIONS_VAR} instead." .endif d6438 7 a6444 28 .include "../../mk/bsd.options.mk" # Package-specific option-handling ### ### FOO support ### .if !empty(PKG_OPTIONS:Mwibble-foo) CONFIGURE_ARGS+= --enable-foo .endif ### ### LDAP support ### .if !empty(PKG_OPTIONS:Mldap) . include "../../databases/openldap-client/buildlink3.mk" CONFIGURE_ARGS+= --enable-ldap=${BUILDLINK_PREFIX.openldap-client} .endif ### ### database support ### .if !empty(PKG_OPTIONS:Mmysql) . include "../../mk/mysql.buildlink3.mk" .endif .if !empty(PKG_OPTIONS:Mpgsql) . include "../../mk/pgsql.buildlink3.mk" .endif d6446 67 a6512 78

    The first section contains the information about which build options are supported by the package, and any default options settings if needed.

    1. PKG_OPTIONS_VAR is the name of the make(1) variable that the user can set to override the default options. It should be set to PKG_OPTIONS.pkgbase. Do not set it to PKG_OPTIONS.${PKGBASE}, since PKGBASE is not defined at the point where the options are processed.

    2. PKG_SUPPORTED_OPTIONS is a list of build options supported by the package.

    3. PKG_OPTIONS_OPTIONAL_GROUPS is a list of names of groups of mutually exclusive options. The options in each group are listed in PKG_OPTIONS_GROUP.groupname. The most specific setting of any option from the group takes precedence over all other options in the group. Options from the groups will be automatically added to PKG_SUPPORTED_OPTIONS.

    4. PKG_OPTIONS_REQUIRED_GROUPS is like PKG_OPTIONS_OPTIONAL_GROUPS, but building the packages will fail if no option from the group is selected.

    5. PKG_OPTIONS_NONEMPTY_SETS is a list of names of sets of options. At least one option from each set must be selected. The options in each set are listed in PKG_OPTIONS_SET.setname. Options from the sets will be automatically added to PKG_SUPPORTED_OPTIONS. Building the package will fail if no option from the set is selected.

    6. PKG_SUGGESTED_OPTIONS is a list of build options which are enabled by default.

    7. PKG_OPTIONS_LEGACY_VARS is a list of USE_VARIABLE:option pairs that map legacy mk.conf variables to their option counterparts. Pairs should be added with += to keep the listing of global legacy variables. A warning will be issued if the user uses a legacy variable.

    8. PKG_OPTIONS_LEGACY_OPTS is a list of old-option:new-option pairs that map options that have been renamed to their new counterparts. Pairs should be added with += to keep the listing of global legacy options. A warning will be issued if the user uses a legacy option.

    9. PKG_LEGACY_OPTIONS is a list of options implied by deprecated variables used. This can be used for cases that neither PKG_OPTIONS_LEGACY_VARS nor PKG_OPTIONS_LEGACY_OPTS can handle, e. g. when PKG_OPTIONS_VAR is renamed.

    10. PKG_OPTIONS_DEPRECATED_WARNINGS is a list of warnings about deprecated variables or options used, and what to use instead.

    A package should never modify PKG_DEFAULT_OPTIONS or the variable named in PKG_OPTIONS_VAR. These are strictly user-settable. To suggest a default set of options, use PKG_SUGGESTED_OPTIONS.

    PKG_OPTIONS_VAR must be defined before including bsd.options.mk. If none of PKG_SUPPORTED_OPTIONS, PKG_OPTIONS_OPTIONAL_GROUPS, and PKG_OPTIONS_REQUIRED_GROUPS are defined (as can happen with platform-specific options if none of them is supported on the current platform), PKG_OPTIONS is set to the empty list and the package is otherwise treated as not using the options framework.

    After the inclusion of bsd.options.mk, the variable PKG_OPTIONS contains the list of selected build options, properly filtered to remove unsupported and duplicate options.

    The remaining sections contain the logic that is specific to each option. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS:

    d6514 15 a6528 1 .if !empty(PKG_OPTIONS:Moption) a6530 46

    18.3. Option Names

    Options that enable similar features in different packages (like optional support for a library) should use a common name in all packages that support it (like the name of the library). If another package already has an option with the same meaning, use the same name.

    Options that enable features specific to one package, where it's unlikely that another (unrelated) package has the same (or a similar) optional feature, should use a name prefixed with pkgname-.

    If a group of related packages share an optional feature specific to that group, prefix it with the name of the main package (e. g. djbware-errno-hack).

    For new options, add a line to mk/defaults/options.description. Lines have two fields, separated by tab. The first field is the option name, the second its description. The description should be a whole sentence (starting with an uppercase letter and ending with a period) that describes what enabling the option does. E. g. Enable ispell support. The file is sorted by option names.

    18.4. Determining the options of dependencies

    When writing buildlink3.mk files, it is often necessary to list different dependencies based on the options with which the package was built. For querying these options, the file pkgsrc/mk/pkg-build-options.mk should be used. A typical example looks like this:

    pkgbase := libpurple
    .include "../../mk/pkg-build-options.mk"
    
    .if !empty(PKG_BUILD_OPTIONS.libpurple:Mdbus)
    ...
    .endif
    

    Including pkg-build-options.mk here will set the variable PKG_BUILD_OPTIONS.libpurple to the build options of the libpurple package, which can then be queried like PKG_OPTIONS in the options.mk file. See the file pkg-build-options.mk for more details.

    d6535 1 a6535 1 Chapter 19. The build process
    d6539 9 a6547 21
    19.1. Introduction
    19.2. Program location
    19.3. Directories used during the build process
    19.4. Running a phase
    19.5. The fetch phase
    19.5.1. What to fetch and where to get it from
    19.5.2. How are the files fetched?
    19.6. The checksum phase
    19.7. The extract phase
    19.8. The patch phase
    19.9. The tools phase
    19.10. The wrapper phase
    19.11. The configure phase
    19.12. The build phase
    19.13. The test phase
    19.14. The install phase
    19.15. The package phase
    19.16. Cleaning up
    19.17. Other helpful targets
    d6550 8 d6560 9 a6568 24 19.1. Introduction

    This chapter gives a detailed description on how a package is built. Building a package is separated into different phases (for example fetch, build, install), all of which are described in the following sections. Each phase is split into so-called stages, which take the name of the containing phase, prefixed by one of pre-, do- or post-. (Examples are pre-configure, post-build.) Most of the actual work is done in the do-* stages.

    Never override the regular targets (like fetch), if you have to, override the do-* ones instead.

    The basic steps for building a program are always the same. First the program's source (distfile) must be brought to the local system and then extracted. After any pkgsrc-specific patches to compile properly are applied, the software can be configured, then built (usually by compiling), and finally the generated binaries, etc. can be put into place on the system.

    To get more details about what is happening at each step, you can set the PKG_VERBOSE variable, or the PATCH_DEBUG variable if you are just interested in more details about the patch step.

    d6572 5 a6576 39 19.2. Program location

    Before outlining the process performed by the NetBSD package system in the next section, here's a brief discussion on where programs are installed, and which variables influence this.

    The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the cross category. The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See Section 13.3, “patches/* and Section 21.3.1, “Shared libraries - libtool” for more details.

    When choosing which of these variables to use, follow the following rules:

    • PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own installation path, use ${PREFIX}.

    • LOCALBASE is where all non-X11 pkgs are installed. If you need to construct a -I or -L argument to the compiler to find includes and libraries installed by another non-X11 pkg, use ${LOCALBASE}. The name LOCALBASE stems from FreeBSD, which installed all packages in /usr/local. As pkgsrc leaves /usr/local for the system administrator, this variable is a misnomer.

    • X11BASE is where the actual X11 distribution (from xsrc, etc.) is installed. When looking for standard X11 includes (not those installed by a package), use ${X11BASE}.

    • X11-based packages using imake must set USE_IMAKE to be installed correctly under LOCALBASE.

    • Within ${PREFIX}, packages should install files according to hier(7), with the exception that manual pages go into ${PREFIX}/man, not ${PREFIX}/share/man.

    d6580 9 a6588 91 19.3. Directories used during the build process

    When building a package, various directories are used to store source files, temporary files, pkgsrc-internal files, and so on. These directories are explained here.

    Some of the directory variables contain relative pathnames. There are two common base directories for these relative directories: PKGSRCDIR/PKGPATH is used for directories that are pkgsrc-specific. WRKSRC is used for directories inside the package itself.

    PKGSRCDIR

    This is an absolute pathname that points to the pkgsrc root directory. Generally, you don't need it.

    PKGDIR

    This is an absolute pathname that points to the current package.

    PKGPATH

    This is a pathname relative to PKGSRCDIR that points to the current package.

    WRKDIR

    This is an absolute pathname pointing to the directory where all work takes place. The distfiles are extracted to this directory. It also contains temporary directories and log files used by the various pkgsrc frameworks, like buildlink or the wrappers.

    WRKSRC

    This is an absolute pathname pointing to the directory where the distfiles are extracted. It is usually a direct subdirectory of WRKDIR, and often it's the only directory entry that isn't hidden. This variable may be changed by a package Makefile.

    The CREATE_WRKDIR_SYMLINK definition takes either the value yes or no and defaults to no. It indicates whether a symbolic link to the WRKDIR is to be created in the pkgsrc entry's directory. If users would like to have their pkgsrc trees behave in a read-only manner, then the value of CREATE_WRKDIR_SYMLINK should be set to no.

    19.4. Running a phase

    You can run a particular phase by typing make phase, where phase is the name of the phase. This will automatically run all phases that are required for this phase. The default phase is build, that is, when you run make without parameters in a package directory, the package will be built, but not installed.

    19.5. The fetch phase

    The first step in building a package is to fetch the distribution files (distfiles) from the sites that are providing them. This is the task of the fetch phase.

    19.5.1. What to fetch and where to get it from

    In simple cases, MASTER_SITES defines all URLs from where the distfile, whose name is derived from the DISTNAME variable, is fetched. The more complicated cases are described below.

    The variable DISTFILES specifies the list of distfiles that have to be fetched. Its value defaults to ${DEFAULT_DISTFILES} and its value is ${DISTNAME}${EXTRACT_SUFX}, so that most packages don't need to define it at all. EXTRACT_SUFX is .tar.gz by default, but can be changed freely. Note that if your package requires additional distfiles to the default one, you cannot just append the additional filenames using the += operator, but you have write for example:

    DISTFILES=      ${DEFAULT_DISTFILES} additional-files.tar.gz
    

    Each distfile is fetched from a list of sites, usually MASTER_SITES. If the package has multiple DISTFILES or multiple PATCHFILES from different sites, you can set SITES.distfile to the list of URLs where the file distfile (including the suffix) can be found.

    d6590 1 a6590 5 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} DISTFILES+= foo-file.tar.gz SITES.foo-file.tar.gz= \ https://www.somewhere.com/somehow/ \ https://www.somewhereelse.com/mirror/somehow/ d6592 50 a6641 9

    When actually fetching the distfiles, each item from MASTER_SITES or SITES.* gets the name of each distfile appended to it, without an intermediate slash. Therefore, all site values have to end with a slash or other separator character. This allows for example to set MASTER_SITES to a URL of a CGI script that gets the name of the distfile as a parameter. In this case, the definition would look like:

    d6643 1 a6643 1 MASTER_SITES= https://www.example.com/download.cgi?file= d6645 14 a6658 10

    The exception to this rule are URLs starting with a dash. In that case the URL is taken as is, fetched and the result stored under the name of the distfile. You can use this style for the case when the download URL style does not match the above common case. For example, if permanent download URL is a redirector to the real download URL, or the download file name is offered by an HTTP Content-Disposition header. In the following example, foo-1.0.0.tar.gz will be created instead of the default v1.0.0.tar.gz.

    d6660 4 a6663 2 DISTNAME= foo-1.0.0 MASTER_SITES= -https://www.example.com/archive/v1.0.0.tar.gz d6665 1 a6665 83

    There are some predefined values for MASTER_SITES, which can be used in packages. The names of the variables should speak for themselves.

    MASTER_SITE_APACHE MASTER_SITE_BACKUP
    MASTER_SITE_CRATESIO MASTER_SITE_CYGWIN
    MASTER_SITE_DEBIAN MASTER_SITE_FREEBSD
    MASTER_SITE_FREEBSD_LOCAL MASTER_SITE_GENTOO
    MASTER_SITE_GITHUB MASTER_SITE_GNOME
    MASTER_SITE_GNU MASTER_SITE_GNUSTEP
    MASTER_SITE_HASKELL_HACKAGE MASTER_SITE_IFARCHIVE
    MASTER_SITE_KDE MASTER_SITE_MOZILLA
    MASTER_SITE_MOZILLA_ALL MASTER_SITE_MYSQL
    MASTER_SITE_NETLIB MASTER_SITE_OPENBSD
    MASTER_SITE_OPENOFFICE MASTER_SITE_OSDN
    MASTER_SITE_PERL_CPAN MASTER_SITE_PGSQL
    MASTER_SITE_PYPI MASTER_SITE_RUBYGEMS
    MASTER_SITE_R_CRAN MASTER_SITE_SOURCEFORGE
    MASTER_SITE_SUNSITE MASTER_SITE_SUSE
    MASTER_SITE_TEX_CTAN MASTER_SITE_XCONTRIB
    MASTER_SITE_XEMACS MASTER_SITE_XORG

    Some explanations for the less self-explaining ones: MASTER_SITE_BACKUP contains backup sites for packages that are maintained in ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local package source distributions that are maintained in ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/LOCAL_PORTS/.

    If you choose one of these predefined sites, you may want to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

    d6667 6 a6672 2 MASTER_SITES= ${MASTER_SITE_GNU:=subdirectory/name/} MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=project_name/} d6674 3 a6676 35

    Note the trailing slash after the subdirectory name.

    19.5.2. How are the files fetched?

    The fetch phase makes sure that all the distfiles exist in a local directory (DISTDIR, which can be set by the pkgsrc user). If the files do not exist, they are fetched using commands of the form

    ${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS}
    

    where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES.file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first and the last can be optionally sorted by the user, via setting either MASTER_SORT_RANDOM, and MASTER_SORT_AWK or MASTER_SORT_REGEX.

    The specific command and arguments used depend on the FETCH_USING parameter. The example above is for FETCH_USING=custom.

    The distfiles mirror run by the NetBSD Foundation uses the mirror-distfiles target to mirror the distfiles, if they are freely distributable. Packages setting NO_SRC_ON_FTP (usually to ${RESTRICTED}) will not have their distfiles mirrored.

    d6678 12 d6693 8 a6700 8 19.6. The checksum phase

    After the distfile(s) are fetched, their checksum is generated and compared with the checksums stored in the distinfo file. If the checksums don't match, the build is aborted. This is to ensure the same distfile is used for building, and that the distfile wasn't changed, e.g. by some malign force, deliberately changed distfiles on the master distribution site or network lossage.

    d6704 11 a6714 37 19.7. The extract phase

    When the distfiles are present on the local system, they need to be extracted, as they usually come in the form of some compressed archive format.

    By default, all DISTFILES are extracted. If you only need some of them, you can set the EXTRACT_ONLY variable to the list of those files.

    Extracting the files is usually done by a little program, mk/extract/extract, which already knows how to extract various archive formats, so most likely you will not need to change anything here. But if you need, the following variables may help you:

    EXTRACT_OPTS_{BIN,LHA,PAX,RAR,TAR,ZIP,ZOO}

    Use these variables to override the default options for an extract command, which are defined in mk/extract/extract.

    EXTRACT_USING

    This variable can be set to bsdtar, gtar, nbtar (which is the default value), pax, or an absolute pathname pointing to the command with which tar archives should be extracted. It is preferred to choose bsdtar over gtar if NetBSD's pax-as-tar is not good enough.

    If the extract program doesn't serve your needs, you can also override the EXTRACT_CMD variable, which holds the command used for extracting the files. This command is executed in the ${WRKSRC} directory. During execution of this command, the shell variable extract_file holds the absolute pathname of the file that is going to be extracted.

    And if that still does not suffice, you can override the do-extract target in the package Makefile.

    d6718 15 a6732 16 19.8. The patch phase

    After extraction, all the patches named by the PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See Section 13.3, “patches/* for more details.

    By default patch(1) is given special arguments to make it fail if the expected text from the patch context is not found in the patched file. If that happens, fix the patch file by comparing it with the actual text in the file to be patched.

    d6736 22 a6757 2 19.9. The tools phase

    This is covered in Chapter 20, Tools needed for building or running. d6760 49 d6811 63 a6873 32 19.10. The wrapper phase

    This phase creates wrapper programs for the compilers and linkers. The following variables can be used to tweak the wrappers.

    ECHO_WRAPPER_MSG

    The command used to print progress messages. Does nothing by default. Set to ${ECHO} to see the progress messages.

    WRAPPER_DEBUG

    This variable can be set to yes (default) or no, depending on whether you want additional information in the wrapper log file.

    WRAPPER_UPDATE_CACHE

    This variable can be set to yes or no, depending on whether the wrapper should use its cache, which will improve the speed. The default value is yes, but is forced to no if the platform does not support it.

    WRAPPER_REORDER_CMDS

    A list of reordering commands. A reordering command has the form reorder:l:lib1:lib2. It ensures that that -llib1 occurs before -llib2.

    d6875 31 a6905 16

    19.11. The configure phase

    Most pieces of software need information on the header files, system calls, and library routines which are available on the platform they run on. The process of determining this information is known as configuration, and is usually automated. In most cases, a script is supplied with the distfiles, and its invocation results in generation of header files, Makefiles, etc.

    If the package contains a configure script, this can be invoked by setting HAS_CONFIGURE to yes. If the configure script is a GNU autoconf script, you should set GNU_CONFIGURE to yes instead. What happens in the configure phase is roughly:

    d6907 2 a6908 5 .for d in ${CONFIGURE_DIRS} cd ${WRKSRC} \ && cd ${d} \ && env ${CONFIGURE_ENV} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} .endfor d6910 5 a6914 34

    CONFIGURE_DIRS (default: .) is a list of pathnames relative to WRKSRC. In each of these directories, the configure script is run with the environment CONFIGURE_ENV and arguments CONFIGURE_ARGS. The variables CONFIGURE_ENV, CONFIGURE_SCRIPT (default: ./configure) and CONFIGURE_ARGS may all be changed by the package.

    If the program uses the Perl way of configuration (mainly Perl modules, but not only), i.e. a file called Makefile.PL, it should include ../../lang/perl5/module.mk. To set any parameter for Makefile.PL use the MAKE_PARAMS variable (e.g., MAKE_PARAMS+=foo=bar

    If the program uses an Imakefile for configuration, the appropriate steps can be invoked by setting USE_IMAKE to yes. If you only need xmkmf, add it to USE_TOOLS. You can add variables to xmkmf's environment by adding them to the SCRIPTS_ENV variable.

    If the program uses cmake for configuration, the appropriate steps can be invoked by setting USE_CMAKE to yes. You can add variables to cmake's environment by adding them to the CONFIGURE_ENV variable and arguments to cmake by adding them to the CMAKE_ARGS variable. The top directory argument is given by the CMAKE_ARG_PATH variable, that defaults to . (relative to CONFIGURE_DIRS)

    If there is no configure step at all, set NO_CONFIGURE to yes.

    d6918 73 a6990 3 19.12. The build phase

    For building a package, a rough equivalent of the following code is executed.

    d6992 1 a6992 8 .for d in ${BUILD_DIRS} cd ${WRKSRC} \ && cd ${d} \ && env ${MAKE_ENV} \ ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} \ -f ${MAKE_FILE} \ ${BUILD_TARGET} .endfor d6994 4 a6997 19

    BUILD_DIRS (default: .) is a list of pathnames relative to WRKSRC. In each of these directories, MAKE_PROGRAM is run with the environment MAKE_ENV and arguments BUILD_MAKE_FLAGS. The variables MAKE_ENV, BUILD_MAKE_FLAGS, MAKE_FILE and BUILD_TARGET may all be changed by the package.

    The default value of MAKE_PROGRAM is gmake if USE_TOOLS contains gmake, make otherwise. The default value of MAKE_FILE is Makefile, and BUILD_TARGET defaults to all.

    If there is no build step at all, set NO_BUILD to yes.

    d6999 22 a7020 15

    19.13. The test phase

    [TODO]

    19.14. The install phase

    Once the build stage has completed, the final step is to install the software in public directories, so users can access the programs and files.

    In the install phase, a rough equivalent of the following code is executed. Additionally, before and after this code, much magic is performed to do consistency checks, registering the package, and so on.

    d7022 2 a7023 8 .for d in ${INSTALL_DIRS} cd ${WRKSRC} \ && cd ${d} \ && env ${MAKE_ENV} \ ${MAKE_PROGRAM} ${INSTALL_MAKE_FLAGS} \ -f ${MAKE_FILE} \ ${INSTALL_TARGET} .endfor d7025 2 a7026 72

    The variable's meanings are analogous to the ones in the build phase. INSTALL_DIRS defaults to BUILD_DIRS. INSTALL_TARGET is install by default, plus install.man if USE_IMAKE is defined and NO_INSTALL_MANPAGES is not defined.

    In the install phase, the following variables are useful. They are all variations of the install(1) command that have the owner, group and permissions preset. INSTALL is the plain install command. The specialized variants, together with their intended use, are:

    INSTALL_PROGRAM_DIR

    directories that contain binaries

    INSTALL_SCRIPT_DIR

    directories that contain scripts

    INSTALL_LIB_DIR

    directories that contain shared and static libraries

    INSTALL_DATA_DIR

    directories that contain data files

    INSTALL_MAN_DIR

    directories that contain man pages

    INSTALL_GAME_DIR

    directories that contain data files for games

    INSTALL_PROGRAM

    binaries that can be stripped from debugging symbols

    INSTALL_SCRIPT

    binaries that cannot be stripped

    INSTALL_GAME

    game binaries

    INSTALL_LIB

    shared and static libraries

    INSTALL_DATA

    data files

    INSTALL_GAME_DATA

    data files for games

    INSTALL_MAN

    man pages

    Some other variables are:

    INSTALL_UNSTRIPPED

    If set to yes, do not run strip(1) when installing binaries. Any debugging sections and symbols present in binaries will be preserved.

    INSTALLATION_DIRS

    A list of directories relative to PREFIX that are created by pkgsrc at the beginning of the install phase. The package is supposed to create all needed directories itself before installing files to it and list all other directories here.

    In the rare cases that a package shouldn't install anything, set NO_INSTALL to yes. This is mostly relevant for packages in the regress category.

    d7028 6 a7033 14

    19.15. The package phase

    Once the install stage has completed, a binary package of the installed files can be built. These binary packages can be used for quick installation without previous compilation, e.g. by the make bin-install or by using pkg_add.

    By default, the binary packages are created in ${PACKAGES}/All and symlinks are created in ${PACKAGES}/category, one for each category in the CATEGORIES variable. PACKAGES defaults to pkgsrc/packages.

    a7034 7

    19.16. Cleaning up

    Once you're finished with a package, you can clean the work directory by running make clean. If you want to clean the work directories of all dependencies too, use make clean-depends.

    d7038 44 a7081 328 19.17. Other helpful targets
    pre/post-*

    For any of the main targets described in the previous section, two auxiliary targets exist with pre- and post- used as a prefix for the main target's name. These targets are invoked before and after the main target is called, allowing extra configuration or installation steps be performed from a package's Makefile, for example, which a program's configure script or install target omitted.

    do-*

    Should one of the main targets do the wrong thing, and should there be no variable to fix this, you can redefine it with the do-* target. (Note that redefining the target itself instead of the do-* target is a bad idea, as the pre-* and post-* targets won't be called anymore, etc.) You will not usually need to do this.

    reinstall

    If you did a make install and you noticed some file was not installed properly, you can repeat the installation with this target, which will ignore the already installed flag.

    This is the default value of DEPENDS_TARGET except in the case of make update and make package, where the defaults are package and update, respectively.

    deinstall

    This target does a pkg_delete(1) in the current directory, effectively de-installing the package. The following variables can be used to tune the behaviour:

    PKG_VERBOSE

    Add a "-v" to the pkg_delete(1) command.

    DEINSTALLDEPENDS

    Remove all packages that require (depend on) the given package. This can be used to remove any packages that may have been pulled in by a given package, e.g. if make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, this is likely to remove whole KDE. Works by adding -R to the pkg_delete(1) command line.

    bin-install

    Install a binary package from local disk and via FTP from a list of sites (see the BINPKG_SITES variable), and do a make package if no binary package is available anywhere. The arguments given to pkg_add can be set via BIN_INSTALL_FLAGS e.g., to do verbose operation, etc.

    install-clean

    This target removes the state files for the "install" and later phases so that the "install" target may be re-invoked. This can be used after editing the PLIST to install the package without rebuilding it.

    build-clean

    This target removes the state files for the "build" and later phases so that the "build" target may be re-invoked.

    update

    This target causes the current package to be updated to the latest version. The package and all depending packages first get de-installed, then current versions of the corresponding packages get compiled and installed. This is similar to manually noting which packages are currently installed, then performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    You can use the update target to resume package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise, you lose the ability to automatically update the current package along with the dependent packages you have installed.

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    The following variables can be used either on the command line or in mk.conf to alter the behaviour of make update:

    UPDATE_TARGET

    Install target to recursively use for the updated package and the dependent packages. Defaults to DEPENDS_TARGET if set, install otherwise for make update. Other good targets are package or bin-install. Do not set this to update or you will get stuck in an endless loop!

    NOCLEAN

    Don't clean up after updating. Useful if you want to leave the work sources of the updated packages around for inspection or other purposes. Be sure you eventually clean up the source tree (see the clean-update target below) or you may run into troubles with old source code still lying around on your next make or make update.

    REINSTALL

    Deinstall each package before installing (making DEPENDS_TARGET). This may be necessary if the clean-update target (see below) was called after interrupting a running make update.

    DEPENDS_TARGET

    Allows you to disable recursion and hardcode the target for packages. The default is update for the update target, facilitating a recursive update of prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    clean-update

    Clean the source tree for all packages that would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    If you are unsure about whether your tree is clean, you can either perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running make update for the first time, otherwise you lose all the packages you wanted to update!):

    # make clean-update
    # make clean CLEANDEPENDS=YES
    # make update
    	  

    The following variables can be used either on the command line or in mk.conf to alter the behaviour of make clean-update:

    CLEAR_DIRLIST

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see above).

    replace

    Update the installation of the current package. This differs from update in that it does not replace dependent packages. You will need to install pkgtools/pkg_tarup for this target to work.

    Be careful when using this target! There are no guarantees that dependent packages will still work, in particular they will most certainly break if you make replace a library package whose shared library major version changed between your installed version and the new one. For this reason, this target is not officially supported and only recommended for advanced users.

    info

    This target invokes pkg_info(1) for the current package. You can use this to check which version of a package is installed.

    index

    This is a top-level command, i.e. it should be used in the pkgsrc directory. It creates a database of all packages in the local pkgsrc tree, including dependencies, comment, maintainer, and some other useful information. Individual entries are created by running make describe in the packages' directories. This index file is saved as pkgsrc/INDEX. It can be displayed in verbose format by running make print-index. You can search in it with make search key=something. You can extract a list of all packages that depend on a particular one by running make show-deps PKG=somepackage.

    Running this command takes a very long time, some hours even on fast machines!

    readme

    This target generates a README.html file, which can be viewed using a browser such as www/firefox or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    The target can be run at the toplevel or in category directories, in which case it descends recursively.

    readme-all

    This is a top-level command, run it in pkgsrc. Use this target to create a file README-all.html which contains a list of all packages currently available in the NetBSD Packages Collection, together with the category they belong to and a short description. This file is compiled from the pkgsrc/*/README.html files, so be sure to run this after a make readme.

    cdrom-readme

    This is very much the same as the readme target (see above), but is to be used when generating a pkgsrc tree to be written to a CD-ROM. This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

    show-distfiles

    This target shows which distfiles and patchfiles are needed to build the package (ALLFILES, which contains all DISTFILES and PATCHFILES, but not patches/*).

    show-downlevel

    This target shows nothing if the package is not installed. If a version of this package is installed, but is not the version provided in this version of pkgsrc, then a warning message is displayed. This target can be used to show which of your installed packages are downlevel, and so the old versions can be deleted, and the current ones added.

    show-pkgsrc-dir

    This target shows the directory in the pkgsrc hierarchy from which the package can be built and installed. This may not be the same directory as the one from which the package was installed. This target is intended to be used by people who may wish to upgrade many packages on a single host, and can be invoked from the top-level pkgsrc Makefile by using the show-host-specific-pkgs target.

    show-installed-depends

    This target shows which installed packages match the current package's DEPENDS. Useful if out of date dependencies are causing build problems.

    print-build-depends-list

    This target shows the list of packages that the current package depends on for building.

    print-run-depends-list

    This target shows the list of packages that the current package depends on for running.

    check-shlibs

    After a package is installed, check all its binaries and (on ELF platforms) shared libraries to see if they find the shared libs they need. Run by default if PKG_DEVELOPER is set in mk.conf.

    print-PLIST

    After a make install from a new or upgraded pkg, this prints out an attempt to generate a new PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is strongly recommended to review the result before putting it into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

    If the package installs files via tar(1) or other methods that don't update file access times, be sure to add these files manually to your PLIST, as the find -newer command used by this target won't catch them!

    See Section 15.3, “Tweaking output of make print-PLIST for more information on this target.

    d7084 37 a7120 10

    Chapter 20. Tools needed for building or running

    Table of Contents

    20.1. Tools for pkgsrc builds
    20.2. Tools needed by packages
    20.3. Tools provided by platforms
    a7121 19

    The USE_TOOLS definition is used both internally by pkgsrc and also for individual packages to define what commands are needed for building a package (like TOOL_DEPENDS) or for later run-time of an installed packaged (such as DEPENDS). If the native system provides an adequate tool, then in many cases, a pkgsrc package will not be used.

    When building a package, the replacement tools are made available in a directory (as symlinks or wrapper scripts) that is early in the executable search path. Just like the buildlink system, this helps with consistent builds.

    A tool may be needed to help build a specific package. For example, perl, GNU make (gmake) or yacc may be needed.

    Also a tool may be needed, for example, because the native system's supplied tool may be inefficient for building a package with pkgsrc. For example, a package may need GNU awk, bison (instead of yacc) or a better sed.

    The tools used by a package can be listed by running make show-tools.

    d7124 20 a7143 10 20.1. Tools for pkgsrc builds

    The default set of tools used by pkgsrc is defined in bsd.pkg.mk. This includes standard Unix tools, such as: cat, awk, chmod, test, and so on. These can be seen by running: make show-var VARNAME=USE_TOOLS.

    If a package needs a specific program to build then the USE_TOOLS variable can be used to define the tools needed.

    d7147 13 a7159 6 20.2. Tools needed by packages

    In the following examples, the :run means that it is needed at run-time (and becomes a DEPENDS). The default is a build dependency which can be set with :build. (So in this example, it is the same as gmake:build and pkg-config:build.)

    d7161 1 a7161 1 USE_TOOLS+= gmake perl:run pkg-config d7163 6 a7168 8

    When using the tools framework, a TOOLS_PATH.foo variable is defined which contains the full path to the appropriate tool. For example, TOOLS_PATH.bash could be /bin/bash on Linux systems.

    If you always need a pkgsrc version of the tool at run-time, then just use DEPENDS instead.

    a7169 16

    20.3. Tools provided by platforms

    When improving or porting pkgsrc to a new platform, have a look at (or create) the corresponding platform specific make file fragment under pkgsrc/mk/tools/tools.${OPSYS}.mk which defines the name of the common tools. For example:

    .if exists(/usr/bin/bzcat)
    TOOLS_PLATFORM.bzcat?=          /usr/bin/bzcat
    .elif exists(/usr/bin/bzip2)
    TOOLS_PLATFORM.bzcat?=          /usr/bin/bzip2 -cd
    .endif
    
    TOOLS_PLATFORM.true?=           true                    # shell builtin
    
    d7492 1 a7492 1 See Chapter 16, Buildlink methodology for more information.

    d7499 1 a7499 1 package. See also Chapter 12, Creating a new pkgsrc package from scratch for more information.

    d8328 1 a8328 1 framework, see Chapter 16, Buildlink methodology).

    d9005 1 a9005 1

    See Section 15.5, “Man page compression” for d9244 236 a9479 39

    21.6.19. Packages installing hicolor theme icons

    If a package installs images under the share/icons/hicolor and/or updates the share/icons/hicolor/icon-theme.cache database, you need to take some extra steps to make sure that the shared theme directory is handled appropriately and that the cache database is rebuilt:

    1. Include ../../graphics/hicolor-icon-theme/buildlink3.mk.

    2. Check the PLIST and remove the entry that refers to the theme cache.

    3. Ensure that the PLIST does not remove the shared icon directories from the share/icons/hicolor hierarchy because they will be handled automatically.

    The best way to verify that the PLIST is correct with respect to the last two points is to regenerate it using make print-PLIST.

    21.6.20. Packages installing desktop files

    If a package installs .desktop files under share/applications and these include MIME information (MimeType key), you need to take extra steps to ensure that they are registered into the MIME database:

    1. Include ../../sysutils/desktop-file-utils/desktopdb.mk.

    2. Check the PLIST and remove the entry that refers to the share/applications/mimeinfo.cache file. It will be handled automatically.

    The best way to verify that the PLIST is correct with respect to the last point is to regenerate it using make print-PLIST.

    d9481 1 d9485 35 a9519 21 21.7. Marking packages as having problems

    In some cases one does not have the time to solve a problem immediately. In this case, one can plainly mark a package as broken. For this, one just sets the variable BROKEN to the reason why the package is broken (similar to the PKG_FAIL_REASON variable). A user trying to build the package will immediately be shown this message, and the build will not be even tried.

    BROKEN packages are removed from pkgsrc in irregular intervals.

    Chapter 22. Debugging

    To check out all the gotchas when building a package, here are the steps that I do in order to get a package working. Please note this is basically the same as what was explained in the previous sections, only with some debugging aids.

    • Be sure to set PKG_DEVELOPER=yes in mk.conf.

    • d9521 10 a9530 28

      Install pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

      % mkdir /usr/pkgsrc/category/examplepkg
      % cd /usr/pkgsrc/category/examplepkg
      % url2pkg https://www.example.com/path/to/distfile.tar.gz
    • Edit the Makefile as requested.

    • Fill in the DESCR file

    • Run make configure

    • Add any dependencies glimpsed from documentation and the configure step to the package's Makefile.

    • Make the package compile, doing multiple rounds of

      % make
      % pkgvi ${WRKSRC}/some/file/that/does/not/compile
      % mkpatches
      % patchdiff
      % mv ${WRKDIR}/.newpatches/* patches
      % make mps
      % make clean

      Doing this step as non-root user will ensure that no files are modified that shouldn't be, especially during the build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

      d9532 5 a9536 2
    • Look at the Makefile, fix if necessary; see Section 13.1, “Makefile.

    • d9538 13 a9550 11

      Generate a PLIST:

      # make install
      # make print-PLIST >PLIST
      # make deinstall
      # make install
      # make deinstall

      You usually need to be root to do this. Look if there are any files left:

      # make print-PLIST

      If this reveals any files that are missing in PLIST, add them.

      d9553 4 a9556 4

      Now that the PLIST is OK, install the package again and make a binary package:

      # make reinstall
      # make package
      d9558 40 a9597 21
    • Delete the installed package:

      # pkg_delete examplepkg
    • Repeat the above make print-PLIST command, which shouldn't find anything now:

      # make print-PLIST
    • Reinstall the binary package:

      # pkg_add .../examplepkg.tgz
    • Play with it. Make sure everything works.

    • Run pkglint from pkgtools/pkglint, and fix the problems it reports:

      # pkglint
    • Submit (or commit, if you have cvs access); see Chapter 23, Submitting and Committing.

    d9631 1 a9631 1 runs well; see Chapter 22, Debugging and the rest of this d10093 14 a10106 118

    24.9.

    I have a little time to kill. What shall I do?

    This is not really an FAQ yet, but here's the answer anyway.

    • Run pkg_chk -N (from the pkgtools/pkg_chk package). It will tell you about newer versions of installed packages that are available, but not yet updated in pkgsrc.

    • Browse pkgsrc/doc/TODO — it contains a list of suggested new packages and a list of cleanups and enhancements for pkgsrc that would be nice to have.

    • Review packages for which review was requested on the tech-pkg mailing list.

    Chapter 25. GNOME packaging and porting

    Quoting GNOME's web site:

    The GNOME project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.

    pkgsrc provides a seamless way to automatically build and install a complete GNOME environment under many different platforms. We can say with confidence that pkgsrc is one of the most advanced build and packaging systems for GNOME due to its included technologies buildlink3, the wrappers and tools framework and automatic configuration file management. Lots of efforts are put into achieving a completely clean deinstallation of installed software components.

    Given that pkgsrc is NetBSD's official packaging system, the above also means that great efforts are put into making GNOME work under this operating system. Recently, DragonFly BSD also adopted pkgsrc as its preferred packaging system, contributing lots of portability fixes to make GNOME build and install under it.

    This chapter is aimed at pkgsrc developers and other people interested in helping our GNOME porting and packaging efforts. It provides instructions on how to manage the existing packages and some important information regarding their internals.

    We need your help!

    Should you have some spare cycles to devote to NetBSD, pkgsrc and GNOME and are willing to learn new exciting stuff, please jump straight to the pending work list! There is still a long way to go to get a fully-functional GNOME desktop under NetBSD and we need your help to achieve it!

    25.1. Meta packages

    pkgsrc includes three GNOME-related meta packages:

    • meta-pkgs/gnome-base: Provides the core GNOME desktop environment. It only includes the necessary bits to get it to boot correctly, although it may lack important functionality for daily operation. The idea behind this package is to let end users build their own configurations on top of this one, first installing this meta package to achieve a functional setup and then adding individual applications.

    • meta-pkgs/gnome: Provides a complete installation of the GNOME platform and desktop as defined by the GNOME project; this is based on the components distributed in the platform/x.y/x.y.z/sources and desktop/x.y/x.y.z/sources directories of the official FTP server. Developer-only tools found in those directories are not installed unless required by some other component to work properly. Similarly, packages from the bindings set (bindings/x.y/x.y.z/sources) are not pulled in unless required as a dependency for an end-user component. This package "extends" meta-pkgs/gnome-base.

    • meta-pkgs/gnome-devel: Installs all the tools required to build a GNOME component when fetched from the CVS repository. These are required to let the autogen.sh scripts work appropriately.

    In all these packages, the DEPENDS lines are sorted in a way that eases updates: a package may depend on other packages listed before it but not on any listed after it. It is very important to keep this order to ease updates so... do not change it to alphabetical sorting!

    25.2. Packaging a GNOME application

    Almost all GNOME applications are written in C and use a common set of tools as their build system. Things get different with the new bindings to other languages (such as Python), but the following will give you a general idea on the minimum required tools:

    d10108 11 a10118 45
  • Almost all GNOME applications use the GNU Autotools as their build system. As a general rule you will need to tell this to your package:

    GNU_CONFIGURE=yes
    USE_LIBTOOL=yes
    USE_TOOLS+=gmake
    
  • If the package uses pkg-config to detect dependencies, add this tool to the list of required utilities:

    USE_TOOLS+=pkg-config
    

    Also use pkgtools/verifypc at the end of the build process to ensure that you did not miss to specify any dependency in your package and that the version requirements are all correct.

  • If the package uses intltool, be sure to add intltool to the USE_TOOLS to handle dependencies and to force the package to use the latest available version.

  • If the package uses gtk-doc (a documentation generation utility), do not add a dependency on it. The tool is rather big and the distfile should come with pregenerated documentation anyway; if it does not, it is a bug that you ought to report. For such packages you should disable gtk-doc (unless it is the default):

    CONFIGURE_ARGS+=--disable-gtk-doc
    

    The default location of installed HTML files (share/gtk-doc/<package-name>) is correct and should not be changed unless the package insists on installing them somewhere else. Otherwise programs as devhelp will not be able to open them. You can do that with an entry similar to:

    CONFIGURE_ARGS+=--with-html-dir=${PREFIX}/share/gtk-doc/...
    
  • d10120 1 a10120 46

    GNOME uses multiple shared directories and files under the installation prefix to maintain databases. In this context, shared means that those exact same directories and files are used among several different packages, leading to conflicts in the PLIST. pkgsrc currently includes functionality to handle the most common cases, so you have to forget about using @@unexec ${RMDIR} lines in your file lists and omitting shared files from them. If you find yourself doing those, your package is most likely incorrect.

    The following table lists the common situations that result in using shared directories or files. For each of them, the appropriate solution is given. After applying the solution be sure to regenerate the package's file list with make print-PLIST and ensure it is correct.

    Table 25.1. PLIST handling for GNOME packages

    d10123 1 a10123 118
    If the package... Then...
    Installs OMF files under share/omf. See Section 21.6.10, “Packages installing scrollkeeper/rarian data files”.
    Installs icons under the share/icons/hicolor hierarchy or updates share/icons/hicolor/icon-theme.cache. See Section 21.6.19, “Packages installing hicolor theme icons”.
    Installs files under share/mime/packages. See Section 21.6.14, “Packages installing extensions to the MIME database”.
    Installs .desktop files under share/applications and these include MIME information. See Section 21.6.20, “Packages installing desktop files”.

    25.3. Updating GNOME to a newer version

    When seeing GNOME as a whole, there are two kinds of updates:

    Major update

    Given that there is still a very long way for GNOME 3 (if it ever appears), we consider a major update one that goes from a 2.X version to a 2.Y one, where Y is even and greater than X. These are hard to achieve because they introduce lots of changes in the components' code and almost all GNOME distfiles are updated to newer versions. Some of them can even break API and ABI compatibility with the previous major version series. As a result, the update needs to be done all at once to minimize breakage.

    A major update typically consists of around 80 package updates and the addition of some new ones.

    Minor update

    We consider a minor update one that goes from a 2.A.X version to a 2.A.Y one where Y is greater than X. These are easy to achieve because they do not update all GNOME components, can be done in an incremental way and do not break API nor ABI compatibility.

    A minor update typically consists of around 50 package updates, although the numbers here may vary a lot.

    In order to update the GNOME components in pkgsrc to a new stable release (either major or minor), the following steps should be followed:

    1. Get a list of all the tarballs that form the new release by using the following commands. These will leave the full list of the components' distfiles into the list.txt file:

      % echo ls "*.tar.bz2" | \
          ftp -V ftp://ftp.gnome.org/pub/gnome/platform/x.y/x.y.z/sources/ | \
          awk '{ print $9 }' >list.txt
      % echo ls "*.tar.bz2" | \
          ftp -V ftp://ftp.gnome.org/pub/gnome/desktop/x.y/x.y.z/sources/ | \
          awk '{ print $9 }' >>list.txt
    2. Open each meta package's Makefile and bump their version to the release you are updating them to. The three meta packages should be always consistent with versioning. Obviously remove any PKGREVISIONs that might be in them.

    3. For each meta package, update all its DEPENDS lines to match the latest versions as shown by the above commands. Do not list any newer version (even if found in the FTP) because the meta packages are supposed to list the exact versions that form a specific GNOME release. Exceptions are permitted here if a newer version solves a serious issue in the overall desktop experience; these typically come in the form of a revision bump in pkgsrc, not in newer versions from the developers.

      Packages not listed in the list.txt file should be updated to the latest version available (if found in pkgsrc). This is the case, for example, of the dependencies on the GNU Autotools in the meta-pkgs/gnome-devel meta package.

    4. Generate a patch from the modified meta packages and extract the list of "new" lines. This will provide you an outline on what packages need to be updated in pkgsrc and in what order:

      % cvs diff -u gnome-devel gnome-base gnome | grep '^+D' >todo.txt
    5. For major desktop updates it is recommended to zap all your installed packages and start over from scratch at this point.

    6. Now comes the longest step by far: iterate over the contents of todo.txt and update the packages listed in it in order. For major desktop updates none of these should be committed until the entire set is completed because there are chances of breaking not-yet-updated packages.

    7. Once the packages are up to date and working, commit them to the tree one by one with appropriate log messages. At the end, commit the three meta package updates and all the corresponding changes to the doc/CHANGES-<YEAR> and pkgsrc/doc/TODO files.

    25.4. Patching guidelines

    GNOME is a very big component in pkgsrc which approaches 100 packages. Please, it is very important that you always, always, always feed back any portability fixes you do to a GNOME package to the mainstream developers (see Section 13.3.5, “Feedback to the author”). This is the only way to get their attention on portability issues and to ensure that future versions can be built out-of-the box on NetBSD. The less custom patches in pkgsrc, the easier further updates are. Those developers in charge of issuing major GNOME updates will be grateful if you do that.

    The most common places to report bugs are the GNOME's Bugzilla and the freedesktop.org's Bugzilla. Not all components use these to track bugs, but most of them do. Do not be short on your reports: always provide detailed explanations of the current failure, how it can be improved to achieve maximum portability and, if at all possible, provide a patch against CVS head. The more verbose you are, the higher chances of your patch being accepted.

    Also, please avoid using preprocessor magic to fix portability issues. While the FreeBSD GNOME people are doing a great job in porting GNOME to their operating system, the official GNOME sources are now plagued by conditionals that check for __FreeBSD__ and similar macros. This hurts portability. Please see our patching guidelines (Section 13.3.4, “Patching guidelines”) for more details.

    d10139 1 a10139 1
    26. Design of the pkgsrc infrastructure
    d10141 3 a10143 3
    26.1. The meaning of variable definitions
    26.2. Avoiding problems before they arise
    26.3. Variable evaluation
    d10145 2 a10146 2
    26.3.1. At load time
    26.3.2. At runtime
    d10148 2 a10149 2
    26.4. How can variables be specified?
    26.5. Designing interfaces for Makefile fragments
    d10151 2 a10152 2
    26.5.1. Procedures with parameters
    26.5.2. Actions taken on behalf of parameters
    d10154 1 a10154 1
    26.6. The order in which files are loaded
    d10156 2 a10157 2
    26.6.1. The order in bsd.prefs.mk
    26.6.2. The order in bsd.pkg.mk
    d10160 1 a10160 1
    27. Regression tests
    d10162 2 a10163 2
    27.1. Running the regression tests
    27.2. Adding a new regression test
    d10165 2 a10166 2
    27.2.1. Overridable functions
    27.2.2. Helper functions
    d10169 2 a10170 2
    28. Porting pkgsrc
    28.1. Porting pkgsrc to a new operating system
    d10176 1 a10176 1 Chapter 26. Design of the pkgsrc infrastructure
    d10180 3 a10182 3
    26.1. The meaning of variable definitions
    26.2. Avoiding problems before they arise
    26.3. Variable evaluation
    d10184 2 a10185 2
    26.3.1. At load time
    26.3.2. At runtime
    d10187 2 a10188 2
    26.4. How can variables be specified?
    26.5. Designing interfaces for Makefile fragments
    d10190 2 a10191 2
    26.5.1. Procedures with parameters
    26.5.2. Actions taken on behalf of parameters
    d10193 1 a10193 1
    26.6. The order in which files are loaded
    d10195 2 a10196 2
    26.6.1. The order in bsd.prefs.mk
    26.6.2. The order in bsd.pkg.mk
    d10206 1 a10206 1 26.1. The meaning of variable definitions d10237 1 a10237 1 26.2. Avoiding problems before they arise d10261 1 a10261 1 26.3. Variable evaluation d10264 1 a10264 1 26.3.1. At load time d10306 1 a10306 1 26.3.2. At runtime d10314 1 a10314 1 26.4. How can variables be specified? d10323 1 a10323 1 26.5. Designing interfaces for Makefile fragments d10330 1 a10330 1 26.5.1. Procedures with parameters d10364 1 a10364 1 26.5.2. Actions taken on behalf of parameters d10376 1 a10376 1 26.6. The order in which files are loaded d10391 1 a10391 1 26.6.1. The order in bsd.prefs.mk d10416 1 a10416 1 26.6.2. The order in bsd.pkg.mk d10449 1 a10449 1 Chapter 27. Regression tests d10453 2 a10454 2
    27.1. Running the regression tests
    27.2. Adding a new regression test
    d10456 2 a10457 2
    27.2.1. Overridable functions
    27.2.2. Helper functions
    d10471 1 a10471 1 27.1. Running the regression tests d10479 1 a10479 1 27.2. Adding a new regression test d10488 1 a10488 1 27.2.1. Overridable functions d10536 1 a10536 1 27.2.2. Helper functions d10567 1 a10567 1 Chapter 28. Porting pkgsrc d10570 1 a10570 1
    28.1. Porting pkgsrc to a new operating system
    d10578 1 a10578 1 28.1. Porting pkgsrc to a new operating system d10709 1 a10709 1 PLIST (see Chapter 13, Package components - files, directories and contents) @ 1.297 log @doc/pkgsrc.*: regen @ text @d5091 1 a5091 1 is the actual dependency recorded in the installed d5095 1 a5095 1 variable should be set to the first version of the d5209 2 a5210 1

    These two variables differ in that one describes source d5215 6 a5220 1

    Changes to the d5222 9 a5230 6 variable in a buildlink3.mk file happen very rarely. One possible reason is that all packages depending on this already need a newer version. In case it is bumped see the description below.

    The most common example of an ABI change is that the major version of a shared library is increased. In this case, d5232 3 a5234 3 should be adjusted to require at least the new package version. Then the packages that depend on this package need their PKGREVISIONs increased and, if they have d5237 9 a5245 7 adjusted, too. This is needed so pkgsrc will require the correct package dependency and not settle for an older one when building the source.

    See Section 21.1.5, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_ABI_DEPENDS and ABI_DEPENDS definitions.

    d5250 4 a5253 3 as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

    d7573 8 a7580 1 see the buildlink section of the pkgsrc guide.

    @ 1.296 log @doc/pkgsrc.*: regen @ text @d4732 5 @ 1.295 log @doc/pkgsrc.*: regen @ text @d131 8 a138 7
    8.4.3. Use custom directories
    8.4.4. Turn warnings into errors
    8.4.5. Reject packages for which pkglint reports errors
    8.4.6. Reject packages that contain forbidden strings
    8.4.7. Reject packages whose self-test fails
    8.4.8. Reject packages that use undefined shell variables
    8.4.9. Turn off verbose logging
    d889 8 a896 7
    8.4.3. Use custom directories
    8.4.4. Turn warnings into errors
    8.4.5. Reject packages for which pkglint reports errors
    8.4.6. Reject packages that contain forbidden strings
    8.4.7. Reject packages whose self-test fails
    8.4.8. Reject packages that use undefined shell variables
    8.4.9. Turn off verbose logging
    d2098 8 a2105 7
    8.4.3. Use custom directories
    8.4.4. Turn warnings into errors
    8.4.5. Reject packages for which pkglint reports errors
    8.4.6. Reject packages that contain forbidden strings
    8.4.7. Reject packages whose self-test fails
    8.4.8. Reject packages that use undefined shell variables
    8.4.9. Turn off verbose logging
    d2296 80 a2375 1 8.4.3. Use custom directories d2391 1 a2391 1 8.4.4. Turn warnings into errors d2409 1 a2409 1 8.4.5. Reject packages for which pkglint reports errors d2417 1 a2417 1 8.4.6. Reject packages that contain forbidden strings d2434 1 a2434 1 8.4.7. Reject packages whose self-test fails d2447 1 a2447 1 8.4.8. Reject packages that use undefined shell variables d2454 4 d2463 1 a2463 1 8.4.9. Turn off verbose logging a7050 34
    bulk-package

    Used to do bulk builds. If an appropriate binary package already exists, no action is taken. If not, this target will compile, install and package it (and its depends, if PKG_DEPENDS is set properly. See Chapter 8, Creating binary packages for everything in pkgsrc (bulk builds)). After creating the binary package, the sources, the just-installed package and its required packages are removed, preserving free disk space.

    Beware that this target may deinstall all packages installed on a system!

    bulk-install

    Used during bulk-installs to install required packages. If an up-to-date binary package is available, it will be installed via pkg_add(1). If not, make bulk-package will be executed, but the installed binary won't be removed.

    A binary package is considered up-to-date to be installed via pkg_add(1) if:

    • None of the package's files (Makefile, ...) were modified since it was built.

    • None of the package's required (binary) packages were modified since it was built.

    Beware that this target may deinstall all packages installed on a system!

    d7861 1 a7861 1 21.1.11.2. Choosing the time where the substitutions happen d7874 3 a7876 2 out. If the text to be substituted occurs in some of the files from a single pattern, but not in all of them, that is totally ok, and the SUBST d7879 1 a7879 2 set SUBST_NOOP_OK.path=yes in the above example.

    d7883 1 a7883 1 C_FILES_CMD= cd ${WRKSRC} && ${FIND} -name '*.c' d7921 9 a7929 9 scripts, but in some cases these need to be overridden. The same pattern is also used when a package defines patches that replace previously hard-coded paths like /usr/local with a @@PREFIX@@ placeholder first, which then gets substituted by the actual ${PREFIX} in the pre-configure stage. In many of these cases, it works equally well to just use the SUBST framework to directly replace /usr/local with ${PREFIX}, thereby omitting the intermediate patch file.

    d13821 1 d13823 2 d13826 1 a13828 1 show-build-defs d13830 1 a13832 1 show-deps d13834 1 a13836 1 show-downlevel d13838 1 a13840 1 show-tools d13842 1 a13844 1 show-vars d13846 1 a13848 1 socket d13850 1 a13852 1 st_mode d13854 1 a13856 1 strcasestr d13858 1 a13860 1 strip d13862 1 a13864 1 strnlen d13866 1 a13868 1 subst d13870 1 a13872 1 subversion d13874 1 a13876 1 sunpro d13878 1 a13880 1 svn d13882 1 a13884 1 test d13886 1 a13888 1 tex d13890 1 a13892 1 tmp d13894 1 a13896 1 tools d13898 1 a13900 1 type d13902 1 a13904 1 undefined d13906 1 a13908 1 unlimit d13910 1 a13912 1 unprivileged-install-hook d13914 1 a13916 1 update d13918 1 a13920 1 upload-distfiles d13922 1 a13924 1 user d13926 1 a13928 1 vasprintf d13930 1 a13932 1 vsnprintf d13934 1 a13936 1 warning d13938 1 a13940 1 warnx d13942 1 a13944 1 wattr_on d13946 1 a13948 1 wrapper d13950 1 @ 1.294 log @doc/pkgsrc.*: regen @ text @d124 1 a124 1
    8.2. Running a pbulk-style bulk build
    d881 1 a881 1
    8.2. Running a pbulk-style bulk build
    d2089 1 a2089 1
    8.2. Running a pbulk-style bulk build
    d2144 2 a2145 2 8.2. Running a pbulk-style bulk build

    Running a pbulk-style bulk build works roughly as follows:

    d6376 4 a6379 6

    By default patch(1) is given special args to make it fail if the patches apply with some lines of fuzz. Please fix (regen) the patches so that they apply cleanly. The rationale behind this is that patches that don't apply cleanly may end up being applied in the wrong place, and cause severe harm there.

    d7681 9 a7689 7

    When you want to replace the same text in multiple files or when the replacement text varies, patches alone cannot help. This is where the SUBST framework comes in. It provides an easy-to-use interface for replacing text in files. It just needs the following information:

    • When should the replacement d7691 2 a7692 4

    • Where should the replacement happen, i.e. in which files?

    • Which text should be replaced with what?

    • d7695 186 a7880 1 variables, like in this example:

      d7882 14 a7895 52 SUBST_CLASSES+= fix-paths SUBST_STAGE.fix-paths= pre-configure SUBST_MESSAGE.fix-paths= Fixing absolute paths. SUBST_FILES.fix-paths= src/*.c SUBST_FILES.fix-paths+= scripts/*.sh SUBST_SED.fix-paths= -e 's,"/usr/local,"${PREFIX},g' SUBST_SED.fix-paths+= -e 's,"/var/log,"${VARBASE}/log,g'

    SUBST_CLASSES is a list of identifiers that are used to identify the different SUBST blocks that are defined. The SUBST framework is heavily used by pkgsrc, so it is important to always use the += operator with this variable. Otherwise some substitutions may be skipped.

    The remaining variables of each SUBST block are parameterized with the identifier from the first line (fix-paths in this case.) They can be seen as parameters to a function call.

    SUBST_STAGE.* specifies the stage at which the replacement will take place. All combinations of pre-, do- and post- together with a phase name are possible, though only few are actually used. Most commonly used are post-patch and pre-configure. Of these two, pre-configure should be preferred because then it is possible to run bmake patch and have the state after applying the patches but before making any other changes. This is especially useful when you are debugging a package in order to create new patches for it. Similarly, post-build is preferred over pre-install, because the install phase should generally be kept as simple as possible. When you use post-build, you have the same files in the working directory that will be installed later, so you can check if the substitution has succeeded.

    SUBST_MESSAGE.* is an optional text that is printed just before the substitution is done.

    SUBST_FILES.* is the list of shell globbing patterns that specifies the files in which the substitution will take place. The patterns are interpreted relatively to the WRKSRC directory.

    SUBST_SED.* is a list of arguments to sed(1) that specify the actual substitution. Every sed command should be prefixed with -e, so that all SUBST blocks look uniform.

    SUBST_VARS.* is a list of variable names. For each of these variables, the text @@VAR@@ is replaced with the value of the variable VAR.

    There are some more variables, but they are so seldomly used that they are only documented in the mk/subst.mk file.

    d11257 1 a11258 1 CHECK_FILES d11261 1 a11262 1 CHECK_FILES_STRICT d11265 1 a11266 1 CHECK_HEADERS_SKIP d11269 1 a11270 1 CHECK_INTERPRETER_SKIP d11273 1 a11274 1 CHECK_PERMS_AUTOFIX d11277 1 a11278 1 CHECK_PORTABILITY d11281 1 a11282 1 CHECK_PORTABILITY_SKIP d11285 1 a11286 1 CHECK_RELRO_SKIP d11289 1 a11290 1 CHECK_SHLIBS d11293 1 a11294 1 CHECK_SHLIBS_SKIP d11297 1 a11298 1 CHECK_SSP d11301 1 a11302 1 CHECK_SSP_SUPPORTED d11305 1 a11306 1 CHECK_STRIPPED_SKIP d11309 1 a11310 1 CHECK_WRKREF_EXTRA_DIRS d11313 1 a11314 1 CLAMAV_DBDIR d11317 1 a11318 1 CLAMAV_USER d11321 1 a11322 1 CLEANDEPENDS d11325 1 a11326 1 CMAKE_INSTALL_PREFIX d11329 1 a11330 1 CMAKE_PKGSRC_BUILD_FLAGS d11333 1 a11334 1 CMAKE_USE_GNU_INSTALL_DIRS d11337 1 a11338 1 COMMON_LISP_EXAMPLES d11341 1 a11342 1 COMMON_LISP_PACKAGES d11345 1 a11346 1 COMPILER_RPATH_FLAG d11349 1 a11350 1 CONFIGURE_ARGS d11353 1 a11354 1 CONFIGURE_ENV d11357 1 a11358 1 CONFIGURE_HAS_INFODIR d11361 1 a11362 1 CONFIGURE_SCRIPT d11365 1 a11366 1 CONFIG_SHELL_FLAGS d11369 1 a11370 1 CONF_FILES_MODE d11373 1 a11374 1 CONSERVER_DEFAULTHOST d11377 1 a11378 1 CP d11381 1 a11382 1 CPP_PRECOMP_FLAGS d11385 1 a11386 1 CROSSBASE d11389 1 a11390 1 CTF_FILES_SKIP d11393 1 a11394 1 CTYPE d11397 1 a11398 1 CUPS_SYSTEM_GROUPS d11401 1 a11402 1 CURSES_DEFAULT d11405 1 a11406 1 CVS_EXTRACTDIR d11409 1 a11410 1 CVS_PROJECT d11413 1 a11414 1 CVS_ROOT d11417 1 a11418 1 CVS_ROOT_NONGNU d11421 1 a11422 1 CVS_TAG d11425 1 a11426 1 CYRUS_GROUP d11429 1 a11430 1 CYRUS_USER d11433 1 a11434 1 DAEMONTOOLS_LOG_USER d11437 1 a11438 1 DBUS_USER d11441 1 a11442 1 DEFANG_USER d11445 1 a11446 1 DEFAULT_DISTFILES d11449 1 a11450 1 DEFAULT_SERIAL_DEVICE d11453 1 a11454 1 DEINSTALLDEPENDS d11457 1 a11458 1 DEINSTALL_TEMPLATES d11461 1 a11462 1 DELAYED_WARNING_MSG d11465 1 a11466 1 DEPENDS_TARGET d11469 1 a11470 1 DESTDIR d11473 1 a11474 1 DIALER_GROUP d11477 1 a11478 1 DISTDIR d11481 1 a11482 1 DISTINFO_FILE d11485 1 a11486 1 DIST_PATH d11489 1 a11490 1 DJBDNS_AXFR_USER d11493 1 a11494 1 DJBDNS_DJBDNS_GROUP d11497 1 a11498 1 DJBDNS_RBL_USER d11501 1 a11502 1 DLOPEN_REQUIRE_PTHREADS d11505 1 a11506 1 DL_CFLAGS d11509 1 a11510 1 DL_LIBS d11513 1 a11514 1 DOWNLOADED_DISTFILE d11517 1 a11518 1 DYNAMIC_SITES_CMD d11521 1 a11522 1 ECHO d11525 1 a11526 1 ELK_GUI d11529 1 a11530 1 EMULDIR d11533 1 a11534 1 EMULSUBDIRSLASH d11537 1 a11538 1 EMUL_DISTRO d11541 1 a11542 1 EMUL_IS_NATIVE d11545 1 a11546 1 EMUL_OPSYS d11549 1 a11550 1 EMUL_PLATFORM d11553 1 a11554 1 EMUL_PREFER d11557 1 a11558 1 EMUL_TYPE d11561 1 a11562 1 EXIM_GROUP d11565 1 a11566 1 EXPORT_SYMBOLS_LDFLAGS d11569 1 a11570 1 EXTRACT_CMD d11573 1 a11574 1 EXTRACT_DIR d11577 1 a11578 1 EXTRACT_ENV d11581 1 a11582 1 EXTRACT_OPTS d11585 1 a11586 1 EXTRACT_USING d11589 1 a11590 1 FAILOVER_FETCH d11593 1 a11594 1 FAKE_NCURSES d11597 1 a11598 1 FAM_ACCEPTED d11601 1 a11602 1 FAM_SERVER d11605 1 a11606 1 FEATURE_CPPFLAGS d11609 1 a11610 1 FEATURE_LIBS d11613 1 a11614 1 FETCH_BEFORE_ARGS d11617 1 a11618 1 FETCH_OUTPUT_ARGS d11621 1 a11622 1 FETCH_RESUME_ARGS d11625 1 a11626 1 FILES_SUBST d11629 1 a11630 1 FIX_SYSTEM_HEADERS d11633 1 a11634 1 FLUXBOX_USE_KDE d11637 1 a11638 1 FLUXBOX_USE_XINERAMA d11641 1 a11642 1 FONTS_DIRS d11645 1 a11646 1 FOO_HACKS_MK d11649 1 a11650 1 FOSSIL_REPO d11653 1 a11654 1 FOSSIL_VERSION d11657 1 a11658 1 FREEWNN_GROUP d11661 1 a11662 1 FTP_PKG_URL_DIR d11665 1 a11666 1 GAMEDATAMODE d11669 1 a11670 1 GAMEDIRMODE d11673 1 a11674 1 GAMEGRP d11677 1 a11678 1 GAMEOWN d11681 1 a11682 1 GAMES_USER d11685 1 a11686 1 GCCBASE d11689 1 a11690 1 GCC_VERSION_SUFFIX d11693 1 a11694 1 GEM_CLEANBUILD d11697 1 a11698 1 GEM_DOCDIR d11701 1 a11702 1 GEM_HOME d11705 1 a11706 1 GEM_LIBDIR d11709 1 a11710 1 GEM_PATH d11713 1 a11714 1 GENERATE_PLIST d11717 1 a11718 1 GITHUB_PROJECT d11721 1 a11722 1 GITHUB_TAG d11725 1 a11726 1 GITLAB_PROJECT d11729 1 a11730 1 GITLAB_TYPE d11733 1 a11734 1 GIT_ENV d11737 1 a11738 1 GIT_REPO d11741 1 a11742 1 GIT_REVISION d11745 1 a11746 1 GNU d11749 1 a11750 1 GNU_CONFIGURE_INFODIR d11753 1 a11754 1 GNU_CONFIGURE_QUIET d11757 1 a11758 1 GODEP_REDIRECTS d11761 1 a11762 1 GO_DEPS d11765 1 a11766 1 GO_MODULE_FILES d11769 1 a11770 1 GO_VERSION_DEFAULT d11773 1 a11774 1 GRUB_NETWORK_CARDS d11777 1 a11778 1 GRUB_SCAN_ARGS d11781 1 a11782 1 HASKELL_COMPILER d11785 1 a11786 1 HASKELL_ENABLE_LIBRARY_PROFILING d11789 1 a11790 1 HASKELL_OPTIMIZATION_LEVEL d11793 1 a11794 1 HEADER_TEMPLATES d11797 1 a11798 1 HG_REPOSITORIES d11801 1 a11802 1 HOST_PKGTOOLS_ARGS d11805 1 a11806 1 HOWL_GROUP d11809 1 a11810 1 ICCBASE d11813 1 a11814 1 ICON_THEMES d11817 1 a11818 1 IGNORE_CCACHE d11821 1 a11822 1 IGNORE_INTERACTIVE_FETCH d11825 1 a11826 1 IMAKEOPTS d11829 1 a11830 1 IMAKE_MANINSTALL d11833 1 a11834 1 IMDICTDIR d11837 1 a11838 1 INFO_DIR d11841 1 a11842 1 INFO_FILES_VERBOSE d11845 1 a11846 1 INIT_SYSTEM d11849 1 a11850 1 INN_GROUP d11853 1 a11854 1 INSTALLATION_DIRS d11857 1 a11858 1 INSTALL_ENV d11861 1 a11862 1 INSTALL_SRC d11865 1 a11866 1 INSTALL_UNSTRIPPED d11869 1 a11870 1 IRCD_HYBRID_IRC_USER d11873 1 a11874 1 IRCD_HYBRID_NICLEN d11877 1 a11878 1 IRCD_HYBRID_SYSLOG_FACILITY d11881 1 a11882 1 IRIX d11885 1 a11886 1 JABBERD_GROUP d11889 1 a11890 1 JABBERD_PIDDIR d11893 1 a11894 1 JABBERD_USER d11897 1 a11898 1 JAVA_APP_PATH d11901 1 a11902 1 JAVA_BINPREFIX d11905 1 a11906 1 JAVA_HOME d11909 1 a11910 1 JAVA_NAME d11913 1 a11914 1 JAVA_WRAPPERS d11917 1 a11918 1 JPEG_DEFAULT d11921 1 a11922 1 KERMIT_SUID_UUCP d11925 1 a11926 1 KNEWS_DOMAIN_FILE d11929 1 a11930 1 KRB5_ACCEPTED d11933 1 a11934 1 LANGUAGES d11937 1 a11938 1 LATEX2HTML_ICONPATH d11941 1 a11942 1 LDCONFIG_REMOVE_CMD d11945 1 a11946 1 LEAFNODE_GROUP d11949 1 a11950 1 LIBDVDCSS_HOMEPAGE d11953 1 a11954 1 LIBRSVG_TYPE d11957 1 a11958 1 LIBTOOLIZE_PLIST d11961 1 a11962 1 LIBUSB_TYPE d11965 1 a11966 1 LINKER_RPATH_FLAG d11969 1 a11970 1 LINUX_BASE_NODEPS d11973 1 a11974 1 LINUX_BASE_REQUIRED d11977 1 a11978 1 LOCALBASE d11981 1 a11982 1 LOCALPATCHES d11985 1 a11986 1 LOVE_GAME d11989 1 a11990 1 LP64PLATFORMS d11993 1 a11994 1 MAILAGENT_DOMAIN d11997 1 a11998 1 MAILAGENT_FQDN d12001 1 a12002 1 MAJORDOMO_HOMEDIR d12005 1 a12006 1 MAKEINFO_ARGS d12009 1 a12010 1 MAKE_DIRS_PERMS d12013 1 a12014 1 MAKE_FILE d12017 1 a12018 1 MAKE_JOBS d12021 1 a12022 1 MAKE_PROGRAM d12025 1 a12026 1 MANZ d12029 1 a12030 1 MASTER_SITE_BACKUP d12033 1 a12034 1 MASTER_SITE_MOZILLA d12037 1 a12038 1 MASTER_SITE_PERL_CPAN d12041 1 a12042 1 MASTER_SORT_RANDOM d12045 1 a12046 1 MECAB_CHARSET d12049 1 a12050 1 MEDIATOMB_USER d12053 1 a12054 1 MIREDO_GROUP d12057 1 a12058 1 MISSING_FEATURES d12061 1 a12062 1 MLDONKEY_GROUP d12065 1 a12066 1 MLDONKEY_USER d12069 1 a12070 1 MONOTONE_USER d12073 1 a12074 1 MOTIF_TYPE d12077 1 a12078 1 MPI_TYPE d12081 1 a12082 1 MSGFMT_STRIP_MSGID_PLURAL d12085 1 a12086 1 MUST d12089 1 a12090 1 MYSQL_CHARSET d12093 1 a12094 1 MYSQL_EXTRA_CHARSET d12097 1 a12098 1 MYSQL_PKGSRCDIR d12101 1 a12102 1 MYSQL_VERSIONS_ACCEPTED d12105 1 a12106 1 NAGIOSCMD_GROUP d12109 1 a12110 1 NAGIOS_GROUP d12113 1 a12114 1 NATIVE_APPEND_ABI d12117 1 a12118 1 NATIVE_EXEC_FMT d12121 1 a12122 1 NATIVE_OBJECT_FMT d12125 1 a12126 1 NETBSD_LOGIN_NAME d12129 1 a12130 1 NMH_MTA d12133 1 a12134 1 NOLOGIN d12137 1 a12138 1 NOT_FOR_PLATFORM d12141 1 a12142 1 NOT_PAX_MPROTECT_SAFE d12145 1 a12146 1 NO_CHECKSUM d12149 1 a12150 1 NO_SKIP d12153 1 a12154 1 NULLMAILER_GROUP d12157 1 a12158 1 OASIS d12161 1 a12162 1 OBJHOSTNAME d12165 1 a12166 1 OCAML_FINDLIB_DIRS d12169 1 a12170 1 OCAML_FINDLIB_REGISTER_VERBOSE d12173 1 a12174 1 OCAML_TOPKG_DOCDIR d12177 1 a12178 1 OCAML_USE_FINDLIB d12181 1 a12182 1 OCAML_USE_OASIS d12185 1 a12186 1 OCAML_USE_OPAM d12189 1 a12190 1 OCAML_USE_TOPKG d12193 1 a12194 1 ONLY_FOR_COMPILER d12197 1 a12198 1 OPENSSH_CHROOT d12201 1 a12202 1 OPENSSH_USER d12205 1 a12206 1 OPSYS_EMULDIR d12209 1 a12210 1 OSX d12213 1 a12214 1 OS_HAVE_ALSA d12217 1 a12218 1 OS_VARIANT d12221 1 a12222 1 OTF_FONTS_DIR d12225 1 a12226 1 OVERRIDE_GEMSPEC d12229 1 a12230 1 OVERRIDE_ROCKSPEC d12233 1 a12234 1 OWN_DIRS_PERMS d12237 1 a12238 1 P4PORT d12241 1 a12242 1 P4USER d12245 1 a12246 1 PALMOS_DEFAULT_SDK d12249 1 a12250 1 PAM_DEFAULT d12253 1 a12254 1 PASSIVE_FETCH d12257 1 a12258 1 PATCHFILES d12261 1 a12262 1 PATCH_DEBUG d12265 1 a12266 1 PATCH_DIST_CAT d12269 1 a12270 1 PATCH_FUZZ_FACTOR d12273 1 a12274 1 PATH d12277 1 a12278 1 PEAR d12281 1 a12282 1 PEAR_CHANNEL_ALIAS d12285 1 a12286 1 PEAR_CMD d12289 1 a12290 1 PEAR_PACKAGE_XML d12293 1 a12294 1 PERL5_CONFIGURE d12297 1 a12298 1 PERL5_LDFLAGS d12301 1 a12302 1 PERL5_MODULE_TYPE d12305 1 a12306 1 PERL5_PACKLIST_DIR d12309 1 a12310 1 PERL5_SITEBASE d12313 1 a12314 1 PERL5_VENDORBASE d12317 1 a12318 1 PFVAR_H d12321 1 a12322 1 PGGROUP d12325 1 a12326 1 PGPKGSRCDIR d12329 1 a12330 1 PGSQL_VERSIONS_ACCEPTED d12333 1 a12334 1 PGUSER d12337 1 a12338 1 PHP d12341 1 a12342 1 PHPPKGSRCDIR d12345 1 a12346 1 PHP_CHECK_INSTALLED d12349 1 a12350 1 PHP_INITIAL_TEENY d12353 1 a12354 1 PHP_VERSION d12357 1 a12358 1 PHP_VERSIONS_INCOMPATIBLE d12361 1 a12362 1 PHP_VERSION_REQD d12365 1 a12366 1 PKGCONFIG_BASE d12369 1 a12370 1 PKGCONFIG_OVERRIDE d12373 1 a12374 1 PKGDIR d12377 1 a12378 1 PKGINFODIR d12381 1 a12382 1 PKGMANDIR d12385 1 a12386 1 PKGNAME_REQD d12389 1 a12390 1 PKGREVISION d12393 1 a12394 1 PKGSRC_CHANGES d12397 1 a12398 1 PKGSRC_KEEP_BIN_PKGS d12401 1 a12402 1 PKGSRC_MAKE_ENV d12405 1 a12406 1 PKGSRC_MKPIE d12409 1 a12410 1 PKGSRC_RUN_TEST d12413 1 a12414 1 PKGSRC_SLEEPSECS d12417 1 a12418 1 PKGSRC_USE_CTF d12421 1 a12422 1 PKGSRC_USE_RELRO d12425 1 a12426 1 PKGSRC_USE_STACK_CHECK d12429 1 a12430 1 PKGTOOLS_ARGS d12433 1 a12434 1 PKG_ALTERNATIVES d12437 1 a12438 1 PKG_APACHE_ACCEPTED d12441 1 a12442 1 PKG_BEST_EXISTS d12445 1 a12446 1 PKG_COMPRESSION d12449 1 a12450 1 PKG_CONFIG_PERMS d12453 1 a12454 1 PKG_DB_TMPDIR d12457 1 a12458 1 PKG_DEFAULT_OPTIONS d12461 1 a12462 1 PKG_DEVELOPER d12465 1 a12466 1 PKG_FATAL_ERRORS d12469 1 a12470 1 PKG_FILELIST_CMD d12473 1 a12474 1 PKG_GID d12477 1 a12478 1 PKG_GROUPS_VARS d12481 1 a12482 1 PKG_INIT_SCRIPTS d12485 1 a12486 1 PKG_JVM d12489 1 a12490 1 PKG_JVM_DEFAULT d12493 1 a12494 1 PKG_LIBTOOL d12497 1 a12498 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12501 1 a12502 1 PKG_OPTIONS_LEGACY_VARS d12505 1 a12506 1 PKG_OPTIONS_OPTIONAL_GROUPS d12509 1 a12510 1 PKG_OPTIONS_VAR d12513 1 a12514 1 PKG_PHP_MAJOR_VERS d12517 1 a12518 1 PKG_RCD_SCRIPTS d12521 1 a12522 1 PKG_REGISTER_SHELLS d12525 1 a12526 1 PKG_SHELL d12529 1 a12530 1 PKG_SUPPORTED_OPTIONS d12533 1 a12534 1 PKG_SYSCONFBASEDIR d12537 1 a12538 1 PKG_SYSCONFDIR_PERMS d12541 1 a12542 1 PKG_SYSCONFVAR d12545 1 a12546 1 PKG_UID d12549 1 a12550 1 PKG_USERS d12553 1 a12554 1 PKG_VERBOSE d12557 1 a12558 1 PLIST_AWK d12561 1 a12562 1 PLIST_SRC d12565 1 a12566 1 PLIST_TYPE d12569 1 a12570 1 POPTOP_USE_MPPE d12573 1 a12574 1 POST_FETCH_HOOK d12577 1 a12578 1 PREFER_NATIVE d12581 1 a12582 1 PREFER_PKGSRC d12585 1 a12586 1 PREPEND_PATH d12589 1 a12590 1 PRIVILEGED_STAGES d12593 1 a12594 1 PTHREAD_AUTO_VARS d12597 1 a12598 1 PTHREAD_LDFLAGS d12601 1 a12602 1 PTHREAD_OPTS d12605 1 a12606 1 PVM_SSH d12609 1 a12610 1 PYTHON_FOR_BUILD_ONLY d12613 1 a12614 1 PYTHON_VERSIONED_DEPENDENCIES d12617 1 a12618 1 PYTHON_VERSIONS_INCOMPATIBLE d12621 1 a12622 1 PYTHON_VERSION_REQD d12625 1 a12626 1 PY_NO_EGG d12629 1 a12630 1 QMAIL_ALIAS_USER d12633 1 a12634 1 QMAIL_LOG_USER d12637 1 a12638 1 QMAIL_PASSWD_USER d12641 1 a12642 1 QMAIL_QUEUE_DIR d12645 1 a12646 1 QMAIL_QUEUE_USER d12649 1 a12650 1 QMAIL_ROOT_USER d12653 1 a12654 1 QPOPPER_FAC d12657 1 a12658 1 QPOPPER_USER d12661 1 a12662 1 RASMOL_DEPTH d12665 1 a12666 1 RCD_ORDER d12669 1 a12670 1 RCD_SCRIPTS_DIR d12673 1 a12674 1 RCD_SCRIPTS_MODE d12677 1 a12678 1 RCD_SCRIPT_SRC d12681 1 a12682 1 RDOC d12685 1 a12686 1 READLINE_TYPE d12689 1 a12690 1 REAL_ROOT_USER d12693 1 a12694 1 RELAY_CTRL_DIR d12697 1 a12698 1 REPLACE_BASH d12701 1 a12702 1 REPLACE_KSH d12705 1 a12706 1 REPLACE_PERL6 d12709 1 a12710 1 REPLACE_PYTHON d12713 1 a12714 1 REPLACE_RUBY_DIRS d12717 1 a12718 1 REPLACE_SH d12721 1 a12722 1 REQD_DIRS d12725 1 a12726 1 REQD_FILES d12729 1 a12730 1 REQD_FILES_PERMS d12733 1 a12734 1 RESOLV_LDFLAGS d12737 1 a12738 1 RM d12741 1 a12742 1 ROCKSPEC_SPECFILE d12745 1 a12746 1 ROOT_GROUP d12749 1 a12750 1 RPCGEN d12753 1 a12754 1 RPM2PKG_PLIST d12757 1 a12758 1 RPM2PKG_STAGE d12761 1 a12762 1 RPM2PKG_SUBPREFIX d12765 1 a12766 1 RPMIGNOREPATH d12769 1 a12770 1 RSSH_CVS_PATH d12773 1 a12774 1 RSSH_RSYNC_PATH d12777 1 a12778 1 RSSH_SFTP_SERVER_PATH d12781 1 a12782 1 RUBYGEM d12785 1 a12786 1 RUBYGEM_OPTIONS d12789 1 a12790 1 RUBY_ARCH d12793 1 a12794 1 RUBY_ARCHLIB d12797 1 a12798 1 RUBY_BASERIDIR d12801 1 a12802 1 RUBY_DLEXT d12805 1 a12806 1 RUBY_DYNAMIC_DIRS d12809 1 a12810 1 RUBY_ENCODING_ARG d12813 1 a12814 1 RUBY_EXTCONF_CHECK d12817 1 a12818 1 RUBY_EXTCONF_MAKEFILE d12821 1 a12822 1 RUBY_INC d12825 1 a12826 1 RUBY_LIB_BASE d12829 1 a12830 1 RUBY_NOVERSION d12833 1 a12834 1 RUBY_RAILS d12837 1 a12838 1 RUBY_RAILS52_VERSION d12841 1 a12842 1 RUBY_RAILS_ACCEPTED d12845 1 a12846 1 RUBY_RAILS_REQD d12849 1 a12850 1 RUBY_RIDIR d12853 1 a12854 1 RUBY_SHLIB d12857 1 a12858 1 RUBY_SHLIBVER d12861 1 a12862 1 RUBY_SITEARCHLIB d12865 1 a12866 1 RUBY_SITELIB_BASE d12869 1 a12870 1 RUBY_SLEXT d12873 1 a12874 1 RUBY_STATICLIB d12877 1 a12878 1 RUBY_SYSRIDIR d12881 1 a12882 1 RUBY_VENDORARCHLIB d12885 1 a12886 1 RUBY_VENDORLIB_BASE d12889 1 a12890 1 RUBY_VERSION d12893 1 a12894 1 RUBY_VERSIONS_INCOMPATIBLE d12897 1 a12898 1 RUBY_VERSION_REQD d12901 1 a12902 1 RUN d12905 1 a12906 1 SAWFISH_THEMES d12909 1 a12910 1 SCREWS_GROUP d12913 1 a12914 1 SCRIPTS_ENV d12917 1 a12918 1 SCROLLKEEPER_REBUILDDB d12921 1 a12922 1 SDIST_PAWD d12925 1 a12926 1 SETGIDGAME d12929 1 a12930 1 SETUID_ROOT_PERMS d12933 1 a12934 1 SHLIB d12937 1 a12938 1 SIGN_PACKAGES d12941 1 a12942 1 SITE_SPECIFIC_PKGS d12945 1 a12946 1 SMF_INSTANCES d12949 1 a12950 1 SMF_METHODS d12953 1 a12954 1 SMF_METHOD_SRC d12957 1 a12958 1 SMF_PREFIX d12961 1 a12962 1 SNIPROXY_GROUP d12965 1 a12966 1 SOURCE_BUFFSIZE d12969 1 a12970 1 SPECIFIC_PKGS d12973 1 a12974 1 SSP_SUPPORTED d12977 1 a12978 1 STEP_MSG d12981 1 a12982 1 STRIP_DBG d12985 1 a12986 1 STRIP_DEBUG_SUPPORTED d12989 1 a12990 1 SU d12993 1 a12994 1 SUBST d12997 1 a12998 1 SUBST_FILES d13001 1 a13002 1 SUBST_MESSAGE d13005 1 a13006 1 SUBST_SED d13009 1 a13010 1 SUBST_SKIP_TEXT_CHECK d13013 1 a13014 1 SUBST_VARS d13017 1 a13018 1 SUSE_PREFER d13021 1 a13022 1 SVN_EXTRACTDIR d13025 1 a13026 1 SVN_REPOSITORIES d13029 1 a13030 1 TERMCAP_TYPE d13033 1 a13034 1 TERMINFO_TYPE d13037 1 a13038 1 TEST_DEPENDS d13041 1 a13042 1 TEST_ENV d13045 1 a13046 1 TEST_MAKE_CMD d13049 1 a13050 1 TEST_TARGET d13053 1 a13054 1 TEXLIVE_REV d13057 1 a13058 1 TEXMFSITE d13061 1 a13062 1 TEX_HYPHEN_DAT d13065 1 a13066 1 TEX_TEXMF_DIRS d13069 1 a13070 1 TO d13073 1 a13074 1 TOOLS_ALWAYS_WRAP d13077 1 a13078 1 TOOLS_BROKEN d13081 1 a13082 1 TOOLS_CREATE d13085 1 a13086 1 TOOLS_FAIL d13089 1 a13090 1 TOOLS_LDCONFIG d13093 1 a13094 1 TOOLS_PATH d13097 1 a13098 1 TOOL_DEPENDS d13101 1 a13102 1 TTF_FONTS_DIR d13105 1 a13106 1 UAC_REQD_EXECS d13109 1 a13110 1 UCSPI_SSL_USER d13113 1 a13114 1 UNPRIVILEGED d13117 1 a13118 1 UNPRIVILEGED_GROUPS d13121 1 a13122 1 UNWRAP_FILES d13125 1 a13126 1 UPDATE_GEMSPEC d13129 1 a13130 1 URI d13133 1 a13134 1 USERPPP_GROUP d13137 1 a13138 1 USE_ABI_DEPENDS d13141 1 a13142 1 USE_BSD_MAKEFILE d13145 1 a13146 1 USE_CROSS_COMPILE d13149 1 a13150 1 USE_CWRAPPERS d13153 1 a13154 1 USE_FEATURES d13157 1 a13158 1 USE_GCC_RUNTIME d13161 1 a13162 1 USE_JAVA d13165 1 a13166 1 USE_LANGUAGES d13169 1 a13170 1 USE_NATIVE_GCC d13173 1 a13174 1 USE_PKGSRC_GCC d13177 1 a13178 1 USE_PKGTASKS d13181 1 a13182 1 USE_RUBY_EXTCONF d13185 1 a13186 1 USE_RUBY_SETUP d13189 1 a13190 1 USE_TOOLS d13193 1 a13194 1 UUCP_USER d13197 1 a13198 1 VARNAME d13201 1 a13202 1 WARNING_MSG d13205 1 a13206 1 WCALC_CGIPATH d13209 1 a13210 1 WCALC_HTMLPATH d13213 1 a13214 1 WRAPPER_REORDER_CMDS d13217 1 a13218 1 WRKDIR_BASENAME d13221 1 a13222 1 WRKLOG d13225 1 a13226 1 WRKSRC d13229 1 a13230 1 X11 d13233 1 a13234 1 X11_PKGSRCDIR d13237 1 a13238 1 X509_CERTIFICATE d13241 1 a13242 1 XAW_TYPE d13245 1 a13246 1 XMKMF_FLAGS d13249 1 a13250 1 XXXX d13253 1 a13254 1 ZSH_STATIC d13257 1 a13258 1 _vargroups d13261 1 a13262 1 acquire-localbase-lock d13265 1 a13266 1 add d13269 1 a13270 1 alloca d13273 1 a13274 1 aslr d13277 1 a13278 1 atlas d13281 1 a13282 1 automake d13285 1 a13286 1 awk d13289 1 a13290 1 big-endian d13293 1 a13294 1 bind d13297 1 a13298 1 blas d13301 1 a13302 1 broken d13305 1 a13306 1 bsd d13309 1 a13310 1 build d13313 1 a13314 1 buildlink-directories d13317 1 a13318 1 c d13321 1 a13322 1 ccache d13325 1 a13326 1 cdefs d13329 1 a13330 1 changes d13333 1 a13334 1 changes-entry-noupdate d13337 1 a13338 1 check-clean d13341 1 a13342 1 check-files-clean d13345 1 a13346 1 checksum d13349 1 a13350 1 clean d13353 1 a13354 1 cleandir d13357 1 a13358 1 commit-changes-entry d13361 1 a13362 1 compiler d13365 1 a13366 1 config.guess d13369 1 a13370 1 configuration d13373 1 a13374 1 configure-env d13377 1 a13378 1 configure_args d13381 1 a13382 1 cos d13385 1 a13386 1 create-usergroup d13389 1 a13390 1 ctf d13393 1 a13394 1 debug d13397 1 a13398 1 declare d13401 1 a13402 1 depend d13405 1 a13406 1 depends d13409 1 a13410 1 depends-fetch d13413 1 a13414 1 describe d13417 1 a13418 1 disable d13421 1 a13422 1 distinfo d13425 1 a13426 1 dlopen d13429 1 a13430 1 do-buildlink d13433 1 a13434 1 do-configure d13437 1 a13438 1 do-extract d13441 1 a13442 1 do-install d13445 1 a13446 1 emul-distinfo d13449 1 a13450 1 emulation d13453 1 a13454 1 enable d13457 1 a13458 1 endif d13461 1 a13462 1 err d13465 1 a13466 1 etc d13469 1 a13470 1 extract-rpm d13473 1 a13474 1 feature d13477 1 a13478 1 fetch d13481 1 a13482 1 follows d13485 1 a13486 1 form d13489 1 a13490 1 fortify d13493 1 a13494 1 fossil d13497 1 a13498 1 fts d13501 1 a13502 1 fts_open d13505 1 a13506 1 fts_set d13509 1 a13510 1 gethostbyaddr d13513 1 a13514 1 gethostbyname2 d13517 1 a13518 1 getprogname d13521 1 a13522 1 getservbyport d13525 1 a13526 1 gettext d13529 1 a13530 1 github d13533 1 a13534 1 glob d13537 1 a13538 1 gnu_configure_strict d13541 1 a13542 1 go-deps d13545 1 a13546 1 guess-license d13549 1 a13550 1 heimdal d13553 1 a13554 1 hg d13557 1 a13558 1 increment d13561 1 a13562 1 interp d13565 1 a13566 1 intl d13569 1 a13570 1 kerberos d13573 1 a13574 1 krb5 d13577 1 a13578 1 lapack d13581 1 a13582 1 libintl_bindtextdomain d13585 1 a13586 1 libintl_textdomain d13589 1 a13590 1 libs d13593 1 a13594 1 licence d13597 1 a13598 1 lintl d13601 1 a13602 1 lock d13605 1 a13606 1 lvalue d13609 1 a13610 1 makesum d13613 1 a13614 1 mercurial d13617 1 a13618 1 meta-package d13621 1 a13622 1 mit-krb5 d13625 1 a13626 1 mkl d13629 1 a13630 1 mprotect d13633 1 a13634 1 nb d13637 1 a13638 1 obstack d13641 1 a13642 1 occurs d13645 1 a13646 1 openblas d13649 1 a13650 1 options.mk d13653 1 a13654 1 override d13657 1 a13658 1 override-message-intltool d13661 1 a13662 1 parallel d13665 1 a13666 1 pax d13669 1 a13670 1 pbulk-index d13673 1 a13674 1 perl d13677 1 a13678 1 perms d13681 1 a13682 1 pkg-build-options d13685 1 a13686 1 pkg_build_options d13689 1 a13690 1 plist d13693 1 a13694 1 post-fetch d13697 1 a13698 1 pre-build-checks-hook d13701 1 a13702 1 pre-configure-checks-hook d13705 1 a13706 1 pre-fetch d13709 1 a13710 1 print-plist d13713 1 a13714 1 privileged-install-hook d13717 1 a13718 1 python d13721 1 a13722 1 recv d13725 1 a13726 1 regcomp d13729 1 a13730 1 release-lock d13733 1 a13734 1 rename d13737 1 a13738 1 replace d13741 1 a13742 1 reproducible d13745 1 a13746 1 root d13749 1 a13750 1 send d13753 1 a13754 1 sendto d13757 1 a13758 1 setgid d13761 1 a13762 1 setuid d13765 1 a13766 1 show d13769 1 a13770 1 show-build-defs d13773 1 a13774 1 show-deps d13777 1 a13778 1 show-downlevel d13781 1 a13782 1 show-tools d13785 1 a13786 1 show-vars d13789 1 a13790 1 socket d13793 1 a13794 1 st_mode d13797 1 a13798 1 strcasestr d13801 1 a13802 1 strip d13805 1 a13806 1 strnlen d13809 1 a13810 1 subst d13813 1 a13814 1 subversion d13817 1 a13818 1 sunpro d13821 1 a13822 1 svn d13825 1 a13826 1 test d13829 1 a13830 1 tex d13833 1 a13834 1 tmp d13837 1 a13838 1 tools d13841 1 a13842 1 type d13845 1 a13846 1 undefined d13849 1 a13850 1 unlimit d13853 1 a13854 1 unprivileged-install-hook d13857 1 a13858 1 update d13861 1 a13862 1 upload-distfiles d13865 1 a13866 1 user d13869 1 a13870 1 vasprintf d13873 1 a13874 1 vsnprintf d13877 1 a13878 1 warning d13881 1 a13882 1 warnx d13885 1 a13886 1 wattr_on d13889 1 a13890 1 wrapper d13893 1 a13894 1   @ 1.293 log @doc/pkgsrc.*: regen @ text @d129 9 a137 12
    8.4.1. Strict SUBST blocks
    8.4.2. Detect unknown configure options
    8.4.3. Detect classes of bugs by forcing compiler warnings
    8.4.4. Use custom directories
    8.4.5. Turn warnings into errors
    8.4.6. Reject packages for which pkglint reports errors
    8.4.7. Reject packages that contain forbidden strings
    8.4.8. Reject packages whose self-test fails
    8.4.9. Reject packages that use undefined shell variables
    8.4.10. Turn off verbose logging
    8.4.11. Select random sets of options
    8.4.12. Select random configurations of BUILD_DEFS
    d886 9 a894 12
    8.4.1. Strict SUBST blocks
    8.4.2. Detect unknown configure options
    8.4.3. Detect classes of bugs by forcing compiler warnings
    8.4.4. Use custom directories
    8.4.5. Turn warnings into errors
    8.4.6. Reject packages for which pkglint reports errors
    8.4.7. Reject packages that contain forbidden strings
    8.4.8. Reject packages whose self-test fails
    8.4.9. Reject packages that use undefined shell variables
    8.4.10. Turn off verbose logging
    8.4.11. Select random sets of options
    8.4.12. Select random configurations of BUILD_DEFS
    d1247 1 a1247 1

    On the cdn.NetBSD.org d1264 2 a1265 1 pkgsrc FTP server in the directory /pub/pkgsrc/packages.

    d1292 2 a1293 1 # PKG_PATH="https://cdn.NetBSD.org/pub/pkgsrc/packages" d1359 2 a1360 1 FTP site at https://ftp.NetBSD.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities. d1381 2 a1382 1 vulnerabilities d2094 9 a2102 12
    8.4.1. Strict SUBST blocks
    8.4.2. Detect unknown configure options
    8.4.3. Detect classes of bugs by forcing compiler warnings
    8.4.4. Use custom directories
    8.4.5. Turn warnings into errors
    8.4.6. Reject packages for which pkglint reports errors
    8.4.7. Reject packages that contain forbidden strings
    8.4.8. Reject packages whose self-test fails
    8.4.9. Reject packages that use undefined shell variables
    8.4.10. Turn off verbose logging
    8.4.11. Select random sets of options
    8.4.12. Select random configurations of BUILD_DEFS
    d2236 1 a2236 31 8.4.1. Strict SUBST blocks

    Up to May 2020, the SUBST blocks ignored files that didn't exist, as well as substitutions that didn't have any effect. There were quite a few SUBST blocks that were redundant, and these have been removed already.

    The next step would be to not only check that each filename pattern has an effect but also that each substitution in SUBST_SED or SUBST_VARS applies to at least one file.

    To do this, mk/subst.mk would have to be adjusted, in a similar way as the check for no-op SUBST_FILES. There are several regression tests in regress/infra-unittests that help to get all edge cases correct.

    When a package fails this additional check, there are various possible causes why the SUBST_SED became a no-op.

    1. The pattern used to be found in a former version of the package, but is not needed anymore. In that case, just remove it.

    2. The pattern contains a typo. In that case, fix the typo and bump PKGREVISION, since the fixed typo will probably modify the resulting binary package.

    3. There is a patch that is applied before the SUBST block, and the patch accidentally contains the change that was intended for the SUBST block. In that case, remove the respective hunk from the patch.

    8.4.2. Detect unknown configure options

    d2247 1 a2247 1 8.4.3. Detect classes of bugs by forcing compiler warnings
    d2249 6 a2254 2 code, most compilers also detects typical mistakes.

    Add the following line to mk.conf.

    d2257 1 d2259 3 a2261 3

    When a package fails this additional check, first document the circumstances in which the compiler produced the error message. This includes:

    d2268 1 a2268 1
  • The error message from the compiler.

  • d2271 2 a2272 1 fine, document this in the package Makefile, like this:

    d2274 1 d2278 1 a2278 1 # reason why the code does not need to be fixed d2280 1 d2283 7 a2289 3 needs to be fixed, prepare a patch for a single source file, or if it's a one-liner fix, add a SUBST block to the package Makefile. In any case, report it to the upstream authors of the package.

    d2293 1 a2293 1 8.4.4. Use custom directories d2309 1 a2309 1 8.4.5. Turn warnings into errors d2319 1 a2319 1

    If a package suggest to add USE_TOOLS+=perl to d2327 1 a2327 1 8.4.6. Reject packages for which pkglint reports errors d2335 1 a2335 1 8.4.7. Reject packages that contain forbidden strings d2352 1 a2352 1 8.4.8. Reject packages whose self-test fails d2365 1 a2365 1 8.4.9. Reject packages that use undefined shell variables d2377 1 a2377 1 8.4.10. Turn off verbose logging a2389 38

    8.4.11. Select random sets of options

    Most bulk builds run with the default package options. This means that other combinations of options are not regularly tested. To do this, run a bulk build with these configurations.

    • no options enabled

    • all options enabled

    • 2n + 0

    • 2n + 1

    • 4n + 0..1

    • 4n + 2..3

    • 8n + 0..3

    • 8n + 4..7

    • 2048n + 0..1023

    • 2048n + 1024..2047

    Open questions are:

    • how to collect all options from the entire pkgsrc

    • how to handle mutually exclusive options

    • the sets of mutually exclusive options are defined per-package

    • the sets of nonempty sets are defined per-package

    8.4.12. Select random configurations of BUILD_DEFS

    Just like the PKG_OPTIONS, the BUILD_DEFS also allow different variants of pkgsrc to be created. The same ideas as in Section 8.4.11, “Select random sets of options” apply.

    @ 1.292 log @doc/pkgsrc.*: regen @ text @d127 17 a143 2
    8.4. Creating a multiple CD-ROM packages collection
    8.4.1. Example of cdpack
    d887 17 a903 2
    8.4. Creating a multiple CD-ROM packages collection
    8.4.1. Example of cdpack
    d2094 17 a2110 2
    8.4. Creating a multiple CD-ROM packages collection
    8.4.1. Example of cdpack
    d2234 221 a2454 1 8.4. Creating a multiple CD-ROM packages collection d2465 1 a2465 1 8.4.1. Example of cdpack d4018 1 a4018 1 the platform, for example lang/openjdk7. These are kept in the same d11670 1 a11670 1 GNU_CONFIGURE_STRICT d11673 1 a11674 1 GO_BUILD_PATTERN d11677 1 a11678 1 GO_DIST_BASE d11681 1 a11682 1 GO_SRCPATH d11685 1 a11686 1 GROUP_SPECIFIC_PKGS d11689 1 a11690 1 GRUB_PRESET_COMMAND d11693 1 a11694 1 GZIP d11697 1 a11698 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11701 1 a11702 1 HASKELL_ENABLE_SHARED_LIBRARY d11705 1 a11706 1 HAS_CONFIGURE d11709 1 a11710 1 HG_REPO d11713 1 a11714 1 HG_TAG d11717 1 a11718 1 HOST_SPECIFIC_PKGS d11721 1 a11722 1 HOWL_USER d11725 1 a11726 1 ICECAST_CHROOTDIR d11729 1 a11730 1 IDOBASE d11733 1 a11734 1 IGNORE_INFO_DIRS d11737 1 a11738 1 IMAKE d11741 1 a11742 1 IMAKE_MAKE d11745 1 a11746 1 IMAP_UW_CCLIENT_MBOX_FMT d11749 1 a11750 1 INCOMPAT_CURSES d11753 1 a11754 1 INFO_FILES d11757 1 a11758 1 INFO_MSG d11761 1 a11762 1 INN_DATA_DIR d11765 1 a11766 1 INN_USER d11769 1 a11770 1 INSTALLATION_DIRS_FROM_PLIST d11773 1 a11774 1 INSTALL_SH_OVERRIDE d11777 1 a11778 1 INSTALL_TEMPLATES d11781 1 a11782 1 IRCD_HYBRID_IRC_GROUP d11785 1 a11786 1 IRCD_HYBRID_MAXCONN d11789 1 a11790 1 IRCD_HYBRID_SYSLOG_EVENTS d11793 1 a11794 1 IRCD_HYBRID_TOPICLEN d11797 1 a11798 1 IRRD_USE_PGP d11801 1 a11802 1 JABBERD_LOGDIR d11805 1 a11806 1 JABBERD_SPOOLDIR d11809 1 a11810 1 JAKARTA_HOME d11813 1 a11814 1 JAVA_APP_TARGETS d11817 1 a11818 1 JAVA_CLASSPATH d11821 1 a11822 1 JAVA_LD_LIBRARY_PATH d11825 1 a11826 1 JAVA_UNLIMIT d11829 1 a11830 1 JPEG_ACCEPTED d11833 1 a11834 1 KERBEROS d11837 1 a11838 1 KJS_USE_PCRE d11841 1 a11842 1 KNEWS_DOMAIN_NAME d11845 1 a11846 1 KRB5_DEFAULT d11849 1 a11850 1 LAPACK_LIBS d11853 1 a11854 1 LDCONFIG_ADD_CMD d11857 1 a11858 1 LEAFNODE_DATA_DIR d11861 1 a11862 1 LEAFNODE_USER d11865 1 a11866 1 LIBDVDCSS_MASTER_SITES d11869 1 a11870 1 LIBTOOL d11873 1 a11874 1 LIBTOOL_M4_OVERRIDE d11877 1 a11878 1 LICENSE d11881 1 a11882 1 LINK_RPATH_FLAG d11885 1 a11886 1 LINUX_BASE_PREFERRED d11889 1 a11890 1 LINUX_LOCALES d11893 1 a11894 1 LOCALBASE_LOCKTYPE d11897 1 a11898 1 LOVE_DATA d11901 1 a11902 1 LOVE_VERSION d11905 1 a11906 1 MACHINE_PLATFORM d11909 1 a11910 1 MAILAGENT_EMAIL d11913 1 a11914 1 MAILAGENT_ORGANIZATION d11917 1 a11918 1 MAJOR_OS_VERSION d11921 1 a11922 1 MAKE_DIRS d11925 1 a11926 1 MAKE_ENV d11929 1 a11930 1 MAKE_FLAGS d11933 1 a11934 1 MAKE_JOBS_SAFE d11937 1 a11938 1 MANINSTALL d11941 1 a11942 1 MASTER_SITES d11945 1 a11946 1 MASTER_SITE_LOCAL d11949 1 a11950 1 MASTER_SITE_OVERRIDE d11953 1 a11954 1 MASTER_SORT d11957 1 a11958 1 MASTER_SORT_REGEX d11961 1 a11962 1 MEDIATOMB_GROUP d11965 1 a11966 1 MIPSPROBASE d11969 1 a11970 1 MIREDO_USER d11973 1 a11974 1 MKDIR d11977 1 a11978 1 MLDONKEY_HOME d11981 1 a11982 1 MONOTONE_GROUP d11985 1 a11986 1 MOTIFBASE d11989 1 a11990 1 MOTIF_TYPE_DEFAULT d11993 1 a11994 1 MSGFMT_STRIP_MSGCTXT d11997 1 a11998 1 MTOOLS_ENABLE_FLOPPYD d12001 1 a12002 1 MV d12005 1 a12006 1 MYSQL_DATADIR d12009 1 a12010 1 MYSQL_GROUP d12013 1 a12014 1 MYSQL_USER d12017 1 a12018 1 MYSQL_VERSION_DEFAULT d12021 1 a12022 1 NAGIOSDIR d12025 1 a12026 1 NAGIOS_USER d12029 1 a12030 1 NATIVE_APPEND_ELF d12033 1 a12034 1 NATIVE_MACHINE_PLATFORM d12037 1 a12038 1 NBPAX_PROGRAM_PREFIX d12041 1 d12043 2 d12046 1 a12048 1 NMH_MTA d12050 1 a12052 1 NOLOGIN d12054 1 a12056 1 NOT_FOR_PLATFORM d12058 1 a12060 1 NOT_PAX_MPROTECT_SAFE d12062 1 a12064 1 NO_CHECKSUM d12066 1 a12068 1 NO_SKIP d12070 1 a12072 1 NULLMAILER_GROUP d12074 1 a12076 1 OASIS d12078 1 a12080 1 OBJHOSTNAME d12082 1 a12084 1 OCAML_FINDLIB_DIRS d12086 1 a12088 1 OCAML_FINDLIB_REGISTER_VERBOSE d12090 1 a12092 1 OCAML_TOPKG_DOCDIR d12094 1 a12096 1 OCAML_USE_FINDLIB d12098 1 a12100 1 OCAML_USE_OASIS d12102 1 a12104 1 OCAML_USE_OPAM d12106 1 a12108 1 OCAML_USE_TOPKG d12110 1 a12112 1 ONLY_FOR_COMPILER d12114 1 a12116 1 OPENSSH_CHROOT d12118 1 a12120 1 OPENSSH_USER d12122 1 a12124 1 OPSYS_EMULDIR d12126 1 a12128 1 OSX d12130 1 a12132 1 OS_HAVE_ALSA d12134 1 a12136 1 OS_VARIANT d12138 1 a12140 1 OTF_FONTS_DIR d12142 1 a12144 1 OVERRIDE_GEMSPEC d12146 1 a12148 1 OVERRIDE_ROCKSPEC d12150 1 a12152 1 OWN_DIRS_PERMS d12154 1 a12156 1 P4PORT d12158 1 a12160 1 P4USER d12162 1 a12164 1 PALMOS_DEFAULT_SDK d12166 1 a12168 1 PAM_DEFAULT d12170 1 a12172 1 PASSIVE_FETCH d12174 1 a12176 1 PATCHFILES d12178 1 a12180 1 PATCH_DEBUG d12182 1 a12184 1 PATCH_DIST_CAT d12186 1 a12188 1 PATCH_FUZZ_FACTOR d12190 1 a12192 1 PATH d12194 1 a12196 1 PEAR d12198 1 a12200 1 PEAR_CHANNEL_ALIAS d12202 1 a12204 1 PEAR_CMD d12206 1 a12208 1 PEAR_PACKAGE_XML d12210 1 a12212 1 PERL5_CONFIGURE d12214 1 a12216 1 PERL5_LDFLAGS d12218 1 a12220 1 PERL5_MODULE_TYPE d12222 1 a12224 1 PERL5_PACKLIST_DIR d12226 1 a12228 1 PERL5_SITEBASE d12230 1 a12232 1 PERL5_VENDORBASE d12234 1 a12236 1 PFVAR_H d12238 1 a12240 1 PGGROUP d12242 1 a12244 1 PGPKGSRCDIR d12246 1 a12248 1 PGSQL_VERSIONS_ACCEPTED d12250 1 a12252 1 PGUSER d12254 1 a12256 1 PHP d12258 1 a12260 1 PHPPKGSRCDIR d12262 1 a12264 1 PHP_CHECK_INSTALLED d12266 1 a12268 1 PHP_INITIAL_TEENY d12270 1 a12272 1 PHP_VERSION d12274 1 a12276 1 PHP_VERSIONS_INCOMPATIBLE d12278 1 a12280 1 PHP_VERSION_REQD d12282 1 a12284 1 PKGCONFIG_BASE d12286 1 a12288 1 PKGCONFIG_OVERRIDE d12290 1 a12292 1 PKGDIR d12294 1 a12296 1 PKGINFODIR d12298 1 a12300 1 PKGMANDIR d12302 1 a12304 1 PKGNAME_REQD d12306 1 a12308 1 PKGREVISION d12310 1 a12312 1 PKGSRC_CHANGES d12314 1 a12316 1 PKGSRC_KEEP_BIN_PKGS d12318 1 a12320 1 PKGSRC_MAKE_ENV d12322 1 a12324 1 PKGSRC_MKPIE d12326 1 a12328 1 PKGSRC_RUN_TEST d12330 1 a12332 1 PKGSRC_SLEEPSECS d12334 1 a12336 1 PKGSRC_USE_CTF d12338 1 a12340 1 PKGSRC_USE_RELRO d12342 1 a12344 1 PKGSRC_USE_STACK_CHECK d12346 1 a12348 1 PKGTOOLS_ARGS d12350 1 a12352 1 PKG_ALTERNATIVES d12354 1 a12356 1 PKG_APACHE_ACCEPTED d12358 1 a12360 1 PKG_BEST_EXISTS d12362 1 a12364 1 PKG_COMPRESSION d12366 1 a12368 1 PKG_CONFIG_PERMS d12370 1 a12372 1 PKG_DB_TMPDIR d12374 1 a12376 1 PKG_DEFAULT_OPTIONS d12378 1 a12380 1 PKG_DEVELOPER d12382 1 a12384 1 PKG_FATAL_ERRORS d12386 1 a12388 1 PKG_FILELIST_CMD d12390 1 a12392 1 PKG_GID d12394 1 a12396 1 PKG_GROUPS_VARS d12398 1 a12400 1 PKG_INIT_SCRIPTS d12402 1 a12404 1 PKG_JVM d12406 1 a12408 1 PKG_JVM_DEFAULT d12410 1 a12412 1 PKG_LIBTOOL d12414 1 a12416 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12418 1 a12420 1 PKG_OPTIONS_LEGACY_VARS d12422 1 a12424 1 PKG_OPTIONS_OPTIONAL_GROUPS d12426 1 a12428 1 PKG_OPTIONS_VAR d12430 1 a12432 1 PKG_PHP_MAJOR_VERS d12434 1 a12436 1 PKG_RCD_SCRIPTS d12438 1 a12440 1 PKG_REGISTER_SHELLS d12442 1 a12444 1 PKG_SHELL d12446 1 a12448 1 PKG_SUPPORTED_OPTIONS d12450 1 a12452 1 PKG_SYSCONFBASEDIR d12454 1 a12456 1 PKG_SYSCONFDIR_PERMS d12458 1 a12460 1 PKG_SYSCONFVAR d12462 1 a12464 1 PKG_UID d12466 1 a12468 1 PKG_USERS d12470 1 a12472 1 PKG_VERBOSE d12474 1 a12476 1 PLIST_AWK d12478 1 a12480 1 PLIST_SRC d12482 1 a12484 1 PLIST_TYPE d12486 1 a12488 1 POPTOP_USE_MPPE d12490 1 a12492 1 POST_FETCH_HOOK d12494 1 a12496 1 PREFER_NATIVE d12498 1 a12500 1 PREFER_PKGSRC d12502 1 a12504 1 PREPEND_PATH d12506 1 a12508 1 PRIVILEGED_STAGES d12510 1 a12512 1 PTHREAD_AUTO_VARS d12514 1 a12516 1 PTHREAD_LDFLAGS d12518 1 a12520 1 PTHREAD_OPTS d12522 1 a12524 1 PVM_SSH d12526 1 a12528 1 PYTHON_FOR_BUILD_ONLY d12530 1 a12532 1 PYTHON_VERSIONED_DEPENDENCIES d12534 1 a12536 1 PYTHON_VERSIONS_INCOMPATIBLE d12538 1 a12540 1 PYTHON_VERSION_REQD d12542 1 a12544 1 PY_NO_EGG d12546 1 a12548 1 QMAIL_ALIAS_USER d12550 1 a12552 1 QMAIL_LOG_USER d12554 1 a12556 1 QMAIL_PASSWD_USER d12558 1 a12560 1 QMAIL_QUEUE_DIR d12562 1 a12564 1 QMAIL_QUEUE_USER d12566 1 a12568 1 QMAIL_ROOT_USER d12570 1 a12572 1 QPOPPER_FAC d12574 1 a12576 1 QPOPPER_USER d12578 1 a12580 1 RASMOL_DEPTH d12582 1 a12584 1 RCD_ORDER d12586 1 a12588 1 RCD_SCRIPTS_DIR d12590 1 a12592 1 RCD_SCRIPTS_MODE d12594 1 a12596 1 RCD_SCRIPT_SRC d12598 1 a12600 1 RDOC d12602 1 a12604 1 READLINE_TYPE d12606 1 a12608 1 REAL_ROOT_USER d12610 1 a12612 1 RELAY_CTRL_DIR d12614 1 a12616 1 REPLACE_BASH d12618 1 a12620 1 REPLACE_KSH d12622 1 a12624 1 REPLACE_PERL6 d12626 1 a12628 1 REPLACE_PYTHON d12630 1 a12632 1 REPLACE_RUBY_DIRS d12634 1 a12636 1 REPLACE_SH d12638 1 a12640 1 REQD_DIRS d12642 1 a12644 1 REQD_FILES d12646 1 a12648 1 REQD_FILES_PERMS d12650 1 a12652 1 RESOLV_LDFLAGS d12654 1 a12656 1 RM d12658 1 a12660 1 ROCKSPEC_SPECFILE d12662 1 a12664 1 ROOT_GROUP d12666 1 a12668 1 RPCGEN d12670 1 a12672 1 RPM2PKG_PLIST d12674 1 a12676 1 RPM2PKG_STAGE d12678 1 a12680 1 RPM2PKG_SUBPREFIX d12682 1 a12684 1 RPMIGNOREPATH d12686 1 a12688 1 RSSH_CVS_PATH d12690 1 a12692 1 RSSH_RSYNC_PATH d12694 1 a12696 1 RSSH_SFTP_SERVER_PATH d12698 1 a12700 1 RUBYGEM d12702 1 a12704 1 RUBYGEM_OPTIONS d12706 1 a12708 1 RUBY_ARCH d12710 1 a12712 1 RUBY_ARCHLIB d12714 1 a12716 1 RUBY_BASERIDIR d12718 1 a12720 1 RUBY_DLEXT d12722 1 a12724 1 RUBY_DYNAMIC_DIRS d12726 1 a12728 1 RUBY_ENCODING_ARG d12730 1 a12732 1 RUBY_EXTCONF_CHECK d12734 1 a12736 1 RUBY_EXTCONF_MAKEFILE d12738 1 a12740 1 RUBY_INC d12742 1 a12744 1 RUBY_LIB_BASE d12746 1 a12748 1 RUBY_NOVERSION d12750 1 a12752 1 RUBY_RAILS d12754 1 a12756 1 RUBY_RAILS52_VERSION d12758 1 a12760 1 RUBY_RAILS_ACCEPTED d12762 1 a12764 1 RUBY_RAILS_REQD d12766 1 a12768 1 RUBY_RIDIR d12770 1 a12772 1 RUBY_SHLIB d12774 1 a12776 1 RUBY_SHLIBVER d12778 1 a12780 1 RUBY_SITEARCHLIB d12782 1 a12784 1 RUBY_SITELIB_BASE d12786 1 a12788 1 RUBY_SLEXT d12790 1 a12792 1 RUBY_STATICLIB d12794 1 a12796 1 RUBY_SYSRIDIR d12798 1 a12800 1 RUBY_VENDORARCHLIB d12802 1 a12804 1 RUBY_VENDORLIB_BASE d12806 1 a12808 1 RUBY_VERSION d12810 1 a12812 1 RUBY_VERSIONS_INCOMPATIBLE d12814 1 a12816 1 RUBY_VERSION_REQD d12818 1 a12820 1 RUN d12822 1 a12824 1 SAWFISH_THEMES d12826 1 a12828 1 SCREWS_GROUP d12830 1 a12832 1 SCRIPTS_ENV d12834 1 a12836 1 SCROLLKEEPER_REBUILDDB d12838 1 a12840 1 SDIST_PAWD d12842 1 a12844 1 SETGIDGAME d12846 1 a12848 1 SETUID_ROOT_PERMS d12850 1 a12852 1 SHLIB d12854 1 a12856 1 SIGN_PACKAGES d12858 1 a12860 1 SITE_SPECIFIC_PKGS d12862 1 a12864 1 SMF_INSTANCES d12866 1 a12868 1 SMF_METHODS d12870 1 a12872 1 SMF_METHOD_SRC d12874 1 a12876 1 SMF_PREFIX d12878 1 a12880 1 SNIPROXY_GROUP d12882 1 a12884 1 SOURCE_BUFFSIZE d12886 1 a12888 1 SPECIFIC_PKGS d12890 1 a12892 1 SSP_SUPPORTED d12894 1 a12896 1 STEP_MSG d12898 1 a12900 1 STRIP_DBG d12902 1 a12904 1 STRIP_DEBUG_SUPPORTED d12906 1 a12908 1 SU d12910 1 a12912 1 SUBST d12914 1 a12916 1 SUBST_FILES d12918 1 a12920 1 SUBST_MESSAGE d12922 1 a12924 1 SUBST_SED d12926 1 a12928 1 SUBST_SKIP_TEXT_CHECK d12930 1 a12932 1 SUBST_VARS d12934 1 a12936 1 SUSE_PREFER d12938 1 a12940 1 SVN_EXTRACTDIR d12942 1 a12944 1 SVN_REPOSITORIES d12946 1 a12948 1 TERMCAP_TYPE d12950 1 a12952 1 TERMINFO_TYPE d12954 1 a12956 1 TEST_DEPENDS d12958 1 a12960 1 TEST_ENV d12962 1 a12964 1 TEST_MAKE_CMD d12966 1 a12968 1 TEST_TARGET d12970 1 a12972 1 TEXLIVE_REV d12974 1 a12976 1 TEXMFSITE d12978 1 a12980 1 TEX_HYPHEN_DAT d12982 1 a12984 1 TEX_TEXMF_DIRS d12986 1 a12988 1 TO d12990 1 @ 1.291 log @doc/pkgsrc.*: regen @ text @d2722 1 a2722 1

    ftp://ftp.NetBSD.org/pkgsrc/distfiles/pkg-vulnerabilities

    a6217 3
    WRAPPER_TRANSFORM_CMDS

    A list of transformation commands. [TODO: investigate further]

    d10192 1 a10192 1
    output_prohibit(regex...)
    d10721 3 d10725 1 a10727 1 AMANDA_TMP d10729 1 a10731 1 AMANDA_VAR d10733 1 a10735 1 APACHE_MODULE_NAME d10737 1 a10739 1 APACHE_MODULE_SRCDIR d10741 1 a10743 1 APACHE_SUEXEC_CONFIGURE_ARGS d10745 1 a10747 1 APACHE_USER d10749 1 a10751 1 APPEND_ELF d10753 1 a10755 1 AUDIT_PACKAGES_FLAGS d10757 1 a10759 1 AUTOMAKE_OVERRIDE d10761 1 a10763 1 AUTO_MKDIRS d10765 1 a10767 1 BDBBASE d10769 1 a10771 1 BDB_DEFAULT d10773 1 a10775 1 BDB_TYPE d10777 1 a10779 1 BIND_GROUP d10781 1 a10783 1 BINPKG_SITES d10785 5 d10792 1 a10792 1 BISON_PKGDATADIR d10905 3 d10909 1 a10911 1 CHECK_FILES d10913 1 a10915 1 CHECK_FILES_STRICT d10917 1 a10919 1 CHECK_HEADERS_SKIP d10921 1 a10923 1 CHECK_INTERPRETER_SKIP d10925 1 a10927 1 CHECK_PERMS_AUTOFIX d10929 1 d10932 1 a10932 1 CHECK_PORTABILITY d10988 9 d10998 2 d11001 1 a11003 1 CONFIGURE_ARGS d11005 1 a11007 1 CONFIGURE_ENV d11009 1 a11011 1 CONFIGURE_HAS_INFODIR d11013 1 a11015 1 CONFIGURE_SCRIPT d11017 1 a11019 1 CONFIG_SHELL_FLAGS d11021 1 a11023 1 CONF_FILES_MODE d11025 1 a11027 1 CONSERVER_DEFAULTHOST d11029 1 a11031 1 CP d11033 1 a11035 1 CPP_PRECOMP_FLAGS d11037 1 a11039 1 CROSSBASE d11041 1 a11043 1 CTF_FILES_SKIP d11045 1 a11047 1 CTYPE d11049 1 a11051 1 CUPS_SYSTEM_GROUPS d11053 1 a11055 1 CURSES_DEFAULT d11057 17 d11240 1 d11242 2 d11245 1 a11247 1 FAKE_NCURSES d11249 1 a11251 1 FAM_ACCEPTED d11253 1 a11255 1 FAM_SERVER d11257 1 a11259 1 FEATURE_CPPFLAGS d11261 1 a11263 1 FEATURE_LIBS d11265 1 a11267 1 FETCH_BEFORE_ARGS d11269 1 a11271 1 FETCH_OUTPUT_ARGS d11273 1 a11275 1 FETCH_RESUME_ARGS d11277 1 a11279 1 FILES_SUBST d11281 1 a11283 1 FIX_SYSTEM_HEADERS d11285 1 a11287 1 FLUXBOX_USE_KDE d11289 1 d11292 1 a11292 1 FLUXBOX_USE_XINERAMA d11300 8 d11356 1 d11358 2 d11361 1 a11363 1 GEM_PATH d11365 1 a11367 1 GENERATE_PLIST d11369 1 a11371 1 GITHUB_PROJECT d11373 1 a11375 1 GITHUB_TAG d11377 9 d11388 9 d11398 2 d11401 1 a11403 1 GNU_CONFIGURE_INFODIR d11405 1 a11407 1 GNU_CONFIGURE_STRICT d11409 1 a11411 1 GO_BUILD_PATTERN d11413 1 a11415 1 GO_DIST_BASE d11417 1 a11419 1 GO_SRCPATH d11421 1 a11423 1 GROUP_SPECIFIC_PKGS d11425 1 a11427 1 GRUB_PRESET_COMMAND d11429 1 a11431 1 GZIP d11433 1 a11435 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11437 1 a11439 1 HASKELL_ENABLE_SHARED_LIBRARY d11441 1 a11443 1 HAS_CONFIGURE d11445 5 d11548 4 d11585 3 d11589 1 a11591 1 LDCONFIG_ADD_CMD d11593 1 a11595 1 LEAFNODE_DATA_DIR d11597 1 a11599 1 LEAFNODE_USER d11601 1 a11603 1 LIBDVDCSS_MASTER_SITES d11605 1 a11607 1 LIBTOOL d11609 1 a11611 1 LIBTOOL_M4_OVERRIDE d11613 1 a11615 1 LICENSE d11617 5 d11624 1 a11624 1 LINK_RPATH_FLAG d11653 1 a11653 1 MAKEINFO_ARGS d11656 1 a11657 1 MAKE_DIRS_PERMS d11660 1 a11661 1 MAKE_FILE d11664 1 a11665 1 MAKE_JOBS d11668 1 a11669 1 MAKE_PROGRAM d11672 1 a11673 1 MANZ d11676 1 a11677 1 MASTER_SITE_BACKUP d11680 1 a11680 5 MASTER_SITE_CYGWIN MASTER_SITE_GNOME MASTER_SITE_GNU d11685 1 a11685 1 MASTER_SITE_OPENOFFICE a11687 1 MASTER_SITE_OVERRIDE a11688 11 MASTER_SITE_SUNSITE MASTER_SITE_SUSE MASTER_SITE_TEX_CTAN MASTER_SITE_XCONTRIB MASTER_SITE_XEMACS d11785 1 a11785 1 NONZERO_FILESIZE_P a11787 1 NOTE d11789 1 a11791 1 NOT_PAX_ASLR_SAFE d11793 1 a11795 1 NO_BUILD d11797 1 a11799 1 NO_CONFIGURE d11801 1 a11803 1 NS_PREFERRED d11805 1 a11807 1 NULLMAILER_USER d11809 1 a11811 1 OASIS_BUILD_ARGS d11813 1 a11815 1 OBJMACHINE d11817 1 a11819 1 OCAML_FINDLIB_REGISTER d11821 1 a11823 1 OCAML_SITELIBDIR d11825 1 a11827 1 OCAML_USE_DUNE d11829 1 a11831 1 OCAML_USE_JBUILDER d11833 1 a11835 1 OCAML_USE_OASIS_DYNRUN d11837 1 a11839 1 OCAML_USE_OPT_COMPILER d11841 1 a11843 1 OMF d11845 1 a11847 1 ONLY_FOR_PLATFORM d11849 1 a11851 1 OPENSSH_GROUP d11853 1 a11855 1 OPSYS d11857 1 a11859 1 OSS_TYPE d11861 5 a11867 1 OSX_TOLERATE_SDK_SKEW d11869 1 a11871 1 OS_VERSION d11873 1 a11875 1 OVERRIDE_DIRDEPTH d11877 1 d11880 1 a11880 1 OVERRIDE_GNU_CONFIG_SCRIPTS d11928 8 d12041 3 d12045 1 a12047 1 PKGSRC_COMPILER d12049 1 a12051 1 PKGSRC_LOCKTYPE d12053 1 a12055 1 PKGSRC_MESSAGE_RECIPIENTS d12057 1 a12059 1 PKGSRC_MKREPRO d12061 1 a12063 1 PKGSRC_SETENV d12065 1 a12067 1 PKGSRC_TODO d12069 1 a12071 1 PKGSRC_USE_FORTIFY d12073 1 a12075 1 PKGSRC_USE_SSP d12077 1 a12079 1 PKGTASKS_DATAFILE d12081 1 a12083 1 PKGTOOLS_ENV d12085 1 a12087 1 PKG_APACHE d12089 1 a12091 1 PKG_APACHE_DEFAULT d12093 1 a12095 1 PKG_BUILD_OPTIONS d12097 1 a12099 1 PKG_CONFIG d12101 1 a12103 1 PKG_CREATE_USERGROUP d12105 1 a12107 1 PKG_DEBUG_LEVEL d12109 1 a12111 1 PKG_DESTDIR_SUPPORT d12113 1 a12115 1 PKG_DISABLED_OPTIONS d12117 1 a12119 1 PKG_FC d12121 1 a12123 1 PKG_GECOS d12125 1 a12127 1 PKG_GROUPS d12129 1 a12131 1 PKG_HOME d12133 1 a12135 1 PKG_JAVA_HOME d12137 1 a12139 1 PKG_JVMS_ACCEPTED d12141 1 a12143 1 PKG_LEGACY_OPTIONS d12145 1 a12147 1 PKG_OPTIONS d12149 1 a12151 1 PKG_OPTIONS_LEGACY_OPTS d12153 1 a12155 1 PKG_OPTIONS_NONEMPTY_SETS d12157 1 a12159 1 PKG_OPTIONS_REQUIRED_GROUPS d12161 1 a12163 1 PKG_PHP d12165 1 a12167 1 PKG_PHP_VERSION d12169 1 a12171 1 PKG_REFCOUNT_DBDIR d12173 1 a12175 1 PKG_RESUME_TRANSFERS d12177 1 a12179 1 PKG_SUGGESTED_OPTIONS d12181 1 a12183 1 PKG_SYSCONFBASE d12185 1 a12187 1 PKG_SYSCONFDIR d12189 1 a12191 1 PKG_SYSCONFSUBDIR d12193 1 a12195 1 PKG_TOOLS_BIN d12197 1 a12199 1 PKG_UPDATE_FONTS_DB d12201 1 a12203 1 PKG_USERS_VARS d12205 1 a12207 1 PLIST d12209 1 a12211 1 PLIST_AWK_ENV d12213 1 a12215 1 PLIST_SUBST d12217 1 a12219 1 PLIST_VARS d12221 1 a12223 1 POSSIBLE_GFORTRAN_VERSION d12225 1 a12227 1 PREFER d12229 1 a12231 1 PREFER_NATIVE_PTHREADS d12233 1 a12235 1 PREFIX d12237 1 a12239 1 PRE_ROOT_CMD d12241 1 a12243 1 PS d12245 1 a12247 1 PTHREAD_CFLAGS d12249 1 a12251 1 PTHREAD_LIBS d12253 1 a12255 1 PTHREAD_TYPE d12257 1 a12259 1 PYPKGPREFIX d12261 1 a12263 1 PYTHON_SELF_CONFLICT d12265 1 a12267 1 PYTHON_VERSIONS_ACCEPTED d12269 1 a12271 1 PYTHON_VERSION_DEFAULT d12273 1 a12275 1 PYVERSSUFFIX d12277 1 a12279 1 QMAILDIR d12281 1 a12283 1 QMAIL_DAEMON_USER d12285 1 a12287 1 QMAIL_NOFILES_GROUP d12289 1 a12291 1 QMAIL_QMAIL_GROUP d12293 1 a12295 1 QMAIL_QUEUE_EXTRA d12297 1 a12299 1 QMAIL_REMOTE_USER d12301 1 a12303 1 QMAIL_SEND_USER d12305 1 a12307 1 QPOPPER_SPOOL_DIR d12309 1 a12311 1 RAKE_NAME d12313 1 d12316 1 d12318 2 d12321 1 a12323 1 RCD_SCRIPTS_EXAMPLEDIR d12325 1 a12327 1 RCD_SCRIPTS_SHELL d12329 1 d12389 4 d12585 3 d12589 1 a12591 1 SILC_CLIENT_WITH_PERL d12593 1 a12595 1 SKIP_DEPENDS d12597 1 a12599 1 SMF_MANIFEST d12601 1 a12603 1 SMF_METHOD_SHELL d12605 1 a12607 1 SMF_NAME d12609 1 a12611 1 SMF_SRCDIR d12613 1 a12615 1 SNIPROXY_USER d12617 1 a12619 1 SPECIAL_PERMS d12621 1 a12623 1 SSH_SUID d12625 1 a12627 1 SSYNC_PAWD d12629 1 a12631 1 STRIP d12633 1 a12635 1 STRIP_DEBUG d12637 1 a12639 1 STRIP_FILES_SKIP d12641 1 a12643 1 SUBDIR d12645 1 a12647 1 SUBST_CLASSES d12649 1 a12651 1 SUBST_FILTER_CMD d12653 1 a12655 1 SUBST_NOOP_OK d12657 1 a12659 1 SUBST_SHOW_DIFF d12661 1 a12663 1 SUBST_STAGE d12665 1 a12667 1 SUNWSPROBASE d12669 9 a12679 1 SU_CMD d12681 1 a12683 1 TERMINFO_DEFAULT d12685 1 a12687 1 TEST d12689 1 a12691 1 TEST_DIRS d12693 1 a12695 1 TEST_ENV_SHELL d12697 1 a12699 1 TEST_MAKE_FLAGS d12701 1 a12703 1 TEXLIVE_IGNORE_PATTERNS d12705 1 a12707 1 TEXLIVE_UNVERSIONED d12709 1 a12711 1 TEX_FORMATS d12713 1 a12715 1 TEX_HYPHEN_DEF d12717 1 a12719 1 THTTPD_LOG_FACILITY d12721 1 a12723 1 TOOLS_ALIASES d12725 1 a12727 1 TOOLS_BROKEN d12729 1 a12731 1 TOOLS_CREATE d12733 1 a12735 1 TOOLS_FAIL d12737 1 a12739 1 TOOLS_LDCONFIG d12741 1 a12743 1 TOOLS_PATH d12745 1 d12748 1 a12748 1 TOOL_DEPENDS a12779 1 USA d12781 1 a12783 1 USERPPP_GROUP d12785 1 a12787 1 USE_ABI_DEPENDS d12789 1 a12791 1 USE_BSD_MAKEFILE d12793 1 a12795 1 USE_CROSS_COMPILE d12797 1 a12799 1 USE_CWRAPPERS d12801 1 a12803 1 USE_FEATURES d12805 1 a12807 1 USE_GCC_RUNTIME d12809 1 a12811 1 USE_JAVA d12813 1 a12815 1 USE_LANGUAGES d12817 1 a12819 1 USE_NATIVE_GCC d12821 1 a12823 1 USE_PKGSRC_GCC d12825 1 a12827 1 USE_PKGTASKS d12829 1 a12831 1 USE_RUBY_EXTCONF d12833 1 a12835 1 USE_RUBY_SETUP d12837 1 a12839 1 USE_TOOLS d12841 1 a12843 1 UUCP_USER d12845 1 a12847 1 VARNAME d12849 1 a12851 1 WARNING_MSG d12853 1 a12855 1 WCALC_CGIPATH d12857 1 a12859 1 WCALC_HTMLPATH d12861 1 a12863 1 WRAPPER_REORDER_CMDS d12865 1 a12867 1 WRKDIR_BASENAME d12869 1 a12871 1 WRKLOG d12873 1 a12875 1 WRKSRC d12877 1 a12879 1 X11 d12881 1 a12883 1 X11_PKGSRCDIR d12885 1 a12887 1 X509_CERTIFICATE d12889 1 a12891 1 XAW_TYPE d12893 1 a12895 1 XMKMF_FLAGS d12897 1 d12901 1 a12901 1 ZERO_FILESIZE_P a12903 1 ZSH_STATIC d12905 1 a12907 1 _vargroups d12909 1 a12911 1 acquire-localbase-lock d12913 1 a12915 1 add d12917 1 a12919 1 alloca d12921 1 a12923 1 aslr d12925 1 d12945 3 d12949 1 a12951 1 broken d12953 1 a12955 1 bsd d12957 1 a12959 1 build d12961 1 a12963 1 buildlink-directories d12965 1 a12967 1 c d12969 1 a12971 1 ccache d12973 1 a12975 1 cdefs d12977 1 a12979 1 changes d12981 1 a12983 1 changes-entry-noupdate d12985 1 a12987 1 check-clean d12989 1 a12991 1 check-files-clean d12993 1 a12995 1 checksum d12997 1 a12999 1 clean d13001 1 a13003 1 cleandir d13005 1 a13007 1 commit-changes-entry d13009 1 a13011 1 compiler d13013 1 a13015 1 config.guess d13017 1 a13019 1 configuration d13021 1 a13023 1 configure-env d13025 1 a13027 1 configure_args d13029 1 a13031 1 cos d13033 1 a13035 1 create-usergroup d13037 1 d13040 1 a13040 1 ctf d13089 3 d13093 1 a13095 1 emul-distinfo d13097 1 a13099 1 emulation d13101 1 a13103 1 enable d13105 1 d13141 3 d13145 1 a13147 1 fts d13149 1 a13151 1 fts_open d13153 1 a13155 1 fts_set d13157 1 a13159 1 gethostbyaddr d13161 1 a13163 1 gethostbyname2 d13165 1 a13167 1 getprogname d13169 1 a13171 1 getservbyport d13173 1 d13176 1 a13176 1 gettext d13180 1 d13182 2 d13185 1 a13187 1 gnu_configure_strict d13189 1 a13191 1 go-deps d13193 1 a13195 1 guess-license d13197 1 a13199 1 heimdal d13201 1 d13225 3 d13229 1 a13231 1 libintl_bindtextdomain d13233 1 a13235 1 libintl_textdomain d13237 1 a13239 1 libs d13241 1 a13243 1 licence d13245 1 a13247 1 lintl d13249 1 a13251 1 lock d13253 1 a13255 1 lvalue d13257 1 a13259 1 makesum d13261 1 d13273 3 d13277 1 a13279 1 mprotect d13281 1 a13283 1 nb d13285 1 a13287 1 obstack d13289 1 a13291 1 occurs d13293 1 d13461 3 d13465 1 a13467 1 sunpro d13469 1 @ 1.290 log @doc/pkgsrc.*: regen @ text @d1866 2 a1867 3

    Specifies the fortran compiler to use. The default is g95, and gfortran is an alternative.

    @ 1.289 log @doc/pkgsrc.*: regen @ text @d552 1 a552 1 find such bugs: Static analysis tools (pkgtools/pkglint), build-time checks (portability d2069 2 a2070 2

    For a number of reasons you may want to build binary packages for a large selected set of packages in pkgsrc or even for all pkgsrc packages. d2074 1 a2074 1 deploying onto production system. d2076 1 a2076 1 The bulk build system, or pbulk ("p" stands for "parallel"). d2084 4 a2087 4 There exists a number of particularly heavy packages that are not actually interesting to a wide audience. For a limited bulk builds you need to make a list of packages you want to build. d2216 1 a2216 1 directory which contains these files. e.g.

    d3158 3 a3160 1 is built. d3241 1 a3241 1 if the packaged software is using setuptools, you only need d3244 1 a3244 1 ../../lang/python/distutils.mk. d3246 1 a3246 1 distutils uses a script called setup.py, d7196 6 a7201 5

    Your package may depend on some other package being present - and there are various ways of expressing this dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS and TOOL_DEPENDS definitions, the d7206 7 a7212 7

    The basic difference between the two variables is as follows: The DEPENDS definition registers that pre-requisite in the binary package so it will be pulled in when the binary package is later installed, whilst the BUILD_DEPENDS and TOOL_DEPENDS definitions does not, marking a dependency that is only needed for building the package.

    d7214 4 a7217 3 you are building, it should be noted as a TOOL_DEPENDS or BUILD_DEPENDS. When cross-compiling, d7222 1 a7222 1 packages, i.e. packages for the architecture for which the package d7224 3 a7226 3

    The format for BUILD_DEPENDS, DEPENDS and TOOL_DEPENDS definition is:

    d7281 4 d9138 1 a9138 1

    When renaming packages, be sure to fix any references to old name d9141 1 a9141 1 Also when renaming a package, please add d10725 1 a10725 1 ALSA_PC a10727 1 ALTERNATIVES_SRC d10729 1 a10731 1 AMANDA_USER d10733 1 a10735 1 APACHE_GROUP d10737 1 a10739 1 APACHE_MODULE_SRC d10741 1 a10743 1 APACHE_PKG_PREFIX d10745 1 a10747 1 APACHE_SUEXEC_DOCROOT d10749 1 a10751 1 APPEND_ABI d10753 1 a10755 1 ARLA_CACHE d10757 1 a10759 1 AUTOCONF_REQD d10761 1 a10763 1 AUTOMAKE_REQD d10765 1 a10767 1 BDB185_DEFAULT d10769 1 a10771 1 BDB_ACCEPTED d10773 1 a10775 1 BDB_LIBS d10777 1 a10779 1 BIND_DIR d10781 1 a10783 1 BIND_USER d10785 1 a10787 1 BIN_INSTALL_FLAGS a10788 7 BLAS_ACCEPTED BLAS_LIBS BLAS_TYPE d10901 1 a10901 1 CHECKOUT_DATE a10903 1 CHECK_FAKEHOME d10905 1 a10907 1 CHECK_FILES_SKIP d10909 1 a10911 1 CHECK_HEADERS d10913 1 a10915 1 CHECK_INTERPRETER d10917 1 a10919 1 CHECK_PERMS d10921 1 a10923 1 CHECK_PERMS_SKIP d10925 1 a10927 1 CHECK_PORTABILITY_SKIP d10929 1 a10931 1 CHECK_RELRO_SKIP d10933 1 a10935 1 CHECK_SHLIBS d10937 1 a10939 1 CHECK_SHLIBS_SKIP d10941 1 a10943 1 CHECK_SSP d10945 1 a10947 1 CHECK_SSP_SUPPORTED d10949 1 a10951 1 CHECK_STRIPPED_SKIP d10953 1 a10955 1 CHECK_WRKREF_EXTRA_DIRS d10957 1 a10959 1 CLAMAV_DBDIR d10961 1 a10963 1 CLAMAV_USER d10965 1 a10967 1 CLEANDEPENDS d10969 1 a10971 1 CMAKE_INSTALL_PREFIX d10973 1 a10975 1 CMAKE_PKGSRC_BUILD_FLAGS a10976 2 a10977 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM a11039 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG d11041 1 a11043 1 CYRUS_GROUP d11045 1 a11047 1 CYRUS_USER d11049 1 a11051 1 DAEMONTOOLS_LOG_USER d11053 1 a11055 1 DBUS_USER d11057 1 a11059 1 DEFANG_USER d11061 1 a11063 1 DEFAULT_DISTFILES d11065 1 a11067 1 DEFAULT_SERIAL_DEVICE d11069 1 a11071 1 DEINSTALLDEPENDS d11073 1 a11075 1 DEINSTALL_TEMPLATES d11077 1 a11079 1 DELAYED_WARNING_MSG d11081 1 a11083 1 DEPENDS_TARGET d11085 1 a11087 1 DESTDIR d11089 1 a11091 1 DIALER_GROUP d11093 1 a11095 1 DISTDIR d11097 1 a11099 1 DISTINFO_FILE d11101 1 a11103 1 DIST_PATH d11105 1 a11107 1 DJBDNS_AXFR_USER d11109 1 a11111 1 DJBDNS_DJBDNS_GROUP d11113 1 a11115 1 DJBDNS_RBL_USER d11117 1 a11119 1 DLOPEN_REQUIRE_PTHREADS d11121 1 a11123 1 DL_CFLAGS d11125 1 a11127 1 DL_LIBS d11129 1 a11131 1 DOWNLOADED_DISTFILE d11133 1 a11135 1 DYNAMIC_SITES_CMD d11137 1 a11139 1 ECHO d11141 1 a11143 1 ELK_GUI d11145 1 a11147 1 EMULDIR d11149 1 a11151 1 EMULSUBDIRSLASH d11153 1 a11155 1 EMUL_DISTRO d11157 1 a11159 1 EMUL_IS_NATIVE d11161 1 a11163 1 EMUL_OPSYS d11165 1 a11167 1 EMUL_PLATFORM d11169 1 a11171 1 EMUL_PREFER d11173 1 a11175 1 EMUL_TYPE d11177 1 a11179 1 EXIM_GROUP d11181 1 a11183 1 EXPORT_SYMBOLS_LDFLAGS d11185 1 a11187 1 EXTRACT_CMD d11189 1 a11191 1 EXTRACT_DIR d11193 1 a11195 1 EXTRACT_ENV d11197 1 a11199 1 EXTRACT_OPTS d11201 1 a11203 1 EXTRACT_USING d11205 1 a11207 1 FAIL_MSG d11209 1 a11211 1 FAM d11213 1 a11215 1 FAM_DEFAULT d11217 1 a11219 1 FCPATH d11221 1 a11223 1 FEATURE_LDFLAGS d11225 1 a11227 1 FETCH_AFTER_ARGS d11229 1 a11231 1 FETCH_CMD d11233 1 a11235 1 FETCH_PROXY d11237 1 a11239 1 FETCH_USING d11241 1 a11243 1 FILES_SUBST_SED d11245 1 a11247 1 FLUXBOX_USE_GNOME d11249 1 a11251 1 FLUXBOX_USE_XFT a11252 3 FONTDIR a11259 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION a11327 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG d11329 1 a11331 1 GNU_CONFIGURE d11333 1 a11335 1 GNU_CONFIGURE_MANDIR d11337 1 a11339 1 GODEP_REDIRECTS d11341 1 a11343 1 GO_DEPS d11345 1 a11375 5 HG_REPO HG_REPOSITORIES HG_TAG d11377 1 a11379 1 HOST_SPECIFIC_PKGS d11381 1 a11383 1 HOWL_USER d11385 1 a11387 1 ICECAST_CHROOTDIR d11389 1 a11391 1 IDOBASE d11393 1 a11395 1 IGNORE_INFO_DIRS d11397 1 a11399 1 IMAKE d11401 1 a11403 1 IMAKE_MAKE d11405 1 a11407 1 IMAP_UW_CCLIENT_MBOX_FMT d11409 1 a11411 1 INCOMPAT_CURSES d11413 1 a11415 1 INFO_FILES d11417 1 a11419 1 INFO_MSG d11421 1 a11423 1 INN_DATA_DIR d11425 1 a11427 1 INN_USER d11429 1 a11431 1 INSTALLATION_DIRS_FROM_PLIST d11433 1 a11435 1 INSTALL_SH_OVERRIDE d11437 1 a11439 1 INSTALL_TEMPLATES d11441 1 a11443 1 IRCD_HYBRID_IRC_GROUP d11445 1 a11447 1 IRCD_HYBRID_MAXCONN d11449 1 a11451 1 IRCD_HYBRID_SYSLOG_EVENTS d11453 1 a11455 1 IRCD_HYBRID_TOPICLEN d11457 1 a11459 1 IRRD_USE_PGP d11461 1 a11463 1 JABBERD_LOGDIR d11465 1 a11467 1 JABBERD_SPOOLDIR a11468 2 a11469 1 JAVA_APP_PATH a11471 1 JAVA_APP_TARGETS d11473 1 a11475 1 JAVA_CLASSPATH d11477 1 a11479 1 JAVA_LD_LIBRARY_PATH d11481 1 a11483 1 JAVA_UNLIMIT d11485 1 a11487 1 JPEG_ACCEPTED d11489 1 a11491 1 KERBEROS d11493 1 a11495 1 KJS_USE_PCRE d11497 1 a11499 1 KNEWS_DOMAIN_NAME d11501 1 a11503 1 KRB5_DEFAULT a11504 3 LAPACK_LIBS d11537 1 a11537 1 LINUX_BASE_NODEPS a11539 5 LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED LINUX_LOCALES d11541 1 a11543 1 LOCALBASE_LOCKTYPE d11545 1 a11547 1 LOVE_DATA d11549 1 a11551 1 LOVE_VERSION d11553 1 a11555 1 MACHINE_PLATFORM d11557 1 a11559 1 MAILAGENT_EMAIL d11561 1 a11563 1 MAILAGENT_ORGANIZATION a11564 3 MAJOR_OS_VERSION a11792 4 OS_HAVE_ALSA OS_HAVE_RCD d11805 1 a11805 1 OVERRIDE_ROCKSPEC a11807 1 OWN_DIRS d11809 1 a11811 1 P4GROUP d11813 1 a11815 1 P4ROOT d11817 1 a11819 1 PACKAGES d11821 1 a11823 1 PAMBASE d11825 1 a11827 1 PAPERSIZE d11829 1 a11831 1 PATCHDIR d11833 1 a11835 1 PATCH_ARGS d11837 1 a11839 1 PATCH_DIST_ARGS d11841 1 a11843 1 PATCH_DIST_STRIP d11845 1 a11847 1 PATCH_STRIP a11848 2 a11849 5 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS a11851 1 PEAR_CHANNEL_VERSION d11853 1 a11855 1 PEAR_LIB d11857 1 a11859 1 PERL5 d11861 1 a11863 1 PERL5_CONFIGURE_DIRS d11865 1 a11867 1 PERL5_LICENSE d11869 1 a11871 1 PERL5_PACKLIST d11873 1 a11875 1 PERL5_PERLBASE d11877 1 a11879 1 PERL5_USE_PACKLIST d11881 1 a11883 1 PFCTL d11885 1 a11887 1 PF_VERSION d11889 1 a11891 1 PGHOME d11893 1 a11895 1 PGSQL_TYPE d11897 1 a11899 1 PGSQL_VERSION_DEFAULT d11901 1 a11903 1 PG_LIB_EXT d11905 1 a11907 1 PHPCOMMON_MK d11909 1 a11911 1 PHP_BASE_VERS d11913 1 a11915 1 PHP_EXTENSION_DIR d11917 1 a11919 1 PHP_PKG_PREFIX d11921 1 a11923 1 PHP_VERSIONS_ACCEPTED d11925 1 a11927 1 PHP_VERSION_DEFAULT d11929 1 a11931 1 PILRC_USE_GTK d11933 1 a11935 1 PKGCONFIG_FILE d11937 1 a11939 1 PKGCONFIG_OVERRIDE_STAGE d11941 1 a11943 1 PKGGNUDIR d11945 1 a11947 1 PKGLOCALEDIR d11949 1 a11951 1 PKGNAME d11953 1 a11955 1 PKGPATH a11956 3 PKGSRC_BLAS_TYPES a12227 4 RCD_DIR RCD_ORDER a12239 1 RCD_SUBR d12241 1 a12243 1 READLINE_DEFAULT d12245 1 a12247 1 REAL_ROOT_GROUP d12249 1 a12251 1 RECURSIVE_MAKE d12253 1 a12255 1 REPLACE_AWK d12257 1 a12259 1 REPLACE_CSH d12261 1 a12263 1 REPLACE_PERL d12265 1 a12267 1 REPLACE_PHP d12269 1 a12271 1 REPLACE_RUBY d12273 1 a12275 1 REPLACE_RUBY_PAT d12277 1 a12279 1 REPLACE_TEXLUA d12281 1 a12283 1 REQD_DIRS_PERMS d12285 1 a12287 1 REQD_FILES_MODE d12289 1 a12291 1 RESOLV_AUTO_VARS d12293 1 a12295 1 RESOLV_LIBS d12297 1 a12299 5 ROCKSPEC_NAME ROCKSPEC_SPECFILE ROOT_CMD d12301 1 a12303 1 ROOT_USER d12305 1 a12307 1 RPM d12309 1 a12311 1 RPM2PKG_PREFIX d12313 1 a12315 1 RPM2PKG_STRIP d12317 1 a12319 1 RPMFILES d12321 1 a12323 1 RPM_DB_PREFIX d12325 1 a12327 1 RSSH_RDIST_PATH d12329 1 a12331 1 RSSH_SCP_PATH d12333 1 a12335 1 RUBY d12337 1 a12339 1 RUBYGEM_NAME d12341 1 a12343 1 RUBY_ABI_VERSION d12345 1 a12347 1 RUBY_ARCHINC d12349 1 a12351 1 RUBY_BASE d12353 1 a12355 1 RUBY_BUILD_DOCUMENT d12357 1 a12359 1 RUBY_DOC d12361 1 a12363 1 RUBY_EG d12365 1 a12367 1 RUBY_EXTCONF d12369 1 a12371 1 RUBY_EXTCONF_DEBUG d12373 1 a12375 1 RUBY_GEM_BASE d12377 1 a12379 1 RUBY_LIB d12381 1 a12383 1 RUBY_NAME d12385 1 a12387 1 RUBY_PKGPREFIX d12389 1 a12391 1 RUBY_RAILS51_VERSION d12393 1 a12395 1 RUBY_RAILS60_VERSION d12397 1 a12399 1 RUBY_RAILS_DEFAULT d12401 1 a12403 1 RUBY_RAILS_STRICT_DEP d12405 1 a12407 1 RUBY_SETUP d12409 1 a12411 1 RUBY_SHLIBALIAS d12413 1 a12415 1 RUBY_SIMPLE_INSTALL d12417 1 a12419 1 RUBY_SITELIB d12421 1 a12423 1 RUBY_SITERIDIR d12425 1 a12427 1 RUBY_SRCDIR d12429 1 a12431 1 RUBY_SUFFIX d12433 1 a12435 1 RUBY_USE_PTHREAD d12437 1 a12439 1 RUBY_VENDORLIB d12441 1 a12443 1 RUBY_VER d12445 1 a12447 1 RUBY_VERSIONS_ACCEPTED d12449 1 a12451 1 RUBY_VERSION_DEFAULT d12453 1 a12455 1 RUBY_VER_DIR d12457 1 a12459 1 RUN_LDCONFIG d12461 1 a12463 1 SCO d12465 1 a12467 1 SCREWS_USER d12469 1 a12471 1 SCROLLKEEPER_DATADIR d12473 1 a12475 1 SCROLLKEEPER_UPDATEDB d12477 1 a12479 1 SERIAL_DEVICES d12481 1 a12483 1 SETGID_GAMES_PERMS d12485 1 a12487 1 SH a12488 3 SHORTNAME a12572 8 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION d12641 1 a12641 1 TTF_FONTDIR a12643 1 TTF_FONTS_DIR d12645 1 a12647 1 UAC_REQD_EXECS d12649 1 a12651 1 UCSPI_SSL_USER d12653 1 a12655 1 UNPRIVILEGED d12657 1 a12659 1 UNPRIVILEGED_GROUPS d12661 1 a12663 1 UNWRAP_FILES d12665 1 a12667 1 UPDATE_GEMSPEC d12669 1 a12671 1 URI d12673 1 a12675 1 USERGROUP_PHASE d12677 1 a12679 1 USER_SPECIFIC_PKGS d12681 1 a12683 1 USE_APR d12685 1 a12687 1 USE_BUILTIN d12689 1 a12691 1 USE_CURSES d12693 1 a12695 1 USE_DB185 d12697 1 a12699 1 USE_GAMESGROUP d12701 1 a12703 1 USE_IMAKE d12705 1 a12707 1 USE_JAVA2 d12709 1 a12711 1 USE_LIBTOOL d12713 1 a12715 1 USE_NETBSD_REPO d12717 1 a12719 1 USE_PKGSRC_GCC_RUNTIME d12721 1 a12723 1 USE_PKG_ADMIN_DIGEST d12725 1 a12727 1 USE_RUBY_INSTALL d12729 1 a12731 1 USE_RUBY_SETUP_PKG d12733 1 a12735 1 UUCP_GROUP d12737 1 a12739 1 VARBASE d12741 1 a12743 1 VIM_EXTRA_OPTS d12745 1 a12747 1 WCALC_CGIDIR d12749 1 a12751 1 WCALC_HTMLDIR d12753 1 a12755 1 WDM_MANAGERS d12757 1 a12759 1 WRKDIR d12761 1 a12763 1 WRKDIR_LOCKTYPE d12765 1 a12767 1 WRKOBJDIR d12769 1 a12771 1 X10_PORT d12773 1 a12775 1 X11BASE d12777 1 a12779 1 X11_TYPE d12781 1 a12783 1 X509_KEY d12785 1 a12787 1 XLOCK_DEFAULT_MODE a12788 2 a12789 1 XXXX a12819 1 atlas d12821 1 a12823 1 automake d12825 1 a12827 1 awk d12829 1 a12831 1 big-endian d12833 1 a12835 1 bind a12836 3 blas d12929 1 a12929 1 cvs a12931 1 debug d12933 1 a12935 1 declare d12937 1 a12939 1 depend d12941 1 a12943 1 depends d12945 1 a12947 1 depends-fetch d12949 1 a12951 1 describe d12953 1 a12955 1 disable d12957 1 a12959 1 distinfo d12961 1 a12963 1 dlopen d12965 1 a12967 1 do-buildlink d12969 1 a12971 1 do-configure d12973 1 a12975 1 do-extract a12976 3 do-install a12991 1 endif d12993 1 a12995 1 err d12997 1 a12999 1 etc d13001 1 a13003 1 extract-rpm d13005 1 a13007 1 feature d13009 1 a13011 1 fetch d13013 1 a13015 1 follows d13017 1 a13019 1 form d13021 1 a13023 1 fortify a13024 3 fossil d13057 1 a13057 1 git a13059 1 github d13061 1 a13063 1 gnu d13065 1 a13067 1 go d13069 1 a13071 1 golang d13073 1 a13075 1 hashbang a13076 2 a13077 1 hg d13101 1 a13101 1 lapack a13103 1 latex d13105 1 a13107 1 libintl_gettext d13109 1 a13111 1 libnbcompat d13113 1 a13115 1 libtool d13117 1 a13119 1 license d13121 1 a13123 1 little-endian d13125 1 a13127 1 locking d13129 1 a13131 1 make a13132 2 a13133 1 mercurial d13145 1 a13145 1 mkl a13147 1 mount d13149 1 a13151 1 mremap d13153 1 a13155 1 nbcompat d13157 1 a13159 1 obstack_ptr_grow a13160 2 a13161 1 openblas d13329 1 a13329 1 subversion a13331 1 sun a13332 2 a13333 1 svn @ 1.288 log @doc/pkgsrc.*: regen @ text @d586 1 a586 1 NetBSD d596 1 a596 1 Linux d608 1 a608 1 FreeBSD d613 1 a613 1 OpenBSD d618 1 a618 1 IRIX d631 1 a631 1 AIX d637 1 a637 1 Interix d644 1 a644 1 DragonFlyBSD d654 1 a654 1 HP-UX d659 1 a659 1 Haiku d664 1 a664 1 MirBSD d669 1 a669 1 Minix3 d674 1 a674 1 Cygwin d679 1 a679 1 GNU/kFreeBSD d684 1 a684 1 Bitrig d981 1 a981 1 2019Q4.

    d1007 2 a1008 2

    The tar file for the stable branch 2019Q4 is in the directory pkgsrc-2019Q4 and is also called pkgsrc.tar.gz.

    d1011 1 a1011 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2019Q4/pkgsrc.tar.gz
    d1026 1 a1026 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2019Q4 -P pkgsrc
    d1034 1
    a1034 1
    

    Refer to the list of available mirrors to choose a faster CVS mirror, if needed.

    d1111 1 a1111 1 -rpkgsrc-2019Q4 option.

    d1267 1 a1267 1 # PKG_PATH="http://cdn.NetBSD.org/pub/pkgsrc/packages" d1333 1 a1333 1 FTP site at http://ftp.NetBSD.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities. d1351 1 a1351 1 http://www.samba.org/samba/whatsnew/macroexploit.html
    d1354 1 a1354 1 vulnerabilities d1357 1 a1357 1 to the root users crontab(5) entry. For example the entry d1386 1 a1386 1 see daily.conf(5) and security.conf(5) for more details. d1577 1 a1577 1

    If you invoke the make(1) command with d1585 1 a1585 1

    If you want to know the value of a certain make(1) d1588 1 a1588 1 target. e.g. to show the expansion of the make(1) d1601 1 a1601 1 install a binary package - if available - via pkg_add(1), d1605 1 a1605 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1644 1 a1644 1 make(1) from the base system, it is in the directory d1786 1 a1786 1 privileges using su(1) d2027 1 a2027 1 another system with pkg_add(1). This saves having to build d2418 1 a2418 1

  • pkgsrc-bulk: d2421 1 a2421 1

  • pkgsrc-changes: d2433 1 a2433 1 http://mail-index.NetBSD.org/.

    d2618 1 a2618 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2670 1 a2670 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2744 1 a2744 1 scripts and to make(1). Some package authors ignore the d3654 1 a3654 1 an argument to patch(1) that sets the pathname strip count to d3664 1 a3664 1 this package which have been reported with send-pr(1). d4017 1 a4017 1

    This shell script is invoked twice by pkg_add(1). d4022 2 a4023 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 17.1, “Files and directories outside the installation prefix”. d4043 2 a4044 2 See pkg_delete(1) and pkg_create(1) for more information. d4180 1 a4180 1 the make(1) system as a programming language for a big system d4186 1 a4186 1 like awk(1) programs. To make sure that every shell command runs d4200 1 a4200 1 make(1) for the second time, the file exists and will not be d4218 1 a4218 1

    You might remember that make(1) sometimes removes d4222 1 a4222 1 when one of the commands fails (like false(1) above).

    d4231 1 a4231 1 !=, which are described in the make(1) man d4249 1 a4249 1 interpreted as delimiters, just like in sh(1).

    d4306 1 a4306 1

    Example 3 can handle arbitrary strings, since printf(1) only d4310 1 a4310 1 skipped by the shell. For printf(1) this doesn't make a difference, d4354 1 a4354 1 ${EGFILES} is replaced with an empty string by make(1). d4403 1 a4403 1 - see the pkg_create(1) man page for a full list. d4547 1 a4547 1 The files are later concatenated using cat(1), and the order of things is d5633 1 a5633 1 make(1) variable that the user can set to override the default d5851 1 a5851 1 install files according to hier(7), with the exception that d5953 2 a5954 2 http://www.somewhere.com/somehow/ \ http://www.somewhereelse.com/mirror/somehow/ d5966 1 a5966 1 MASTER_SITES= http://www.example.com/download.cgi?file= d5980 1 a5980 1 MASTER_SITES= -http://www.example.com/archive/v1.0.0.tar.gz d6169 1 a6169 1 patch(1) can be handed in d6171 1 a6171 1

    By default patch(1) is given special args to make d6350 1 a6350 1 install(1) command that have the owner, group and d6396 1 a6396 1

    If set to yes, do not run strip(1) d6473 1 a6473 1

    This target does a pkg_delete(1) in the d6479 1 a6479 1

    Add a "-v" to the pkg_delete(1) command.

    d6488 1 a6488 1 -R to the pkg_delete(1) d6640 1 a6640 1

    This target invokes pkg_info(1) for the current d6756 1 a6756 1

    If the package installs files via tar(1) or d6783 1 a6783 1 it will be installed via pkg_add(1). If not, d6788 1 a6788 1 pkg_add(1) if:

    d6974 1 a6974 1 make(1) (for example .if or d7228 1 a7228 1 pkg_info(1).

    d7329 1 a7329 1

    pkg_add(1) is able to detect attempts to install packages d7340 1 a7340 1 exported in pkg_summary(5) files and consumed by binary package d7391 1 a7391 1 not be deleted using pkg_delete(1) unless the d7533 1 a7533 1 sed(1) that specify the actual substitution. Every sed d7619 1 a7619 1 http://github.com/username/exampleproject/archive/v1.0.zip, d7633 1 a7633 1 http://github.com​/example​/example​/archive​/988881adc9fc3655077dc2d4d757d480b5ea0e11.tar.gz, d7647 1 a7647 1 http://github.com​/username/exampleproject​/releases​/download​/rel-1.6​/offensive-1.6.zip, d7745 1 a7745 1 files, i.e. files that are loaded via dlopen(3), NOT d7755 1 a7755 1 the cc(1) or ld(1) line with ${LIBTOOL} d7772 2 a7773 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7781 1 a7781 1 ldconfig(8).

    d8865 1 a8865 1 % url2pkg http://www.example.com/path/to/distfile.tar.gz
  • d8965 1 a8965 1 document. Next, generate an uuencoded gzipped tar(1) d8968 1 a8968 1 either with the send-pr(1) command, or if you don't have d8970 1 a8970 1 http://www.NetBSD.org/support/send-pr.html, d8987 1 a8987 1 homepage at http://pkgsrc.org/wip/ d8997 1 a8997 1 automatically update pages on www.NetBSD.org and other d9171 1 a9171 1 search the pkg_summary(5) database for PREV_PKGPATH d9207 1 a9207 1
    d9240 2 a9241 2
    24.9. I have a little time to kill. What shall I do? d9252 1 a9252 1

    24.1.

    d9261 1 a9261 1 to the pkgsrc-internal invocations of make(1), while d9268 1 a9268 1

    24.2.

    d9277 1 a9277 1 make(1) program that is used in the pkgsrc d9286 1 a9286 1

    24.3.

    d9304 1 a9304 1

    24.4.

    d9317 1 a9317 1

    24.5.

    d9333 1 a9333 1

    24.6.

    d9346 1 a9346 1 which is documented in the make(1) man page and which is d9357 1 a9357 1

    24.7.

    d9365 1 a9365 1
    tech-pkg
    d9373 1 a9373 1
    pkgsrc-bugs
    d9375 1 a9375 1 send-pr(1) appear here. Please do not report your bugs here d9382 1 a9382 1

    24.8.

    d9397 1 a9397 1
  • On the mailing list archives (see http://mail-index.NetBSD.org/), you can find discussions d9430 1 a9430 1

    24.9.

    d9432 2 a9433 2

    I have a little time to kill. What shall I do?

    d9450 1 a9450 1 the tech-pkg d9471 1 a9471 1

    Quoting GNOME's web d9485 1 a9485 1

    Given that pkgsrc is NetBSD's official packaging system, d9487 1 a9487 1 under this operating system. Recently, DragonFly BSD also adopted d9498 1 a9498 1 straight to the pending d9743 1 a9743 1

    The most common places to report bugs are the GNOME's Bugzilla and the freedesktop.org's d10124 1 a10124 1 first failing command. See this Stack Overflow d10280 1 a10280 1 HOMEPAGE= http://www.gnu.org/software/bison/bison.html d10294 1 a10294 1 improvements. Why you would want this when Berkeley yacc(1) is part d12224 1 a12225 1 PREFER d12228 1 a12229 1 PREFER_NATIVE_PTHREADS d12232 1 a12233 1 PREFIX d12236 1 a12237 1 PRE_ROOT_CMD d12240 1 a12241 1 PS d12244 1 a12245 1 PTHREAD_CFLAGS d12248 1 a12249 1 PTHREAD_LIBS d12252 1 a12253 1 PTHREAD_TYPE d12256 1 a12257 1 PYPKGPREFIX d12260 1 a12261 1 PYTHON_SELF_CONFLICT d12264 1 a12265 1 PYTHON_VERSIONS_ACCEPTED d12268 1 a12269 1 PYTHON_VERSION_DEFAULT d12272 1 a12273 1 PYVERSSUFFIX d12276 1 a12277 1 QMAILDIR d12280 1 a12281 1 QMAIL_DAEMON_USER d12284 1 a12285 1 QMAIL_NOFILES_GROUP d12288 1 a12289 1 QMAIL_QMAIL_GROUP d12292 1 a12293 1 QMAIL_QUEUE_EXTRA d12296 1 a12297 1 QMAIL_REMOTE_USER d12300 1 a12301 1 QMAIL_SEND_USER d12304 1 a12305 1 QPOPPER_SPOOL_DIR d12308 1 a12309 1 RAKE_NAME d12312 1 a12313 1 RCD_DIR d12316 1 a12317 1 RCD_SCRIPTS d12320 1 a12321 1 RCD_SCRIPTS_EXAMPLEDIR d12324 1 a12325 1 RCD_SCRIPTS_SHELL d12328 1 a12329 1 RCD_SUBR d12332 1 a12333 1 READLINE_DEFAULT d12336 1 a12337 1 REAL_ROOT_GROUP d12340 1 a12341 1 RECURSIVE_MAKE d12344 1 a12345 1 REPLACE_AWK d12348 1 a12349 1 REPLACE_CSH d12352 1 a12353 1 REPLACE_PERL d12356 1 a12357 1 REPLACE_PHP d12360 1 a12361 1 REPLACE_RUBY d12364 1 a12365 1 REPLACE_RUBY_PAT d12368 1 a12369 1 REPLACE_TEXLUA d12372 1 a12373 1 REQD_DIRS_PERMS d12376 1 a12377 1 REQD_FILES_MODE d12380 1 a12381 1 RESOLV_AUTO_VARS d12384 1 a12385 1 RESOLV_LIBS d12388 1 a12389 1 ROCKSPEC_NAME d12392 1 a12393 1 ROOT_CMD d12396 1 a12397 1 ROOT_USER d12400 1 a12401 1 RPM d12404 1 a12405 1 RPM2PKG_PREFIX d12408 1 a12409 1 RPM2PKG_STRIP d12412 1 a12413 1 RPMFILES d12416 1 a12417 1 RPM_DB_PREFIX d12420 1 a12421 1 RSSH_RDIST_PATH d12424 1 a12425 1 RSSH_SCP_PATH d12428 1 a12429 1 RUBY d12432 1 a12433 1 RUBYGEM_NAME d12436 1 a12437 1 RUBY_ABI_VERSION d12440 1 a12441 1 RUBY_ARCHINC d12444 1 a12445 1 RUBY_BASE d12448 1 a12449 1 RUBY_BUILD_DOCUMENT d12452 1 a12453 1 RUBY_DOC d12456 1 a12457 1 RUBY_EG d12460 1 a12461 1 RUBY_EXTCONF d12464 1 a12465 1 RUBY_EXTCONF_DEBUG d12468 1 a12469 1 RUBY_GEM_BASE d12472 1 a12473 1 RUBY_LIB d12476 1 a12477 1 RUBY_NAME d12480 1 a12481 1 RUBY_PKGPREFIX d12484 1 a12485 1 RUBY_RAILS42_VERSION d12492 1 d12494 2 d12497 1 a12499 1 RUBY_RAILS_REQD d12501 1 a12503 1 RUBY_RIDIR d12505 1 a12507 1 RUBY_SHLIB d12509 1 a12511 1 RUBY_SHLIBVER d12513 1 a12515 1 RUBY_SITEARCHLIB d12517 1 a12519 1 RUBY_SITELIB_BASE d12521 1 a12523 1 RUBY_SLEXT d12525 1 a12527 1 RUBY_STATICLIB d12529 1 a12531 1 RUBY_SYSRIDIR d12533 1 a12535 1 RUBY_VENDORARCHLIB d12537 1 a12539 1 RUBY_VENDORLIB_BASE d12541 1 a12543 1 RUBY_VERSION d12545 1 d12645 3 d12649 1 a12651 1 SUBST_FILES d12653 1 d12656 1 a12656 1 SUBST_MESSAGE d12696 1 a12697 1 TEST_MAKE_FLAGS d12700 1 a12701 1 TEXLIVE_IGNORE_PATTERNS d12704 1 a12705 1 TEXLIVE_UNVERSIONED d12708 1 a12709 1 TEX_FORMATS d12712 1 a12713 1 TEX_HYPHEN_DEF d12716 1 a12717 1 THTTPD_LOG_FACILITY d12720 1 a12721 1 TOOLS_ALIASES d12724 1 a12725 1 TOOLS_BROKEN d12728 1 a12729 1 TOOLS_CREATE d12732 1 a12733 1 TOOLS_FAIL d12736 1 a12737 1 TOOLS_LDCONFIG d12740 1 a12741 1 TOOLS_PATH d12744 1 a12745 1 TOOL_DEPENDS d12748 1 a12749 1 TTF_FONTS_DIR d12752 1 a12753 1 UAC_REQD_EXECS d12756 1 a12757 1 UCSPI_SSL_USER d12760 1 a12761 1 UNPRIVILEGED d12764 1 a12765 1 UNPRIVILEGED_GROUPS d12768 1 a12769 1 UNWRAP_FILES d12772 1 a12773 1 UPDATE_GEMSPEC d12776 1 a12777 1 URI d12780 1 a12781 1 USERGROUP_PHASE d12784 1 a12785 1 USER_SPECIFIC_PKGS d12788 1 a12789 1 USE_APR d12792 1 a12793 1 USE_BUILTIN d12796 1 a12797 1 USE_CURSES d12800 1 a12801 1 USE_DB185 d12804 1 a12805 1 USE_GAMESGROUP d12808 1 a12809 1 USE_IMAKE d12812 1 a12813 1 USE_JAVA2 d12816 1 a12817 1 USE_LIBTOOL d12820 1 a12821 1 USE_NETBSD_REPO d12824 1 a12825 1 USE_PKGSRC_GCC_RUNTIME d12828 1 a12829 1 USE_PKG_ADMIN_DIGEST d12832 1 a12833 1 USE_RUBY_INSTALL d12836 1 a12837 1 USE_RUBY_SETUP_PKG d12840 1 a12841 1 UUCP_GROUP d12844 1 a12845 1 VARBASE d12848 1 a12849 1 VIM_EXTRA_OPTS d12852 1 a12853 1 WCALC_CGIDIR d12856 1 a12857 1 WCALC_HTMLDIR d12860 1 a12861 1 WDM_MANAGERS d12864 1 a12865 1 WRKDIR d12868 1 a12869 1 WRKDIR_LOCKTYPE d12872 1 a12873 1 WRKOBJDIR d12876 1 a12877 1 WXGTK_ACCEPTED a12879 1 WXGTK_DEFAULT d12881 1 a12883 1 X11 d12885 1 a12887 1 X11_PKGSRCDIR d12889 1 a12891 1 X509_CERTIFICATE d12893 1 a12895 1 XAW_TYPE d12897 1 a12899 1 XMKMF_FLAGS d12901 1 a12903 1 XXXX d12905 1 a12907 1 ZERO_FILESIZE_P d12909 1 a12911 1 __stdc__ d12913 5 d12921 1 a12921 1 all d12924 1 d12926 2 d12929 1 a12931 1 asprintf d12933 1 a12935 1 autoconf d12937 1 a12939 1 autoreconf d12941 1 a12943 1 bash d12945 1 d12948 1 a12948 1 bin-install d12960 4 d12981 3 d12985 1 a12987 1 changes-entry d12989 1 a12991 1 check d12993 1 a12995 1 check-files d12997 1 a12999 1 check-vulnerable d13001 1 a13003 1 checksum-phase d13005 1 a13007 1 clean-depends d13009 1 a13011 1 commit d13013 1 a13015 1 compact d13017 1 a13019 1 conf d13021 1 a13023 1 config.sub d13025 1 a13027 1 configure d13029 1 a13031 1 configure-help d13033 1 d13036 1 d13038 2 d13041 1 a13043 1 csh d13045 1 a13047 1 cvs d13049 1 a13051 1 declaration d13053 1 a13055 1 defined d13057 1 a13059 1 dependencies d13061 1 a13063 1 depends-checksum d13065 1 a13067 1 deps d13069 1 a13071 1 destdir d13073 1 a13075 1 distclean d13077 1 a13079 1 dl d13081 1 a13083 1 do-build d13085 1 a13087 1 do-clean d13089 1 a13091 1 do-configure-post-hook d13093 1 a13095 1 do-fetch d13097 5 a13103 1 emul d13105 1 a13107 1 emulator d13109 1 d13112 1 a13112 1 endian d13121 5 a13125 1 feature d13128 1 a13129 1 fetch d13132 1 a13133 1 follows d13136 1 a13137 1 form d13140 1 a13141 1 fortify d13144 1 a13145 1 fossil d13148 1 a13149 1 from d13161 5 a13165 1 full d13168 1 a13168 1 gcc d13173 7 d13181 1 a13183 1 git d13185 1 a13187 1 glob d13189 1 a13191 1 gnu_configure_strict d13193 1 a13195 1 go-deps d13197 1 a13199 1 guess-license d13201 1 a13203 1 heimdal d13205 1 a13207 1 hg d13209 1 d13212 1 a13212 1 increment d13233 5 a13237 1 libnbcompat d13240 1 a13241 1 libtool d13244 1 a13245 1 license d13248 1 a13249 1 little-endian d13252 1 a13253 1 locking d13256 1 a13257 1 make d13260 1 a13261 1 memory d13264 1 a13265 1 meta d13268 1 a13269 1 meta_package d13272 1 a13273 1 mk.conf d13276 1 a13277 1 mount d13280 1 a13281 1 mremap d13284 1 a13285 1 nbcompat d13288 1 a13288 1 no a13315 1 partial d13317 1 a13319 1 pax d13321 1 a13323 1 pbulk-index d13325 1 a13327 1 perl d13329 1 a13331 1 perms d13333 1 a13335 1 pkg-build-options d13337 1 a13339 1 pkg_build_options d13341 1 a13343 1 plist d13345 1 a13347 1 post-fetch d13349 1 d13353 3 d13357 1 a13359 1 pre-fetch d13361 1 a13363 1 print-plist d13365 1 a13367 1 privileged-install-hook d13369 1 a13371 1 python d13373 1 d13376 1 d13378 6 d13385 1 a13387 1 rename d13389 1 a13391 1 replace d13393 1 a13395 1 reproducible d13397 1 a13399 1 root d13401 5 d13441 3 d13445 1 a13447 1 st_mode d13449 1 d13456 1 a13457 1 strong d13460 1 d13462 3 d13480 1 a13481 1 texlive d13484 1 a13485 1 tool d13488 1 a13489 1 tools-libtool-m4-override d13492 1 a13493 1 ulimit d13496 1 a13497 1 undo-replace d13500 1 a13501 1 unprivileged d13504 1 a13505 1 unstripped d13508 1 a13509 1 upload d13512 1 a13513 1 usage d13536 2 a13537 2 weak work d13540 1 a13541 1 wrkdir d13544 1 a13544 1 yes d13570 2 a13571 2

  • http://www.NetBSD.org/docs/pkgsrc/

  • http://www.NetBSD.org/docs/pkgsrc/pkgsrc.pdf: d13573 1 a13573 1

  • http://www.NetBSD.org/docs/pkgsrc/pkgsrc.ps: @ 1.287 log @doc/pkgsrc.*: regen @ text @d8142 45 d9207 1 a9207 1

    d9252 1 a9252 1

    24.1.

    d9268 1 a9268 1

    24.2.

    d9286 1 a9286 1

    24.3.

    d9304 1 a9304 1

    24.4.

    d9317 1 a9317 1

    24.5.

    d9333 1 a9333 1

    24.6.

    d9357 1 a9357 1

    24.7.

    d9382 1 a9382 1

    24.8.

    d9430 1 a9430 1

    24.9.

    @ 1.286 log @doc/pkgsrc.*: regen @ text @d336 3 a338 2
    21.5.3. Undefined reference to ...
    21.5.4. Running out of memory
    d429 1 a429 1
    A.1.4. Checking a package with pkglint
    d2758 16 d3002 3 a3004 2
    21.5.3. Undefined reference to ...
    21.5.4. Running out of memory
    d4147 4 a4150 7

    If you have any files that you wish to be placed in the package prior to configuration or building, you could place these files here and use a ${CP} command in the pre-configure target to achieve this. Alternatively, you could simply diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d6927 3 a6929 2
    21.5.3. Undefined reference to ...
    21.5.4. Running out of memory
    d7479 11 a7489 1 Example:

    d7503 1 a7503 2 this variable. Otherwise some substitutions may be skipped.

    d7536 4 d8059 87 a8145 1 21.5.3. Undefined reference to ... d8208 1 a8208 1 21.5.3.1. Special issue: The SunPro compiler d8234 1 a8234 1 21.5.4. Running out of memory d9162 1 a9162 1
    d9207 1 a9207 1

    24.1.

    d9223 1 a9223 1

    24.2.

    d9241 1 a9241 1

    24.3.

    d9259 1 a9259 1

    24.4.

    d9272 1 a9272 1

    24.5.

    d9288 1 a9288 1

    24.6.

    d9312 1 a9312 1

    24.7.

    d9337 1 a9337 1

    24.8.

    d9385 1 a9385 1

    24.9.

    d10210 1 a10210 1
    A.1.4. Checking a package with pkglint
    d10266 1 a10266 2 A.1.4. Checking a package with pkglint d10281 1 a10281 1 (Run "pkglint.exe -F" to automatically fix some issues.) d10956 1 a10956 1 CONFIGURE_HAS_INFODIR d10959 1 a10960 1 CONFIGURE_SCRIPT d10963 1 a10964 1 CONFIG_SHELL_FLAGS d10967 1 a10968 1 CONF_FILES_MODE d10971 1 a10972 1 CONSERVER_DEFAULTHOST d10975 1 a10976 1 CP d10979 1 a10980 1 CPP_PRECOMP_FLAGS d10983 1 a10984 1 CROSSBASE d10987 1 a10988 1 CTF_FILES_SKIP d10991 1 a10992 1 CTYPE d10995 1 a10996 1 CUPS_SYSTEM_GROUPS d10999 1 a11000 1 CURSES_DEFAULT d11003 1 a11004 1 CVS_EXTRACTDIR d11007 1 a11008 1 CVS_PROJECT d11011 1 a11012 1 CVS_ROOT d11015 1 a11016 1 CVS_ROOT_NONGNU d11019 1 a11020 1 CVS_TAG d11023 1 a11024 1 CYRUS_GROUP d11027 1 a11028 1 CYRUS_USER d11031 1 a11032 1 DAEMONTOOLS_LOG_USER d11035 1 a11036 1 DBUS_USER d11039 1 a11040 1 DEFANG_USER d11043 1 a11044 1 DEFAULT_DISTFILES d11047 1 a11048 1 DEFAULT_SERIAL_DEVICE d11051 1 a11052 1 DEINSTALLDEPENDS d11055 1 a11056 1 DEINSTALL_TEMPLATES d11059 1 a11060 1 DELAYED_WARNING_MSG d11063 1 a11064 1 DEPENDS_TARGET d11067 1 a11068 1 DESTDIR d11071 1 a11072 1 DIALER_GROUP d11075 1 a11076 1 DISTDIR d11079 1 a11080 1 DISTINFO_FILE d11083 1 a11084 1 DIST_PATH d11087 1 a11088 1 DJBDNS_AXFR_USER d11091 1 a11092 1 DJBDNS_DJBDNS_GROUP d11095 1 a11096 1 DJBDNS_RBL_USER d11099 1 a11100 1 DLOPEN_REQUIRE_PTHREADS d11103 1 a11104 1 DL_CFLAGS d11107 1 a11108 1 DL_LIBS d11111 1 a11112 1 DOWNLOADED_DISTFILE d11115 1 a11116 1 DYNAMIC_SITES_CMD d11119 1 a11120 1 ECHO d11123 1 a11124 1 ELK_GUI d11127 1 a11128 1 EMULDIR d11131 1 a11132 1 EMULSUBDIRSLASH d11135 1 a11136 1 EMUL_DISTRO d11139 1 a11140 1 EMUL_IS_NATIVE d11143 1 a11144 1 EMUL_OPSYS d11147 1 a11148 1 EMUL_PLATFORM d11151 1 a11152 1 EMUL_PREFER d11155 1 a11156 1 EMUL_TYPE d11159 1 a11160 1 EXIM_GROUP d11163 1 a11164 1 EXPORT_SYMBOLS_LDFLAGS d11167 1 a11168 1 EXTRACT_CMD d11171 1 a11172 1 EXTRACT_DIR d11175 1 a11176 1 EXTRACT_ENV d11179 1 a11180 1 EXTRACT_OPTS d11183 1 a11184 1 EXTRACT_USING d11187 1 a11188 1 FAIL_MSG d11191 1 a11192 1 FAM d11195 1 a11196 1 FAM_DEFAULT d11199 1 a11200 1 FCPATH d11203 1 a11204 1 FEATURE_LDFLAGS d11207 1 a11208 1 FETCH_AFTER_ARGS d11211 1 a11212 1 FETCH_CMD d11215 1 a11216 1 FETCH_PROXY d11219 1 a11220 1 FETCH_USING d11223 1 a11224 1 FILES_SUBST_SED d11227 1 a11228 1 FLUXBOX_USE_GNOME d11231 1 a11232 1 FLUXBOX_USE_XFT d11235 1 a11236 1 FONTDIR d11239 1 a11240 1 FONTS_VERBOSE d11243 1 a11244 1 FOSSIL_EXTRACTDIR d11247 1 a11248 1 FOSSIL_REPOSITORIES d11251 1 a11252 1 FOX_USE_XUNICODE d11255 1 a11256 1 FREEWNN_USER d11259 1 a11260 1 FTP_PKG_URL_HOST d11263 1 a11264 1 GAMEDATA_PERMS d11267 1 a11268 1 GAMEDIR_PERMS d11271 1 a11272 1 GAMEMODE d11275 1 a11276 1 GAMES_GROUP d11279 1 a11280 1 GCC d11283 1 a11284 1 GCC_REQD d11287 1 a11288 1 GEM_BUILD d11291 1 a11292 1 GEM_CLEANBUILD_EXTENSIONS d11295 1 a11296 1 GEM_EXTSDIR d11299 1 a11300 1 GEM_LIBDIR d11303 1 a11304 1 GEM_PATH d11307 1 a11308 1 GENERATE_PLIST d11311 1 a11312 1 GITHUB_PROJECT d11315 1 a11316 1 GITHUB_TAG d11319 1 a11320 1 GIT_BRANCH d11323 1 a11324 1 GIT_EXTRACTDIR d11327 1 a11328 1 GIT_REPOSITORIES d11331 1 a11332 1 GIT_TAG d11335 1 a11336 1 GNU_CONFIGURE d11339 1 a11340 1 GNU_CONFIGURE_MANDIR d11343 1 a11344 1 GODEP_REDIRECTS d11347 1 a11348 1 GO_DEPS d11351 1 a11352 1 GO_SRCPATH d11355 1 a11356 1 GROUP_SPECIFIC_PKGS d11359 1 a11360 1 GRUB_PRESET_COMMAND d11363 1 a11364 1 GZIP d11367 1 a11368 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11371 1 a11372 1 HASKELL_ENABLE_SHARED_LIBRARY d11375 1 a11376 1 HAS_CONFIGURE d11379 1 a11380 1 HG_REPO d11383 1 a11384 1 HG_TAG d11387 1 a11388 1 HOST_SPECIFIC_PKGS d11391 1 a11392 1 HOWL_USER d11395 1 a11396 1 ICECAST_CHROOTDIR d11399 1 a11400 1 IDOBASE d11403 1 a11404 1 IGNORE_INFO_DIRS d11407 1 a11408 1 IMAKE d11411 1 a11412 1 IMAKE_MAKE d11415 1 a11416 1 IMAP_UW_CCLIENT_MBOX_FMT d11419 1 a11420 1 INCOMPAT_CURSES d11423 1 a11424 1 INFO_FILES d11427 1 a11428 1 INFO_MSG d11431 1 a11432 1 INN_DATA_DIR d11435 1 a11436 1 INN_USER d11439 1 d11441 2 d11444 1 a11446 1 INSTALL_ENV d11448 1 a11450 1 INSTALL_SRC d11452 1 a11454 1 INSTALL_UNSTRIPPED d11456 1 a11458 1 IRCD_HYBRID_IRC_USER d11460 1 a11462 1 IRCD_HYBRID_NICLEN d11464 1 a11466 1 IRCD_HYBRID_SYSLOG_FACILITY d11468 1 a11470 1 IRIX d11472 1 a11474 1 JABBERD_GROUP d11476 1 a11478 1 JABBERD_PIDDIR d11480 1 a11482 1 JABBERD_USER d11484 1 a11486 1 JAVA_APP_PATH d11488 1 a11490 1 JAVA_BINPREFIX d11492 1 a11494 1 JAVA_HOME d11496 1 a11498 1 JAVA_NAME d11500 1 a11502 1 JAVA_WRAPPERS d11504 1 a11506 1 JPEG_DEFAULT d11508 1 a11510 1 KERMIT_SUID_UUCP d11512 1 a11514 1 KNEWS_DOMAIN_FILE d11516 1 a11518 1 KRB5_ACCEPTED d11520 1 a11522 1 LANGUAGES d11524 1 a11526 1 LATEX2HTML_ICONPATH d11528 1 a11530 1 LDCONFIG_REMOVE_CMD d11532 1 a11534 1 LEAFNODE_GROUP d11536 1 a11538 1 LIBDVDCSS_HOMEPAGE d11540 1 a11542 1 LIBRSVG_TYPE d11544 1 a11546 1 LIBTOOLIZE_PLIST d11548 1 a11550 1 LIBUSB_TYPE d11552 1 a11554 1 LINKER_RPATH_FLAG d11556 1 a11558 1 LINUX_BASE_NODEPS d11560 1 a11562 1 LINUX_BASE_REQUIRED d11564 1 a11566 1 LOCALBASE d11568 1 a11570 1 LOCALPATCHES d11572 1 a11574 1 LOVE_GAME d11576 1 a11578 1 LP64PLATFORMS d11580 1 a11582 1 MAILAGENT_DOMAIN d11584 1 a11586 1 MAILAGENT_FQDN d11588 1 a11590 1 MAJORDOMO_HOMEDIR d11592 1 a11594 1 MAKEINFO_ARGS d11596 1 a11598 1 MAKE_DIRS_PERMS d11600 1 a11602 1 MAKE_FILE d11604 1 a11606 1 MAKE_JOBS d11608 1 a11610 1 MAKE_PROGRAM d11612 1 a11614 1 MANZ d11616 1 a11618 1 MASTER_SITE_BACKUP d11620 1 a11622 1 MASTER_SITE_GNOME d11624 1 a11626 1 MASTER_SITE_LOCAL d11628 1 a11630 1 MASTER_SITE_OPENOFFICE d11632 1 a11634 1 MASTER_SITE_PERL_CPAN d11636 1 a11638 1 MASTER_SITE_SUSE d11640 1 a11642 1 MASTER_SITE_XCONTRIB d11644 1 a11646 1 MASTER_SORT d11648 1 a11650 1 MASTER_SORT_REGEX d11652 1 a11654 1 MEDIATOMB_GROUP d11656 1 a11658 1 MIPSPROBASE d11660 1 a11662 1 MIREDO_USER d11664 1 a11666 1 MKDIR d11668 1 a11670 1 MLDONKEY_HOME d11672 1 a11674 1 MONOTONE_GROUP d11676 1 a11678 1 MOTIFBASE d11680 1 a11682 1 MOTIF_TYPE_DEFAULT d11684 1 a11686 1 MSGFMT_STRIP_MSGCTXT d11688 1 a11690 1 MTOOLS_ENABLE_FLOPPYD d11692 1 a11694 1 MV d11696 1 a11698 1 MYSQL_DATADIR d11700 1 a11702 1 MYSQL_GROUP d11704 1 a11706 1 MYSQL_USER d11708 1 a11710 1 MYSQL_VERSION_DEFAULT d11712 1 a11714 1 NAGIOSDIR d11716 1 a11718 1 NAGIOS_USER d11720 1 a11722 1 NATIVE_APPEND_ELF d11724 1 a11726 1 NATIVE_MACHINE_PLATFORM d11728 1 a11730 1 NBPAX_PROGRAM_PREFIX d11732 1 a11734 1 NMH_EDITOR d11736 1 a11738 1 NMH_PAGER d11740 1 a11742 1 NONZERO_FILESIZE_P d11744 1 a11746 1 NOT_FOR_PLATFORM d11748 1 a11750 1 NOT_PAX_MPROTECT_SAFE d11752 1 a11754 1 NO_CHECKSUM d11756 1 a11758 1 NO_SKIP d11760 1 a11762 1 NULLMAILER_GROUP d11764 1 a11766 1 OASIS d11768 1 a11770 1 OBJHOSTNAME d11772 1 a11774 1 OCAML_FINDLIB_DIRS d11776 1 a11778 1 OCAML_FINDLIB_REGISTER_VERBOSE d11780 1 a11782 1 OCAML_TOPKG_DOCDIR d11784 1 a11786 1 OCAML_USE_FINDLIB d11788 1 a11790 1 OCAML_USE_OASIS d11792 1 a11794 1 OCAML_USE_OPAM d11796 1 a11798 1 OCAML_USE_TOPKG d11800 1 a11802 1 ONLY_FOR_COMPILER d11804 1 a11806 1 OPENSSH_CHROOT d11808 1 a11810 1 OPENSSH_USER d11812 1 a11814 1 OPSYS_EMULDIR d11816 1 a11818 1 OSX d11820 1 a11822 1 OS_HAVE_ALSA d11824 1 a11826 1 OS_VARIANT d11828 1 a11830 1 OTF_FONTS_DIR d11832 1 a11834 1 OVERRIDE_GEMSPEC d11836 1 a11838 1 OVERRIDE_ROCKSPEC d11840 1 a11842 1 OWN_DIRS_PERMS d11844 1 a11846 1 P4PORT d11848 1 a11850 1 P4USER d11852 1 a11854 1 PALMOS_DEFAULT_SDK d11856 1 a11858 1 PAM_DEFAULT d11860 1 a11862 1 PASSIVE_FETCH d11864 1 a11866 1 PATCHFILES d11868 1 a11870 1 PATCH_DEBUG d11872 1 a11874 1 PATCH_DIST_CAT d11876 1 a11878 1 PATCH_FUZZ_FACTOR d11880 1 a11882 1 PATH d11884 1 a11886 1 PEAR d11888 1 a11890 1 PEAR_CHANNEL_ALIAS d11892 1 a11894 1 PEAR_CMD d11896 1 a11898 1 PEAR_PACKAGE_XML d11900 1 a11902 1 PERL5_CONFIGURE d11904 1 a11906 1 PERL5_LDFLAGS d11908 1 a11910 1 PERL5_MODULE_TYPE d11912 1 a11914 1 PERL5_PACKLIST_DIR d11916 1 a11918 1 PERL5_SITEBASE d11920 1 a11922 1 PERL5_VENDORBASE d11924 1 a11926 1 PFVAR_H d11928 1 a11930 1 PGGROUP d11932 1 a11934 1 PGPKGSRCDIR d11936 1 a11938 1 PGSQL_VERSIONS_ACCEPTED d11940 1 a11942 1 PGUSER d11944 1 a11946 1 PHP d11948 1 a11950 1 PHPPKGSRCDIR d11952 1 a11954 1 PHP_CHECK_INSTALLED d11956 1 a11958 1 PHP_INITIAL_TEENY d11960 1 a11962 1 PHP_VERSION d11964 1 a11966 1 PHP_VERSIONS_INCOMPATIBLE d11968 1 a11970 1 PHP_VERSION_REQD d11972 1 a11974 1 PKGCONFIG_BASE d11976 1 a11978 1 PKGCONFIG_OVERRIDE d11980 1 a11982 1 PKGDIR d11984 1 a11986 1 PKGINFODIR d11988 1 a11990 1 PKGMANDIR d11992 1 a11994 1 PKGNAME_REQD d11996 1 a11998 1 PKGREVISION d12000 1 a12002 1 PKGSRC_CHANGES d12004 1 a12006 1 PKGSRC_KEEP_BIN_PKGS d12008 1 a12010 1 PKGSRC_MAKE_ENV d12012 1 a12014 1 PKGSRC_MKPIE d12016 1 a12018 1 PKGSRC_RUN_TEST d12020 1 a12022 1 PKGSRC_SLEEPSECS d12024 1 a12026 1 PKGSRC_USE_CTF d12028 1 a12030 1 PKGSRC_USE_RELRO d12032 1 a12034 1 PKGSRC_USE_STACK_CHECK d12036 1 a12038 1 PKGTOOLS_ARGS d12040 1 a12042 1 PKG_ALTERNATIVES d12044 1 a12046 1 PKG_APACHE_ACCEPTED d12048 1 a12050 1 PKG_BEST_EXISTS d12052 1 a12054 1 PKG_COMPRESSION d12056 1 a12058 1 PKG_CONFIG_PERMS d12060 1 a12062 1 PKG_DB_TMPDIR d12064 1 a12066 1 PKG_DEFAULT_OPTIONS d12068 1 a12070 1 PKG_DEVELOPER d12072 1 a12074 1 PKG_FATAL_ERRORS d12076 1 a12078 1 PKG_FILELIST_CMD d12080 1 a12082 1 PKG_GID d12084 1 a12086 1 PKG_GROUPS_VARS d12088 1 a12090 1 PKG_INIT_SCRIPTS d12092 1 a12094 1 PKG_JVM d12096 1 a12098 1 PKG_JVM_DEFAULT d12100 1 a12102 1 PKG_LIBTOOL d12104 1 a12106 1 PKG_OPTIONS_DEPRECATED_WARNINGS d12108 1 a12110 1 PKG_OPTIONS_LEGACY_VARS d12112 1 a12114 1 PKG_OPTIONS_OPTIONAL_GROUPS d12116 1 a12118 1 PKG_OPTIONS_VAR d12120 1 a12122 1 PKG_PHP_MAJOR_VERS d12124 1 a12126 1 PKG_RCD_SCRIPTS d12128 1 a12130 1 PKG_REGISTER_SHELLS d12132 1 a12134 1 PKG_SHELL d12136 1 a12138 1 PKG_SUPPORTED_OPTIONS d12140 1 a12142 1 PKG_SYSCONFBASEDIR d12144 1 a12146 1 PKG_SYSCONFDIR_PERMS d12148 1 a12150 1 PKG_SYSCONFVAR d12152 1 a12154 1 PKG_UID d12156 1 a12158 1 PKG_USERS d12160 1 a12162 1 PKG_VERBOSE d12164 1 a12166 1 PLIST_AWK d12168 1 a12170 1 PLIST_SRC d12172 1 a12174 1 PLIST_TYPE d12176 1 a12178 1 POPTOP_USE_MPPE d12180 1 a12182 1 PREFER d12184 1 a12186 1 PREFER_NATIVE_PTHREADS d12188 1 a12190 1 PREFIX d12192 1 a12194 1 PRE_ROOT_CMD d12196 1 a12198 1 PS d12200 1 a12202 1 PTHREAD_CFLAGS d12204 1 a12206 1 PTHREAD_LIBS d12208 1 a12210 1 PTHREAD_TYPE d12212 1 a12214 1 PYPKGPREFIX d12216 1 a12218 1 PYTHON_SELF_CONFLICT d12220 1 a12222 1 PYTHON_VERSIONS_ACCEPTED d12224 1 a12226 1 PYTHON_VERSION_DEFAULT d12228 1 a12230 1 PYVERSSUFFIX d12232 1 a12234 1 QMAILDIR d12236 1 a12238 1 QMAIL_DAEMON_USER d12240 1 a12242 1 QMAIL_NOFILES_GROUP d12244 1 a12246 1 QMAIL_QMAIL_GROUP d12248 1 a12250 1 QMAIL_QUEUE_EXTRA d12252 1 a12254 1 QMAIL_REMOTE_USER d12256 1 a12258 1 QMAIL_SEND_USER d12260 1 a12262 1 QPOPPER_SPOOL_DIR d12264 1 a12266 1 RAKE_NAME d12268 1 a12270 1 RCD_DIR d12272 1 a12274 1 RCD_SCRIPTS d12276 1 a12278 1 RCD_SCRIPTS_EXAMPLEDIR d12280 1 a12282 1 RCD_SCRIPTS_SHELL d12284 1 a12286 1 RCD_SUBR d12288 1 a12290 1 READLINE_DEFAULT d12292 1 a12294 1 REAL_ROOT_GROUP d12296 1 a12298 1 RECURSIVE_MAKE d12300 1 a12302 1 REPLACE_AWK d12304 1 a12306 1 REPLACE_CSH d12308 1 a12310 1 REPLACE_PERL d12312 1 a12314 1 REPLACE_PHP d12316 1 a12318 1 REPLACE_RUBY d12320 1 a12322 1 REPLACE_RUBY_PAT d12324 1 a12326 1 REPLACE_TEXLUA d12328 1 a12330 1 REQD_DIRS_PERMS d12332 1 a12334 1 REQD_FILES_MODE d12336 1 a12338 1 RESOLV_AUTO_VARS d12340 1 a12342 1 RESOLV_LIBS d12344 1 a12346 1 ROCKSPEC_NAME d12348 1 a12350 1 ROOT_CMD d12352 1 a12354 1 ROOT_USER d12356 1 a12358 1 RPM d12360 1 a12362 1 RPM2PKG_PREFIX d12364 1 a12366 1 RPM2PKG_STRIP d12368 1 a12370 1 RPMFILES d12372 1 a12374 1 RPM_DB_PREFIX d12376 1 a12378 1 RSSH_RDIST_PATH d12380 1 a12382 1 RSSH_SCP_PATH d12384 1 a12386 1 RUBY d12388 1 a12390 1 RUBYGEM_NAME d12392 1 a12394 1 RUBY_ABI_VERSION d12396 1 a12398 1 RUBY_ARCHINC d12400 1 a12402 1 RUBY_BASE d12404 1 a12406 1 RUBY_BUILD_DOCUMENT d12408 1 a12410 1 RUBY_DOC d12412 1 a12414 1 RUBY_EG d12416 1 a12418 1 RUBY_EXTCONF d12420 1 a12422 1 RUBY_EXTCONF_DEBUG d12424 1 a12426 1 RUBY_GEM_BASE d12428 1 a12430 1 RUBY_LIB d12432 1 a12434 1 RUBY_NAME d12436 1 a12438 1 RUBY_PKGPREFIX d12440 1 a12442 1 RUBY_RAILS42_VERSION d12444 1 a12446 1 RUBY_RAILS52_VERSION d12448 1 a12450 1 RUBY_RAILS_DEFAULT d12452 1 a12454 1 RUBY_RAILS_STRICT_DEP d12456 1 a12458 1 RUBY_SETUP d12460 1 a12462 1 RUBY_SHLIBALIAS d12464 1 a12466 1 RUBY_SIMPLE_INSTALL d12468 1 a12470 1 RUBY_SITELIB d12472 1 a12474 1 RUBY_SITERIDIR d12476 1 a12478 1 RUBY_SRCDIR d12480 1 a12482 1 RUBY_SUFFIX d12484 1 a12486 1 RUBY_USE_PTHREAD d12488 1 a12490 1 RUBY_VENDORLIB d12492 1 a12494 1 RUBY_VER d12496 1 a12498 1 RUBY_VERSIONS_ACCEPTED d12500 1 a12502 1 RUBY_VERSION_REQD d12504 1 a12506 1 RUN d12508 1 a12510 1 SAWFISH_THEMES d12512 1 a12514 1 SCREWS_GROUP d12516 1 a12518 1 SCRIPTS_ENV d12520 1 a12522 1 SCROLLKEEPER_REBUILDDB d12524 1 a12526 1 SDIST_PAWD d12528 1 a12530 1 SETGIDGAME d12532 1 a12534 1 SETUID_ROOT_PERMS d12536 1 a12538 1 SHLIB d12540 1 a12542 1 SIGN_PACKAGES d12544 1 a12546 1 SITE_SPECIFIC_PKGS d12548 1 a12550 1 SMF_INSTANCES d12552 1 a12554 1 SMF_METHODS d12556 1 a12558 1 SMF_METHOD_SRC d12560 1 a12562 1 SMF_PREFIX d12564 1 a12566 1 SNIPROXY_GROUP d12568 1 a12570 1 SOURCE_BUFFSIZE d12572 1 a12574 1 SPECIFIC_PKGS d12576 1 a12578 1 SSP_SUPPORTED d12580 1 a12582 1 STEP_MSG d12584 1 a12586 1 STRIP_DBG d12588 1 a12590 1 STRIP_DEBUG_SUPPORTED d12592 1 a12594 1 SU d12596 1 a12598 1 SUBST_CLASSES d12600 1 a12602 1 SUBST_FILTER_CMD d12604 1 a12606 1 SUBST_SED d12608 1 a12610 1 SUBST_SKIP_TEXT_CHECK d12612 1 a12614 1 SUBST_VARS d12616 1 a12618 1 SUSE_PREFER d12620 1 a12622 1 SVN_EXTRACTDIR d12624 1 a12626 1 SVN_REPOSITORIES d12628 1 a12630 1 TERMCAP_TYPE d12632 1 a12634 1 TERMINFO_TYPE d12636 1 a12638 1 TEST_DEPENDS d12640 1 a12642 1 TEST_ENV d12644 1 a12646 1 TEST_MAKE_FLAGS d12648 1 a12650 1 TEXLIVE_IGNORE_PATTERNS d12652 1 a12654 1 TEXLIVE_UNVERSIONED d12656 1 a12658 1 TEX_FORMATS d12660 1 a12662 1 TEX_HYPHEN_DEF d12664 1 a12666 1 THTTPD_LOG_FACILITY d12668 1 a12670 1 TOOLS_ALIASES d12672 1 a12674 1 TOOLS_BROKEN d12676 1 a12678 1 TOOLS_CREATE d12680 1 a12682 1 TOOLS_FAIL d12684 1 a12686 1 TOOLS_LDCONFIG d12688 1 a12690 1 TOOLS_PATH d12692 1 a12694 1 TOOL_DEPENDS d12696 1 a12698 1 TTF_FONTS_DIR d12700 1 a12702 1 UAC_REQD_EXECS d12704 1 a12706 1 UCSPI_SSL_USER d12708 1 a12710 1 UNPRIVILEGED d12712 1 a12714 1 UNPRIVILEGED_GROUPS d12716 1 a12718 1 UNWRAP_FILES d12720 1 a12722 1 UPDATE_GEMSPEC d12724 1 a12726 1 URI d12728 1 a12730 1 USERGROUP_PHASE d12732 1 a12734 1 USER_SPECIFIC_PKGS d12736 1 a12738 1 USE_APR d12740 1 a12742 1 USE_BUILTIN d12744 1 a12746 1 USE_CURSES d12748 1 a12750 1 USE_DB185 d12752 1 a12754 1 USE_GAMESGROUP d12756 1 a12758 1 USE_IMAKE d12760 1 a12762 1 USE_JAVA2 d12764 1 a12766 1 USE_LIBTOOL d12768 1 a12770 1 USE_NETBSD_REPO d12772 1 a12774 1 USE_PKGSRC_GCC_RUNTIME d12776 1 a12778 1 USE_PKG_ADMIN_DIGEST d12780 1 a12782 1 USE_RUBY_INSTALL d12784 1 a12786 1 USE_RUBY_SETUP_PKG d12788 1 a12790 1 UUCP_GROUP d12792 1 a12794 1 VARBASE d12796 1 a12798 1 VIM_EXTRA_OPTS d12800 1 a12802 1 WCALC_CGIDIR d12804 1 a12806 1 WCALC_HTMLDIR d12808 1 a12810 1 WDM_MANAGERS d12812 1 a12814 1 WRKDIR d12816 1 a12818 1 WRKDIR_LOCKTYPE d12820 1 a12822 1 WRKOBJDIR d12824 1 a12826 1 WXGTK_ACCEPTED d12828 1 a12830 1 X10_PORT d12832 1 a12834 1 X11BASE d12836 1 a12838 1 X11_TYPE d12840 1 a12842 1 X509_KEY d12844 1 a12846 1 XLOCK_DEFAULT_MODE d12848 1 a12850 1 XXX d12852 1 a12854 1 YES d12856 1 a12858 1 ZSH_STATIC d12860 1 a12862 1 _vargroups d12864 1 a12866 1 all d12868 1 a12870 1 aslr d12872 1 a12874 1 atlas d12876 1 a12878 1 automake d12880 1 a12882 1 awk d12884 1 a12886 1 big-endian d12888 1 a12890 1 binpkg-list d12892 1 a12894 1 bootstrap-depends d12896 1 a12898 1 broken_on_platform d12900 1 a12902 1 build-env d12904 1 a12906 1 buildlink-oss-soundcard-h d12908 1 a12910 1 c++ d12912 1 a12914 1 cce d12916 1 a12918 1 changes d12920 1 a12922 1 changes-entry-noupdate d12924 1 a12926 1 check-clean d12928 1 a12930 1 check-files-clean d12932 1 a12934 1 checksum d12936 1 a12938 1 clean d12940 1 a12942 1 cleandir d12944 1 a12946 1 commit-changes-entry d12948 1 a12950 1 compiler d12952 1 a12954 1 config.guess d12956 1 a12958 1 configuration d12960 1 @ 1.285 log @doc/pkgsrc.*: regen @ text @d9047 1 a9047 1
    d9092 1 a9092 1

    24.1.

    d9108 1 a9108 1

    24.2.

    d9126 1 a9126 1

    24.3.

    d9144 1 a9144 1

    24.4.

    d9157 1 a9157 1

    24.5.

    d9173 1 a9173 1

    24.6.

    d9197 1 a9197 1

    24.7.

    d9222 1 a9222 1

    24.8.

    d9270 1 a9270 1

    24.9.

    d10117 1 a10117 1 MASTER_SITES= ${MASTER_SITE_GNU} d10157 1 a10157 1 directory of the package you wish to examine and execute d10160 8 a10167 1 looks fine. @ 1.284 log @doc/pkgsrc.*: regen @ text @d9047 1 a9047 1
    d9092 1 a9092 1

    24.1.

    d9108 1 a9108 1

    24.2.

    d9126 1 a9126 1

    24.3.

    d9144 1 a9144 1

    24.4.

    d9157 1 a9157 1

    24.5.

    d9173 1 a9173 1

    24.6.

    d9197 1 a9197 1

    24.7.

    d9222 1 a9222 1

    24.8.

    d9270 1 a9270 1

    24.9.

    d10162 1 a10162 1 more checks will be performed. Use e.g. pkglint -Call d12891 3 d12895 1 a12897 1 do-extract d12899 1 a12901 1 do-install d12903 1 a12905 1 emulation d12907 1 a12909 1 enable d12911 1 a12913 1 enomem d12915 1 a12917 1 errx d12919 1 a12921 1 feature d12923 1 a12925 1 fetch d12927 1 a12929 1 follows d12931 1 a12933 1 form d12935 1 a12937 1 fortify d12939 1 a12941 1 fossil d12943 1 a12945 1 from d12947 1 a12949 1 fts_close d12951 1 a12953 1 fts_read d12955 1 a12957 1 full d12959 1 a12961 1 getopt_long d12963 1 a12965 1 gettext d12967 1 a12969 1 github d12971 1 a12973 1 gnu d12975 1 a12977 1 go d12979 1 a12981 1 golang d12983 1 a12985 1 hashbang d12987 1 a12989 1 help d12991 1 a12993 1 imake d12995 1 a12997 1 interp d12999 1 a13001 1 intl d13003 1 a13005 1 kerberos d13007 1 a13009 1 krb5 d13011 1 a13013 1 lapack d13015 1 a13017 1 libnbcompat d13019 1 a13021 1 libtool d13023 1 a13025 1 license d13027 1 a13029 1 little-endian d13031 1 a13033 1 locking d13035 1 a13037 1 make d13039 1 a13041 1 memory d13043 1 a13045 1 meta d13047 1 a13049 1 meta_package d13051 1 a13053 1 mk.conf d13055 1 a13057 1 mount d13059 1 a13061 1 mremap d13063 1 a13065 1 nbcompat d13067 1 a13069 1 obstack d13071 1 a13073 1 occurs d13075 1 a13077 1 openblas d13079 1 a13081 1 options.mk d13083 1 a13085 1 override d13087 1 a13089 1 override-message-intltool d13091 1 a13093 1 parallel d13095 1 a13097 1 path d13099 1 a13101 1 paxctl d13103 1 a13105 1 pc d13107 1 a13109 1 perl5 d13111 1 a13113 1 php d13115 1 a13117 1 pkg-config d13119 1 a13121 1 platform d13123 1 a13125 1 post-extract d13127 1 a13129 1 post-wrapper d13131 1 a13133 1 pre-extract d13135 1 a13137 1 print-go-deps d13139 1 a13141 1 print-summary-data d13143 1 a13145 1 pypi d13147 1 a13149 1 readme-all d13151 1 a13153 1 relro d13155 1 a13157 1 reorder d13159 1 a13161 1 replace_interpreter d13163 1 a13165 1 resolv d13167 1 a13169 1 ruby d13171 1 a13173 1 setgid d13175 1 a13177 1 setuid d13179 1 a13181 1 show d13183 1 a13185 1 show-build-defs d13187 1 a13189 1 show-deps d13191 1 a13193 1 show-downlevel d13195 1 a13197 1 show-tools d13199 1 a13201 1 show-vars d13203 1 a13205 1 ssp d13207 1 a13209 1 stage-install d13211 1 a13213 1 strip d13215 1 a13217 1 strong d13219 1 a13221 1 subversion d13223 1 a13225 1 sunpro d13227 1 a13229 1 svn d13231 1 a13233 1 test d13235 1 a13237 1 texlive d13239 1 a13241 1 tool d13243 1 a13245 1 tools-libtool-m4-override d13247 1 a13249 1 ulimit d13251 1 a13253 1 undo-replace d13255 1 a13257 1 unprivileged d13259 1 a13261 1 unstripped d13263 1 a13265 1 upload d13267 1 a13269 1 usage d13271 1 a13273 1 user d13275 1 a13277 1 vasprintf d13279 1 a13281 1 vsnprintf d13283 1 a13285 1 warning d13287 1 a13289 1 warnx d13291 1 a13293 1 work d13295 1 a13297 1 wrkdir d13299 1 @ 1.283 log @doc/pkgsrc.*: regen @ text @d1266 2 a1267 1 # PKG_PATH="http://cdn.NetBSD.org/pub/pkgsrc/packages/OPSYS/ARCH/VERSIONS/All/" d7073 3 a7075 3

    Check whether the license qualifies as Free or Open Source by referencing Various Licenses and Comments about Them and Licenses by Name | d7081 4 a7084 2

  • DEFAULT_ACCEPTABLE_LICENSES in pkgsrc/mk/license.mk

  • default_acceptable_licenses in pkgsrc/pkgtools/pkg_install/files/lib/license.c

  • d7087 3 a7089 1
  • The license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory.

  • d7433 8 a7440 8 MAINTAINER, OWNER, or comments in Makefile.

  • Changing build variables if the resulting binary package is the same.

  • Changing DESCR.

  • Adding PKG_OPTIONS if the default options don't change.

  • d7445 7 a7451 7
  • Security fixes

  • Changes or additions to a patch file

  • Changes to the PLIST

  • A dependency is changed or renamed.

  • d7564 7 a7570 1

    DIST_SUBDIR is also used when a distfile's name does not contain a version and the distfile is apt to change. In cases where the likelihood of this is very small, DIST_SUBDIR might not be required. Additionally, DIST_SUBDIR must not be removed unless the distfile name changes, even if a package is being moved or renamed.

    d7582 4 a7585 2

    Helper methods exist for packages hosted on github.com which will often have distfile names that clash with other packages, for example 1.0.tar.gz. Use one of the three recipes from below:

    d7589 3 a7591 3

    If your distfile URL looks similar to http://github.com/username/exampleproject/archive/v1.0.zip, then you are packaging a tagged release.

    d7603 4 a7606 3

    If your distfile URL looks similar to http://github.com/example/example/archive/988881adc9fc3655077dc2d4d757d480b5ea0e11.tar.gz, then you are packaging a specific commit not tied to a release.

    d7617 3 a7619 3

    If your distfile URL looks similar to http://github.com/username/exampleproject/releases/download/rel-1.6/offensive-1.6.zip, then you are packaging a release.

    d9047 1 a9047 1
    d9092 1 a9092 1

    24.1.

    d9108 1 a9108 1

    24.2.

    d9126 1 a9126 1

    24.3.

    d9144 1 a9144 1

    24.4.

    d9157 1 a9157 1

    24.5.

    d9173 1 a9173 1

    24.6.

    d9197 1 a9197 1

    24.7.

    d9222 1 a9222 1

    24.8.

    d9270 1 a9270 1

    24.9.

    d11254 1 a11255 1 HEADER_TEMPLATES d11258 1 a11259 1 HG_REPOSITORIES d11262 1 a11263 1 HOST_PKGTOOLS_ARGS d11266 1 a11267 1 HOWL_GROUP d11270 1 a11271 1 ICCBASE d11274 1 a11275 1 ICON_THEMES d11278 1 a11279 1 IGNORE_CCACHE d11282 1 a11283 1 IGNORE_INTERACTIVE_FETCH d11286 1 a11287 1 IMAKEOPTS d11290 1 a11291 1 IMAKE_MANINSTALL d11294 1 a11295 1 IMDICTDIR d11298 1 a11299 1 INFO_DIR d11302 1 a11303 1 INFO_FILES_VERBOSE d11306 1 a11307 1 INIT_SYSTEM d11310 1 a11311 1 INN_GROUP d11314 1 a11315 1 INSTALLATION_DIRS d11318 1 a11319 1 INSTALL_ENV d11322 1 a11323 1 INSTALL_SRC d11326 1 a11327 1 INSTALL_UNSTRIPPED d11330 1 a11331 1 IRCD_HYBRID_IRC_USER d11334 1 a11335 1 IRCD_HYBRID_NICLEN d11338 1 a11339 1 IRCD_HYBRID_SYSLOG_FACILITY d11342 1 a11343 1 IRIX d11346 1 a11347 1 JABBERD_GROUP d11350 1 a11351 1 JABBERD_PIDDIR d11354 1 a11355 1 JABBERD_USER d11358 1 a11359 1 JAVA_APP_PATH d11362 1 a11363 1 JAVA_BINPREFIX d11366 1 a11367 1 JAVA_HOME d11370 1 a11371 1 JAVA_NAME d11374 1 a11375 1 JAVA_WRAPPERS d11378 1 a11379 1 JPEG_DEFAULT d11382 1 a11383 1 KERMIT_SUID_UUCP d11386 1 a11387 1 KNEWS_DOMAIN_FILE d11390 1 a11391 1 KRB5_ACCEPTED d11394 1 a11395 1 LANGUAGES d11398 1 a11399 1 LATEX2HTML_ICONPATH d11402 1 a11403 1 LDCONFIG_REMOVE_CMD d11406 1 a11407 1 LEAFNODE_GROUP d11410 1 a11411 1 LIBDVDCSS_HOMEPAGE d11414 1 a11415 1 LIBRSVG_TYPE d11418 1 a11419 1 LIBTOOLIZE_PLIST d11422 1 a11423 1 LIBUSB_TYPE d11426 1 a11427 1 LINKER_RPATH_FLAG d11430 1 a11431 1 LINUX_BASE_NODEPS d11434 1 a11435 1 LINUX_BASE_REQUIRED d11438 1 a11439 1 LOCALBASE d11442 1 a11443 1 LOCALPATCHES d11446 1 a11447 1 LOVE_GAME d11450 1 a11451 1 LP64PLATFORMS d11454 1 a11455 1 MAILAGENT_DOMAIN d11458 1 a11459 1 MAILAGENT_FQDN d11462 1 a11463 1 MAJORDOMO_HOMEDIR d11466 1 a11467 1 MAKEINFO_ARGS d11470 1 a11471 1 MAKE_DIRS_PERMS d11474 1 a11475 1 MAKE_FILE d11478 1 a11479 1 MAKE_JOBS d11482 1 a11483 1 MAKE_PROGRAM d11486 1 a11487 1 MANZ d11490 1 a11491 1 MASTER_SITE_BACKUP d11494 1 a11495 1 MASTER_SITE_GNOME d11498 1 a11499 1 MASTER_SITE_LOCAL d11502 1 a11503 1 MASTER_SITE_OPENOFFICE d11506 1 a11507 1 MASTER_SITE_PERL_CPAN d11510 1 a11511 1 MASTER_SITE_SUSE d11514 1 a11515 1 MASTER_SITE_XCONTRIB d11518 1 a11519 1 MASTER_SORT d11522 1 a11523 1 MASTER_SORT_REGEX d11526 1 a11527 1 MEDIATOMB_GROUP d11530 1 a11531 1 MIPSPROBASE d11534 1 a11535 1 MIREDO_USER d11538 1 a11539 1 MKDIR d11542 1 a11543 1 MLDONKEY_HOME d11546 1 a11547 1 MONOTONE_GROUP d11550 1 a11551 1 MOTIFBASE d11554 1 a11555 1 MOTIF_TYPE_DEFAULT d11558 1 a11559 1 MSGFMT_STRIP_MSGCTXT d11562 1 a11563 1 MTOOLS_ENABLE_FLOPPYD d11566 1 a11567 1 MV d11570 1 a11571 1 MYSQL_DATADIR d11574 1 a11575 1 MYSQL_GROUP d11578 1 a11579 1 MYSQL_USER d11582 1 a11583 1 MYSQL_VERSION_DEFAULT d11586 1 a11587 1 NAGIOSDIR d11590 1 a11591 1 NAGIOS_USER d11594 1 a11595 1 NATIVE_APPEND_ELF d11598 1 a11599 1 NATIVE_MACHINE_PLATFORM d11602 1 a11603 1 NBPAX_PROGRAM_PREFIX d11606 1 a11607 1 NMH_EDITOR d11610 1 a11611 1 NMH_PAGER d11614 1 a11615 1 NONZERO_FILESIZE_P d11618 1 a11619 1 NOT_FOR_PLATFORM d11622 1 a11623 1 NOT_PAX_MPROTECT_SAFE d11626 1 a11627 1 NO_CHECKSUM d11630 1 a11631 1 NO_SKIP d11634 1 a11635 1 NULLMAILER_GROUP d11638 1 a11639 1 OASIS d11642 1 a11643 1 OBJHOSTNAME d11646 1 a11647 1 OCAML_FINDLIB_DIRS d11650 1 a11651 1 OCAML_FINDLIB_REGISTER_VERBOSE d11654 1 a11655 1 OCAML_TOPKG_DOCDIR d11658 1 a11659 1 OCAML_USE_FINDLIB d11662 1 a11663 1 OCAML_USE_OASIS d11666 1 a11667 1 OCAML_USE_OPAM d11670 1 a11671 1 OCAML_USE_TOPKG d11674 1 a11675 1 ONLY_FOR_COMPILER d11678 1 a11679 1 OPENSSH_CHROOT d11682 1 a11683 1 OPENSSH_USER d11686 1 a11687 1 OPSYS_EMULDIR d11690 1 a11691 1 OSX d11694 1 a11695 1 OS_HAVE_ALSA d11698 1 a11699 1 OS_VARIANT d11702 1 a11703 1 OTF_FONTS_DIR d11706 1 a11707 1 OVERRIDE_GEMSPEC d11710 1 a11711 1 OVERRIDE_ROCKSPEC d11714 1 a11715 1 OWN_DIRS_PERMS d11718 1 a11719 1 P4PORT d11722 1 a11723 1 P4USER d11726 1 a11727 1 PALMOS_DEFAULT_SDK d11730 1 a11731 1 PAM_DEFAULT d11734 1 a11735 1 PASSIVE_FETCH d11738 1 a11739 1 PATCHFILES d11742 1 d11744 2 d11747 1 a11749 1 PATCH_DIST_ARGS d11751 1 a11753 1 PATCH_DIST_STRIP d11755 1 a11757 1 PATCH_STRIP d11759 1 a11761 1 PCCBASE d11763 1 a11765 1 PEAR_CHANNEL d11767 1 a11769 1 PEAR_CHANNEL_VERSION d11771 1 a11773 1 PEAR_LIB d11775 1 a11777 1 PERL5 d11779 1 a11781 1 PERL5_CONFIGURE_DIRS d11783 1 a11785 1 PERL5_LICENSE d11787 1 a11789 1 PERL5_PACKLIST d11791 1 a11793 1 PERL5_PERLBASE d11795 1 a11797 1 PERL5_USE_PACKLIST d11799 1 a11801 1 PFCTL d11803 1 a11805 1 PF_VERSION d11807 1 a11809 1 PGHOME d11811 1 a11813 1 PGSQL_TYPE d11815 1 a11817 1 PGSQL_VERSION_DEFAULT d11819 1 a11821 1 PG_LIB_EXT d11823 1 a11825 1 PHPCOMMON_MK d11827 1 a11829 1 PHP_BASE_VERS d11831 1 a11833 1 PHP_EXTENSION_DIR d11835 1 a11837 1 PHP_PKG_PREFIX d11839 1 a11841 1 PHP_VERSIONS_ACCEPTED d11843 1 a11845 1 PHP_VERSION_DEFAULT d11847 1 a11849 1 PILRC_USE_GTK d11851 1 a11853 1 PKGCONFIG_FILE d11855 1 a11857 1 PKGCONFIG_OVERRIDE_STAGE d11859 1 a11861 1 PKGGNUDIR d11863 1 a11865 1 PKGLOCALEDIR d11867 1 a11869 1 PKGNAME d11871 1 a11873 1 PKGPATH d11875 1 a11877 1 PKGSRC_BLAS_TYPES d11879 1 a11881 1 PKGSRC_COMPILER d11883 1 a11885 1 PKGSRC_LOCKTYPE d11887 1 a11889 1 PKGSRC_MESSAGE_RECIPIENTS d11891 1 a11893 1 PKGSRC_MKREPRO d11895 1 a11897 1 PKGSRC_SETENV d11899 1 a11901 1 PKGSRC_TODO d11903 1 a11905 1 PKGSRC_USE_FORTIFY d11907 1 a11909 1 PKGSRC_USE_SSP d11911 1 a11913 1 PKGTASKS_DATAFILE d11915 1 a11917 1 PKGTOOLS_ENV d11919 1 a11921 1 PKG_APACHE d11923 1 a11925 1 PKG_APACHE_DEFAULT d11927 1 a11929 1 PKG_BUILD_OPTIONS d11931 1 a11933 1 PKG_CONFIG d11935 1 a11937 1 PKG_CREATE_USERGROUP d11939 1 a11941 1 PKG_DEBUG_LEVEL d11943 1 a11945 1 PKG_DESTDIR_SUPPORT d11947 1 a11949 1 PKG_DISABLED_OPTIONS d11951 1 a11953 1 PKG_FC d11955 1 a11957 1 PKG_GECOS d11959 1 a11961 1 PKG_GROUPS d11963 1 a11965 1 PKG_HOME d11967 1 a11969 1 PKG_JAVA_HOME d11971 1 a11973 1 PKG_JVMS_ACCEPTED d11975 1 a11977 1 PKG_LEGACY_OPTIONS d11979 1 a11981 1 PKG_OPTIONS d11983 1 a11985 1 PKG_OPTIONS_LEGACY_OPTS d11987 1 a11989 1 PKG_OPTIONS_NONEMPTY_SETS d11991 1 a11993 1 PKG_OPTIONS_REQUIRED_GROUPS d11995 1 a11997 1 PKG_PHP d11999 1 a12001 1 PKG_PHP_VERSION d12003 1 a12005 1 PKG_REFCOUNT_DBDIR d12007 1 a12009 1 PKG_RESUME_TRANSFERS d12011 1 a12013 1 PKG_SUGGESTED_OPTIONS d12015 1 a12017 1 PKG_SYSCONFBASE d12019 1 a12021 1 PKG_SYSCONFDIR d12023 1 a12025 1 PKG_SYSCONFSUBDIR d12027 1 a12029 1 PKG_TOOLS_BIN d12031 1 a12033 1 PKG_UPDATE_FONTS_DB d12035 1 a12037 1 PKG_USERS_VARS d12039 1 a12041 1 PLIST d12043 1 a12045 1 PLIST_AWK_ENV d12047 1 a12049 1 PLIST_SUBST d12051 1 a12053 1 PLIST_VARS d12055 1 a12057 1 POST_FETCH_HOOK d12059 1 a12061 1 PREFER_NATIVE d12063 1 a12065 1 PREFER_PKGSRC d12067 1 a12069 1 PREPEND_PATH d12071 1 a12073 1 PRIVILEGED_STAGES d12075 1 a12077 1 PTHREAD_AUTO_VARS d12079 1 a12081 1 PTHREAD_LDFLAGS d12083 1 a12085 1 PTHREAD_OPTS d12087 1 a12089 1 PVM_SSH d12091 1 a12093 1 PYTHON_FOR_BUILD_ONLY d12095 1 a12097 1 PYTHON_VERSIONED_DEPENDENCIES d12099 1 a12101 1 PYTHON_VERSIONS_INCOMPATIBLE d12103 1 a12105 1 PYTHON_VERSION_REQD d12107 1 a12109 1 PY_NO_EGG d12111 1 a12113 1 QMAIL_ALIAS_USER d12115 1 a12117 1 QMAIL_LOG_USER d12119 1 a12121 1 QMAIL_PASSWD_USER d12123 1 a12125 1 QMAIL_QUEUE_DIR d12127 1 a12129 1 QMAIL_QUEUE_USER d12131 1 a12133 1 QMAIL_ROOT_USER d12135 1 a12137 1 QPOPPER_FAC d12139 1 a12141 1 QPOPPER_USER d12143 1 a12145 1 RASMOL_DEPTH d12147 1 a12149 1 RCD_ORDER d12151 1 a12153 1 RCD_SCRIPTS_DIR d12155 1 a12157 1 RCD_SCRIPTS_MODE d12159 1 a12161 1 RCD_SCRIPT_SRC d12163 1 a12165 1 RDOC d12167 1 a12169 1 READLINE_TYPE d12171 1 a12173 1 REAL_ROOT_USER d12175 1 a12177 1 RELAY_CTRL_DIR d12179 1 a12181 1 REPLACE_BASH d12183 1 a12185 1 REPLACE_KSH d12187 1 a12189 1 REPLACE_PERL6 d12191 1 a12193 1 REPLACE_PYTHON d12195 1 a12197 1 REPLACE_RUBY_DIRS d12199 1 a12201 1 REPLACE_SH d12203 1 a12205 1 REQD_DIRS d12207 1 a12209 1 REQD_FILES d12211 1 a12213 1 REQD_FILES_PERMS d12215 1 a12217 1 RESOLV_LDFLAGS d12219 1 a12221 1 RM d12223 1 a12225 1 ROCKSPEC_SPECFILE d12227 1 a12229 1 ROOT_GROUP d12231 1 a12233 1 RPCGEN d12235 1 a12237 1 RPM2PKG_PLIST d12239 1 a12241 1 RPM2PKG_STAGE d12243 1 a12245 1 RPM2PKG_SUBPREFIX d12247 1 a12249 1 RPMIGNOREPATH d12251 1 a12253 1 RSSH_CVS_PATH d12255 1 a12257 1 RSSH_RSYNC_PATH d12259 1 a12261 1 RSSH_SFTP_SERVER_PATH d12263 1 a12265 1 RUBYGEM d12267 1 a12269 1 RUBYGEM_OPTIONS d12271 1 a12273 1 RUBY_ARCH d12275 1 a12277 1 RUBY_ARCHLIB d12279 1 a12281 1 RUBY_BASERIDIR d12283 1 a12285 1 RUBY_DLEXT d12287 1 a12289 1 RUBY_DYNAMIC_DIRS d12291 1 a12293 1 RUBY_ENCODING_ARG d12295 1 a12297 1 RUBY_EXTCONF_CHECK d12299 1 a12301 1 RUBY_EXTCONF_MAKEFILE d12303 1 a12305 1 RUBY_INC d12307 1 a12309 1 RUBY_LIB_BASE d12311 1 a12313 1 RUBY_NOVERSION d12315 1 a12317 1 RUBY_RAILS d12319 1 a12321 1 RUBY_RAILS51_VERSION d12323 1 a12325 1 RUBY_RAILS_ACCEPTED d12327 1 a12329 1 RUBY_RAILS_REQD d12331 1 a12333 1 RUBY_RIDIR d12335 1 a12337 1 RUBY_SHLIB d12339 1 a12341 1 RUBY_SHLIBVER d12343 1 a12345 1 RUBY_SITEARCHLIB d12347 1 a12349 1 RUBY_SITELIB_BASE d12351 1 a12353 1 RUBY_SLEXT d12355 1 a12357 1 RUBY_STATICLIB d12359 1 a12361 1 RUBY_SYSRIDIR d12363 1 a12365 1 RUBY_VENDORARCHLIB d12367 1 a12369 1 RUBY_VENDORLIB_BASE d12371 1 a12373 1 RUBY_VERSION d12375 1 a12377 1 RUBY_VERSION_DEFAULT d12379 1 a12381 1 RUBY_VER_DIR d12383 1 a12385 1 RUN_LDCONFIG d12387 1 a12389 1 SCO d12391 1 a12393 1 SCREWS_USER d12395 1 a12397 1 SCROLLKEEPER_DATADIR d12399 1 a12401 1 SCROLLKEEPER_UPDATEDB d12403 1 a12405 1 SERIAL_DEVICES d12407 1 a12409 1 SETGID_GAMES_PERMS d12411 1 a12413 1 SH d12415 1 a12417 1 SHORTNAME d12419 1 a12421 1 SILC_CLIENT_WITH_PERL d12423 1 a12425 1 SKIP_DEPENDS d12427 1 a12429 1 SMF_MANIFEST d12431 1 a12433 1 SMF_METHOD_SHELL d12435 1 a12437 1 SMF_NAME d12439 1 a12441 1 SMF_SRCDIR d12443 1 a12445 1 SNIPROXY_USER d12447 1 a12449 1 SPECIAL_PERMS d12451 1 a12453 1 SSH_SUID d12455 1 a12457 1 SSYNC_PAWD d12459 1 a12461 1 STRIP d12463 1 a12465 1 STRIP_DEBUG d12467 1 a12469 1 STRIP_FILES_SKIP d12471 1 a12473 1 SUBDIR d12475 1 a12477 1 SUBST_FILES d12479 1 a12481 1 SUBST_MESSAGE d12483 1 a12485 1 SUBST_SHOW_DIFF d12487 1 a12489 1 SUBST_STAGE d12491 1 a12493 1 SUNWSPROBASE d12495 1 a12497 1 SU_CMD d12499 1 a12501 1 SVN_REPO d12503 1 a12505 1 SVN_REVISION d12507 1 a12509 1 TERMINFO_DEFAULT d12511 1 a12513 1 TEST d12515 1 a12517 1 TEST_DIRS d12519 1 a12521 1 TEST_MAKE_CMD d12523 1 a12525 1 TEST_TARGET d12527 1 a12529 1 TEXLIVE_REV d12531 1 a12533 1 TEXMFSITE d12535 1 a12537 1 TEX_HYPHEN_DAT d12539 1 a12541 1 TEX_TEXMF_DIRS d12543 1 a12545 1 TO d12547 1 a12549 1 TOOLS_ARGS d12551 1 a12553 1 TOOLS_CMD d12555 1 a12557 1 TOOLS_DIR d12559 1 a12561 1 TOOLS_GNU_MISSING d12563 1 a12565 1 TOOLS_NOOP d12567 1 a12569 1 TOOLS_SCRIPT d12571 1 a12573 1 TTF_FONTDIR d12575 1 a12577 1 TYPE d12579 1 a12581 1 UCSPI_SSL_GROUP d12583 1 a12585 1 UNLIMIT_RESOURCES d12587 1 a12589 1 UNPRIVILEGED_GROUP d12591 1 a12593 1 UNPRIVILEGED_USER d12595 1 a12597 1 UNWRAP_PATTERNS d12599 1 a12601 1 UPDATE_TARGET d12603 1 a12605 1 USA d12607 1 a12609 1 USERPPP_GROUP d12611 1 a12613 1 USE_ABI_DEPENDS d12615 1 a12617 1 USE_BSD_MAKEFILE d12619 1 a12621 1 USE_CROSS_COMPILE d12623 1 a12625 1 USE_CWRAPPERS d12627 1 a12629 1 USE_FEATURES d12631 1 a12633 1 USE_GCC_RUNTIME d12635 1 a12637 1 USE_JAVA d12639 1 a12641 1 USE_LANGUAGES d12643 1 a12645 1 USE_NATIVE_GCC d12647 1 a12649 1 USE_PKGSRC_GCC d12651 1 d12654 1 a12654 1 USE_PKGTASKS @ 1.282 log @doc/pkgsrc.*: regen @ text @d9033 1 a9033 1
    d9078 1 a9078 1

    24.1.

    d9094 1 a9094 1

    24.2.

    d9112 1 a9112 1

    24.3.

    d9130 1 a9130 1

    24.4.

    d9143 1 a9143 1

    24.5.

    d9159 1 a9159 1

    24.6.

    d9183 1 a9183 1

    24.7.

    d9208 1 a9208 1

    24.8.

    d9256 1 a9256 1

    24.9.

    d9934 1 a9934 1 regress category.

    d9939 2 a9940 2

    Every directory in the regress category that contains a file called spec d9950 1 a9950 1 first failing command. See this StackOverflow d9984 1 d9997 2 @ 1.281 log @doc/pkgsrc.*: regen @ text @d980 1 a980 1 2019Q3.

    d1006 2 a1007 2

    The tar file for the stable branch 2019Q3 is in the directory pkgsrc-2019Q3 and is also called pkgsrc.tar.gz.

    d1010 1 a1010 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2019Q3/pkgsrc.tar.gz d1025 1 a1025 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2019Q3 -P pkgsrc
    d1110 1
    a1110 1
    	-rpkgsrc-2019Q3 option.

    d1355 1 a1355 1 to the root users crontab(5) entry. For example the entry d1384 1 a1384 1 see daily.conf(5) and security.conf(5) for more details. d1575 1 a1575 1

    If you invoke the make(1) command with d1583 1 a1583 1

    If you want to know the value of a certain make(1) d1586 1 a1586 1 target. e.g. to show the expansion of the make(1) d1599 1 a1599 1 install a binary package - if available - via pkg_add(1), d1603 1 a1603 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1642 1 a1642 1 make(1) from the base system, it is in the directory d1784 1 a1784 1 privileges using su(1) d2025 1 a2025 1 another system with pkg_add(1). This saves having to build d2616 1 a2616 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2668 1 a2668 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2742 1 a2742 1 scripts and to make(1). Some package authors ignore the d3635 1 a3635 1 an argument to patch(1) that sets the pathname strip count to d3645 1 a3645 1 this package which have been reported with send-pr(1). d3998 1 a3998 1

    This shell script is invoked twice by pkg_add(1). d4003 2 a4004 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 17.1, “Files and directories outside the installation prefix”. d4024 2 a4025 2 See pkg_delete(1) and pkg_create(1) for more information. d4164 1 a4164 1 the make(1) system as a programming language for a big system d4170 1 a4170 1 like awk(1) programs. To make sure that every shell command runs d4184 1 a4184 1 make(1) for the second time, the file exists and will not be d4202 1 a4202 1

    You might remember that make(1) sometimes removes d4206 1 a4206 1 when one of the commands fails (like false(1) above).

    d4215 1 a4215 1 !=, which are described in the make(1) man d4233 1 a4233 1 interpreted as delimiters, just like in sh(1).

    d4290 1 a4290 1

    Example 3 can handle arbitrary strings, since printf(1) only d4294 1 a4294 1 skipped by the shell. For printf(1) this doesn't make a difference, d4338 1 a4338 1 ${EGFILES} is replaced with an empty string by make(1). d4387 1 a4387 1 - see the pkg_create(1) man page for a full list. d4531 1 a4531 1 The files are later concatenated using cat(1), and the order of things is d5617 1 a5617 1 make(1) variable that the user can set to override the default d5835 1 a5835 1 install files according to hier(7), with the exception that d6153 1 a6153 1 patch(1) can be handed in d6155 1 a6155 1

    By default patch(1) is given special args to make d6334 1 a6334 1 install(1) command that have the owner, group and d6380 1 a6380 1

    If set to yes, do not run strip(1) d6457 1 a6457 1

    This target does a pkg_delete(1) in the d6463 1 a6463 1

    Add a "-v" to the pkg_delete(1) command.

    d6472 1 a6472 1 -R to the pkg_delete(1) d6624 1 a6624 1

    This target invokes pkg_info(1) for the current d6740 1 a6740 1

    If the package installs files via tar(1) or d6767 1 a6767 1 it will be installed via pkg_add(1). If not, d6772 1 a6772 1 pkg_add(1) if:

    d6957 1 a6957 1 make(1) (for example .if or d7207 1 a7207 1 pkg_info(1).

    d7308 1 a7308 1

    pkg_add(1) is able to detect attempts to install packages d7319 1 a7319 1 exported in pkg_summary(5) files and consumed by binary package d7370 1 a7370 1 not be deleted using pkg_delete(1) unless the d7503 1 a7503 1 sed(1) that specify the actual substitution. Every sed d7702 1 a7702 1 files, i.e. files that are loaded via dlopen(3), NOT d7712 1 a7712 1 the cc(1) or ld(1) line with ${LIBTOOL} d7729 2 a7730 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7738 1 a7738 1 ldconfig(8).

    d8791 1 a8791 1 document. Next, generate an uuencoded gzipped tar(1) d8794 1 a8794 1 either with the send-pr(1) command, or if you don't have d8958 4 a8961 3

    Also When renaming a package, please define SUPERSEDES to the package name and dewey version pattern(s) of the previous package name. d8964 1 d8966 4 d8997 1 a8997 1 search the pkg_summary(5) database for PREV_PKGPATH d9033 1 a9033 1

    d9078 1 a9078 1

    24.1.

    d9087 1 a9087 1 to the pkgsrc-internal invocations of make(1), while d9094 1 a9094 1

    24.2.

    d9103 1 a9103 1 make(1) program that is used in the pkgsrc d9112 1 a9112 1

    24.3.

    d9130 1 a9130 1

    24.4.

    d9143 1 a9143 1

    24.5.

    d9159 1 a9159 1

    24.6.

    d9172 1 a9172 1 which is documented in the make(1) man page and which is d9183 1 a9183 1

    24.7.

    d9201 1 a9201 1 send-pr(1) appear here. Please do not report your bugs here d9208 1 a9208 1

    24.8.

    d9256 1 a9256 1

    24.9.

    d10117 1 a10117 1 improvements. Why you would want this when Berkeley yacc(1) is part @ 1.280 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.35 2019/04/28 15:22:24 rillig Exp $

    d9027 1 a9027 1
    d9072 1 a9072 1

    24.1.

    d9088 1 a9088 1

    24.2.

    d9106 1 a9106 1

    24.3.

    d9124 1 a9124 1

    24.4.

    d9137 1 a9137 1

    24.5.

    d9153 1 a9153 1

    24.6.

    d9177 1 a9177 1

    24.7.

    d9202 1 a9202 1

    24.8.

    d9250 1 a9250 1

    24.9.

    d12164 3 d12168 1 a12170 1 REPLACE_RUBY d12172 1 a12174 1 REPLACE_RUBY_PAT d12176 1 a12178 1 REPLACE_TEXLUA d12180 1 a12182 1 REQD_DIRS_PERMS d12184 1 a12186 1 REQD_FILES_MODE d12188 1 a12190 1 RESOLV_AUTO_VARS d12192 1 a12194 1 RESOLV_LIBS d12196 1 a12198 1 ROCKSPEC_NAME d12200 1 a12202 1 ROOT_CMD d12204 1 a12206 1 ROOT_USER d12208 1 a12210 1 RPM d12212 1 a12214 1 RPM2PKG_PREFIX d12216 1 a12218 1 RPM2PKG_STRIP d12220 1 a12222 1 RPMFILES d12224 1 a12226 1 RPM_DB_PREFIX d12228 1 a12230 1 RSSH_RDIST_PATH d12232 1 a12234 1 RSSH_SCP_PATH d12236 1 a12238 1 RUBY d12240 1 a12242 1 RUBYGEM_NAME d12244 1 a12246 1 RUBY_ABI_VERSION d12248 1 a12250 1 RUBY_ARCHINC d12252 1 a12254 1 RUBY_BASE d12256 1 a12258 1 RUBY_BUILD_DOCUMENT d12260 1 a12262 1 RUBY_DOC d12264 1 a12266 1 RUBY_EG d12268 1 a12270 1 RUBY_EXTCONF d12272 1 a12274 1 RUBY_EXTCONF_DEBUG d12276 1 a12278 1 RUBY_GEM_BASE d12280 1 a12282 1 RUBY_LIB d12284 1 a12286 1 RUBY_NAME d12288 1 a12290 1 RUBY_PKGPREFIX d12292 1 a12294 1 RUBY_RAILS42_VERSION d12296 1 a12298 1 RUBY_RAILS52_VERSION d12300 1 a12302 1 RUBY_RAILS_DEFAULT d12304 1 a12306 1 RUBY_RAILS_STRICT_DEP d12308 1 a12310 1 RUBY_SETUP d12312 1 a12314 1 RUBY_SHLIBALIAS d12316 1 a12318 1 RUBY_SIMPLE_INSTALL d12320 1 a12322 1 RUBY_SITELIB d12324 1 a12326 1 RUBY_SITERIDIR d12328 1 a12330 1 RUBY_SRCDIR d12332 1 a12334 1 RUBY_SUFFIX d12336 1 a12338 1 RUBY_USE_PTHREAD d12340 1 a12342 1 RUBY_VENDORLIB d12344 1 a12346 1 RUBY_VER d12348 1 a12350 1 RUBY_VERSIONS_ACCEPTED d12352 1 a12354 1 RUBY_VERSION_REQD d12356 1 a12358 1 RUN d12360 1 a12362 1 SAWFISH_THEMES d12364 1 a12366 1 SCREWS_GROUP d12368 1 a12370 1 SCRIPTS_ENV d12372 1 a12374 1 SCROLLKEEPER_REBUILDDB d12376 1 a12378 1 SDIST_PAWD d12380 1 a12382 1 SETGIDGAME d12384 1 a12386 1 SETUID_ROOT_PERMS d12388 1 a12390 1 SHLIB d12392 1 a12394 1 SIGN_PACKAGES d12396 1 a12398 1 SITE_SPECIFIC_PKGS d12400 1 a12402 1 SMF_INSTANCES d12404 1 a12406 1 SMF_METHODS d12408 1 a12410 1 SMF_METHOD_SRC d12412 1 a12414 1 SMF_PREFIX d12416 1 a12418 1 SNIPROXY_GROUP d12420 1 a12422 1 SOURCE_BUFFSIZE d12424 1 a12426 1 SPECIFIC_PKGS d12428 1 d12504 1 a12504 1 TEXMFSITE d12507 1 a12508 1 TEX_HYPHEN_DAT d12511 1 a12512 1 TEX_TEXMF_DIRS d12515 1 a12516 1 TO d12519 1 a12520 1 TOOLS_ARGS d12523 1 a12524 1 TOOLS_CMD d12527 1 a12528 1 TOOLS_DIR d12531 1 a12532 1 TOOLS_GNU_MISSING d12535 1 a12536 1 TOOLS_NOOP d12539 1 a12540 1 TOOLS_SCRIPT d12543 1 a12544 1 TTF_FONTDIR d12547 1 a12548 1 TYPE d12551 1 a12552 1 UCSPI_SSL_GROUP d12555 1 a12556 1 UNLIMIT_RESOURCES d12559 1 a12560 1 UNPRIVILEGED_GROUP d12563 1 a12564 1 UNPRIVILEGED_USER d12567 1 a12568 1 UNWRAP_PATTERNS d12571 1 a12572 1 UPDATE_TARGET d12575 1 a12576 1 USA d12579 1 a12580 1 USERPPP_GROUP d12583 1 a12584 1 USE_ABI_DEPENDS d12587 1 a12588 1 USE_BSD_MAKEFILE d12591 1 a12592 1 USE_CROSS_COMPILE d12595 1 a12596 1 USE_CWRAPPERS d12599 1 a12600 1 USE_FEATURES d12603 1 a12604 1 USE_GCC_RUNTIME d12607 1 a12608 1 USE_JAVA d12611 1 a12612 1 USE_LANGUAGES d12615 1 a12616 1 USE_NATIVE_GCC d12619 1 a12620 1 USE_PKGSRC_GCC d12623 1 a12624 1 USE_PKGTASKS d12627 1 a12628 1 USE_RUBY_INSTALL d12631 1 a12632 1 USE_RUBY_SETUP_PKG d12635 1 a12636 1 UUCP_GROUP d12639 1 a12640 1 VARBASE d12643 1 a12644 1 VIM_EXTRA_OPTS d12647 1 a12648 1 WCALC_CGIDIR d12651 1 a12652 1 WCALC_HTMLDIR d12655 1 a12656 1 WDM_MANAGERS d12659 1 a12660 1 WRKDIR d12663 1 a12664 1 WRKDIR_LOCKTYPE d12667 1 a12668 1 WRKOBJDIR d12671 1 a12672 1 WXGTK_ACCEPTED d12675 1 a12676 1 X10_PORT d12679 1 a12680 1 X11BASE d12683 1 a12684 1 X11_TYPE d12687 1 a12688 1 X509_KEY d12691 1 a12692 1 XLOCK_DEFAULT_MODE d12695 1 a12696 1 XXX d12699 1 a12700 1 YES d12703 1 a12704 1 ZSH_STATIC d12707 1 a12708 1 _vargroups d12711 1 a12712 1 all d12715 1 a12716 1 aslr d12719 1 a12720 1 atlas d12723 1 a12724 1 automake d12727 1 a12728 1 awk d12731 1 a12732 1 big-endian d12735 1 a12736 1 binpkg-list d12739 1 a12740 1 bootstrap-depends d12743 1 a12744 1 broken_on_platform d12747 1 a12748 1 build-env d12751 1 a12752 1 buildlink-oss-soundcard-h d12755 1 a12756 1 c++ d12759 1 a12760 1 cce d12763 1 a12764 1 changes d12767 1 a12768 1 changes-entry-noupdate d12771 1 a12772 1 check-clean d12775 1 a12776 1 check-files-clean d12779 1 a12780 1 checksum d12783 1 a12784 1 clean d12787 1 a12788 1 cleandir d12791 1 a12792 1 commit-changes-entry d12795 1 a12796 1 compiler d12799 1 a12800 1 config.guess d12803 1 a12804 1 configuration d12807 1 a12808 1 configure-help d12811 1 a12812 1 cputime d12815 1 a12816 1 csh d12819 1 a12820 1 cvs d12823 1 a12824 1 declaration d12827 1 a12828 1 defined d12831 1 a12832 1 dependencies d12835 1 a12836 1 depends-checksum d12839 1 a12840 1 deps d12843 1 a12844 1 destdir d12847 1 a12848 1 distclean d12851 1 a12852 1 dl d12855 1 a12856 1 do-build d12859 1 a12860 1 do-clean d12863 1 a12864 1 do-extract d12867 1 a12868 1 do-install d12871 1 a12872 1 emulation d12875 1 a12876 1 enable d12879 1 a12880 1 enomem d12883 1 a12884 1 errx d12887 1 a12888 1 feature d12891 1 a12892 1 fetch d12895 1 a12896 1 follows d12899 1 a12900 1 form d12903 1 a12904 1 fortify d12907 1 a12908 1 fossil d12911 1 a12912 1 from d12915 1 a12916 1 fts_close d12919 1 a12920 1 fts_read d12923 1 a12924 1 full d12927 1 a12928 1 getopt_long d12931 1 a12932 1 gettext d12935 1 a12936 1 github d12939 1 a12940 1 gnu d12943 1 a12944 1 go d12947 1 a12948 1 golang d12951 1 a12952 1 hashbang d12955 1 a12956 1 help d12959 1 a12960 1 imake d12963 1 a12964 1 interp d12967 1 a12968 1 intl d12971 1 a12972 1 kerberos d12975 1 a12976 1 krb5 d12979 1 a12980 1 lapack d12983 1 a12984 1 libnbcompat d12987 1 a12988 1 libtool d12991 1 a12992 1 license d12995 1 a12996 1 little-endian d12999 1 a13000 1 locking d13003 1 a13004 1 make d13007 1 a13008 1 memory d13011 1 a13012 1 meta d13015 1 a13016 1 meta_package d13019 1 a13020 1 mk.conf d13023 1 a13024 1 mount d13027 1 a13028 1 mremap d13031 1 a13032 1 nbcompat d13035 1 a13036 1 obstack d13039 1 a13040 1 occurs d13043 1 a13044 1 openblas d13047 1 a13048 1 options.mk d13051 1 a13052 1 override d13055 1 a13056 1 override-message-intltool d13059 1 a13060 1 parallel d13063 1 a13064 1 path d13067 1 a13068 1 paxctl d13071 1 a13072 1 pc d13075 1 a13076 1 perl5 d13079 1 a13080 1 php d13083 1 a13084 1 pkg-config d13087 1 a13088 1 platform d13091 1 a13092 1 post-extract d13095 1 a13096 1 post-wrapper d13099 1 a13100 1 pre-extract d13103 1 a13104 1 print-go-deps d13107 1 a13108 1 print-summary-data d13111 1 a13112 1 pypi d13115 1 a13116 1 readme-all d13119 1 a13120 1 relro d13123 1 a13124 1 reorder d13127 1 a13128 1 replace_interpreter d13131 1 a13132 1 resolv d13135 1 a13136 1 ruby d13139 1 a13140 1 setgid d13143 1 a13144 1 setuid d13147 1 a13148 1 show d13151 1 a13152 1 show-build-defs d13155 1 a13156 1 show-deps d13159 1 a13160 1 show-downlevel d13163 1 a13164 1 show-tools d13167 1 a13168 1 show-vars d13171 1 a13172 1 ssp d13175 1 a13176 1 stage-install d13179 1 a13180 1 strip d13183 1 a13184 1 strong d13187 1 a13188 1 subversion d13191 1 a13192 1 sunpro d13195 1 a13196 1 svn d13199 1 a13200 1 test d13203 1 a13204 1 texlive d13207 1 a13208 1 tool d13211 1 a13212 1 tools-libtool-m4-override d13215 1 a13216 1 ulimit d13219 1 a13220 1 undo-replace d13223 1 a13224 1 unprivileged d13227 1 a13228 1 unstripped d13231 1 a13232 1 upload d13235 1 a13236 1 usage d13239 1 a13240 1 user d13243 1 a13244 1 vasprintf d13247 1 a13248 1 vsnprintf d13251 1 a13252 1 warning d13255 1 a13256 1 warnx d13259 1 a13260 1 work d13263 1 a13264 1 wrkdir d13267 1 a13268 1   @ 1.279 log @doc/pkgsrc.*: regen @ text @d1331 1 a1331 1 FTP site at http://ftp.netbsd.org/pub/NetBSD/packages/vulns/pkg-vulnerabilities. d9027 1 a9027 1
    d9072 1 a9072 1

    24.1.

    d9088 1 a9088 1

    24.2.

    d9106 1 a9106 1

    24.3.

    d9124 1 a9124 1

    24.4.

    d9137 1 a9137 1

    24.5.

    d9153 1 a9153 1

    24.6.

    d9177 1 a9177 1

    24.7.

    d9202 1 a9202 1

    24.8.

    d9250 1 a9250 1

    24.9.

    @ 1.278 log @doc/pkgsrc.*: regen @ text @d1328 1 a1328 1 The NetBSD Security-Officer and Packages Groups maintain a list of d1331 1 a1331 1 FTP site at http://ftp.NetBSD.org/pub/pkgsrc/distfiles/vulnerabilities. d9027 1 a9027 1
    d9072 1 a9072 1

    24.1.

    d9088 1 a9088 1

    24.2.

    d9106 1 a9106 1

    24.3.

    d9124 1 a9124 1

    24.4.

    d9137 1 a9137 1

    24.5.

    d9153 1 a9153 1

    24.6.

    d9177 1 a9177 1

    24.7.

    d9202 1 a9202 1

    24.8.

    d9250 1 a9250 1

    24.9.

    @ 1.277 log @doc/pkgsrc.*: regen @ text @d922 12 d3056 12 d9027 1 a9027 1
    d9072 1 a9072 1

    24.1.

    d9088 1 a9088 1

    24.2.

    d9106 1 a9106 1

    24.3.

    d9124 1 a9124 1

    24.4.

    d9137 1 a9137 1

    24.5.

    d9153 1 a9153 1

    24.6.

    d9177 1 a9177 1

    24.7.

    d9202 1 a9202 1

    24.8.

    d9250 1 a9250 1

    24.9.

    @ 1.276 log @doc/pkgsrc.*: regen @ text @d8645 1 a8645 1 RESTRICTED variable). A user trying to build d9003 1 a9003 1
    d9048 1 a9048 1

    24.1.

    d9064 1 a9064 1

    24.2.

    d9082 1 a9082 1

    24.3.

    d9100 1 a9100 1

    24.4.

    d9113 1 a9113 1

    24.5.

    d9129 1 a9129 1

    24.6.

    d9153 1 a9153 1

    24.7.

    d9178 1 a9178 1

    24.8.

    d9226 1 a9226 1

    24.9.

    d12231 2 a12232 2 RUBY_BUILD_RDOC RUBY_BUILD_RI a12234 1 RUBY_DLEXT d12236 1 a12238 1 RUBY_DYNAMIC_DIRS d12240 1 a12242 1 RUBY_ENCODING_ARG d12244 1 a12246 1 RUBY_EXTCONF_CHECK d12248 1 a12250 1 RUBY_EXTCONF_MAKEFILE d12252 1 a12254 1 RUBY_INC d12256 1 a12258 1 RUBY_LIB_BASE d12260 1 a12262 1 RUBY_NOVERSION d12264 1 a12266 1 RUBY_RAILS d12268 1 a12270 1 RUBY_RAILS51_VERSION d12272 1 a12274 1 RUBY_RAILS_ACCEPTED d12276 1 a12278 1 RUBY_RAILS_REQD d12280 1 a12282 1 RUBY_RIDIR d12284 1 a12286 1 RUBY_SHLIB d12288 1 a12290 1 RUBY_SHLIBVER d12292 1 a12294 1 RUBY_SITEARCHLIB d12296 1 a12298 1 RUBY_SITELIB_BASE d12300 1 a12302 1 RUBY_SLEXT d12304 1 a12306 1 RUBY_STATICLIB d12308 1 a12310 1 RUBY_SYSRIDIR d12312 1 a12314 1 RUBY_VENDORARCHLIB d12316 1 a12318 1 RUBY_VENDORLIB_BASE d12320 1 a12322 1 RUBY_VERSION d12324 1 a12326 1 RUBY_VERSION_DEFAULT d12328 1 a12330 1 RUBY_VER_DIR d12332 1 a12334 1 RUN_LDCONFIG d12336 1 a12338 1 SCO d12340 1 a12342 1 SCREWS_USER d12344 1 a12346 1 SCROLLKEEPER_DATADIR d12348 1 a12350 1 SCROLLKEEPER_UPDATEDB d12352 1 a12354 1 SERIAL_DEVICES d12356 1 a12358 1 SETGID_GAMES_PERMS d12360 1 a12362 1 SH d12364 1 a12366 1 SHORTNAME d12368 1 a12370 1 SILC_CLIENT_WITH_PERL a12371 2 a12372 1 SKIP_PORTABILITY_CHECK d12819 1 d12821 2 d12824 1 a12826 1 dl d12828 1 a12830 1 do-build d12832 1 a12834 1 do-clean d12836 1 a12838 1 do-extract d12840 1 a12842 1 do-install d12844 1 a12846 1 emulation d12848 1 d13151 1 d13153 2 d13156 1 a13158 1 strong d13160 1 a13162 1 subversion d13164 1 a13166 1 sunpro d13168 1 a13170 1 svn d13172 1 a13174 1 test d13176 1 a13178 1 texlive d13180 1 a13182 1 tool d13184 1 a13186 1 tools-libtool-m4-override d13188 1 a13190 1 ulimit d13192 1 a13194 1 undo-replace d13196 1 a13198 1 unprivileged d13200 1 a13202 1 unstripped d13204 1 a13206 1 upload d13208 1 a13210 1 usage d13212 1 a13214 1 user d13216 1 a13218 1 vasprintf d13220 1 a13222 1 vsnprintf d13224 1 a13226 1 warning d13228 1 a13230 1 warnx d13232 1 a13234 1 work d13236 1 a13238 1 wrkdir d13240 1 @ 1.275 log @doc/pkgsrc.*: regen @ text @d968 1 a968 1 2019Q2.

    d994 2 a995 2

    The tar file for the stable branch 2019Q2 is in the directory pkgsrc-2019Q2 and is also called pkgsrc.tar.gz.

    d998 1 a998 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2019Q2/pkgsrc.tar.gz
    d1013 1 a1013 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2019Q2 -P pkgsrc
    d1098 1
    a1098 1
    	-rpkgsrc-2019Q2 option.

    d3099 2 a3100 1 created first. The buildlink3.mk file makes sure that the package's include files and libraries are provided.

    d9003 1 a9003 1
    d9048 1 a9048 1

    24.1.

    d9064 1 a9064 1

    24.2.

    d9082 1 a9082 1

    24.3.

    d9100 1 a9100 1

    24.4.

    d9113 1 a9113 1

    24.5.

    d9129 1 a9129 1

    24.6.

    d9153 1 a9153 1

    24.7.

    d9178 1 a9178 1

    24.8.

    d9226 1 a9226 1

    24.9.

    d11187 1 d11189 2 d11192 1 a11194 1 GRUB_PRESET_COMMAND d11196 1 a11198 1 GZIP d11200 1 a11202 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11204 1 a11206 1 HASKELL_ENABLE_SHARED_LIBRARY d11208 1 a11210 1 HEADER_TEMPLATES d11212 1 a11214 1 HG_REPOSITORIES d11216 1 a11218 1 HOST_PKGTOOLS_ARGS d11220 1 a11222 1 HOWL_GROUP d11224 1 a11226 1 ICCBASE d11228 1 a11230 1 ICON_THEMES d11232 1 a11234 1 IGNORE_CCACHE d11236 1 a11238 1 IGNORE_INTERACTIVE_FETCH d11240 1 a11242 1 IMAKEOPTS d11244 1 a11246 1 IMAKE_MANINSTALL d11248 1 a11250 1 IMDICTDIR d11252 1 a11254 1 INFO_DIR d11256 1 a11258 1 INFO_FILES_VERBOSE d11260 1 a11262 1 INIT_SYSTEM d11264 1 a11266 1 INN_GROUP d11268 1 a11270 1 INSTALLATION_DIRS d11272 1 a11274 1 INSTALL_ENV d11276 1 a11278 1 INSTALL_SRC d11280 1 a11282 1 INSTALL_UNSTRIPPED d11284 1 a11286 1 IRCD_HYBRID_IRC_USER d11288 1 a11290 1 IRCD_HYBRID_NICLEN d11292 1 a11294 1 IRCD_HYBRID_SYSLOG_FACILITY d11296 1 a11298 1 IRIX d11300 1 a11302 1 JABBERD_GROUP d11304 1 a11306 1 JABBERD_PIDDIR d11308 1 a11310 1 JABBERD_USER d11312 1 a11314 1 JAVA_APP_PATH d11316 1 a11318 1 JAVA_BINPREFIX d11320 1 a11322 1 JAVA_HOME d11324 1 a11326 1 JAVA_NAME d11328 1 a11330 1 JAVA_WRAPPERS d11332 1 a11334 1 JPEG_DEFAULT d11336 1 a11338 1 KERMIT_SUID_UUCP d11340 1 a11342 1 KNEWS_DOMAIN_FILE d11344 1 a11346 1 KRB5_ACCEPTED d11348 1 a11350 1 LANGUAGES d11352 1 a11354 1 LATEX2HTML_ICONPATH d11356 1 a11358 1 LDCONFIG_REMOVE_CMD d11360 1 a11362 1 LEAFNODE_GROUP d11364 1 a11366 1 LIBDVDCSS_HOMEPAGE d11368 1 a11370 1 LIBRSVG_TYPE d11372 1 a11374 1 LIBTOOLIZE_PLIST d11376 1 a11378 1 LIBUSB_TYPE d11380 1 a11382 1 LINKER_RPATH_FLAG d11384 1 a11386 1 LINUX_BASE_NODEPS d11388 1 a11390 1 LINUX_BASE_REQUIRED d11392 1 a11394 1 LOCALBASE d11396 1 a11398 1 LOCALPATCHES d11400 1 a11402 1 LOVE_GAME d11404 1 a11406 1 LP64PLATFORMS d11408 1 a11410 1 MAILAGENT_DOMAIN d11412 1 a11414 1 MAILAGENT_FQDN d11416 1 a11418 1 MAJORDOMO_HOMEDIR d11420 1 a11422 1 MAKEINFO_ARGS d11424 1 a11426 1 MAKE_DIRS_PERMS d11428 1 a11430 1 MAKE_FILE d11432 1 a11434 1 MAKE_JOBS d11436 1 a11438 1 MAKE_PROGRAM d11440 1 a11442 1 MANZ d11444 1 a11446 1 MASTER_SITE_BACKUP d11448 1 a11450 1 MASTER_SITE_GNOME d11452 1 a11454 1 MASTER_SITE_LOCAL d11456 1 a11458 1 MASTER_SITE_OPENOFFICE d11460 1 a11462 1 MASTER_SITE_PERL_CPAN d11464 1 a11466 1 MASTER_SITE_SUSE d11468 1 a11470 1 MASTER_SITE_XCONTRIB d11472 1 a11474 1 MASTER_SORT d11476 1 a11478 1 MASTER_SORT_REGEX d11480 1 a11482 1 MEDIATOMB_GROUP d11484 1 a11486 1 MIPSPROBASE d11488 1 a11490 1 MIREDO_USER d11492 1 a11494 1 MKDIR d11496 1 a11498 1 MLDONKEY_HOME d11500 1 a11502 1 MONOTONE_GROUP d11504 1 a11506 1 MOTIFBASE d11508 1 a11510 1 MOTIF_TYPE_DEFAULT d11512 1 a11514 1 MSGFMT_STRIP_MSGCTXT d11516 1 a11518 1 MTOOLS_ENABLE_FLOPPYD d11520 1 a11522 1 MV d11524 1 a11526 1 MYSQL_DATADIR d11528 1 a11530 1 MYSQL_GROUP d11532 1 a11534 1 MYSQL_USER d11536 1 a11538 1 MYSQL_VERSION_DEFAULT d11540 1 a11542 1 NAGIOSDIR d11544 1 a11546 1 NAGIOS_USER d11548 1 a11550 1 NATIVE_APPEND_ELF d11552 1 a11554 1 NATIVE_MACHINE_PLATFORM d11556 1 a11558 1 NBPAX_PROGRAM_PREFIX d11560 1 a11562 1 NMH_EDITOR d11564 1 a11566 1 NMH_PAGER d11568 1 a11570 1 NONZERO_FILESIZE_P d11572 1 a11574 1 NOT_FOR_PLATFORM d11576 1 a11578 1 NOT_PAX_MPROTECT_SAFE d11580 1 a11582 1 NO_CHECKSUM d11584 1 a11586 1 NO_SKIP d11588 1 a11590 1 NULLMAILER_GROUP d11592 1 a11594 1 OASIS d11596 1 a11598 1 OBJHOSTNAME d11600 1 a11602 1 OCAML_FINDLIB_DIRS d11604 1 a11606 1 OCAML_FINDLIB_REGISTER_VERBOSE d11608 1 a11610 1 OCAML_TOPKG_DOCDIR d11612 1 a11614 1 OCAML_USE_FINDLIB d11616 1 a11618 1 OCAML_USE_OASIS d11620 1 a11622 1 OCAML_USE_OPAM d11624 1 a11626 1 OCAML_USE_TOPKG d11628 1 a11630 1 ONLY_FOR_COMPILER d11632 1 a11634 1 OPENSSH_CHROOT d11636 1 a11638 1 OPENSSH_USER d11640 1 a11642 1 OPSYS_EMULDIR d11644 1 a11646 1 OSX d11648 1 a11650 1 OS_HAVE_ALSA d11652 1 a11654 1 OS_VARIANT d11656 1 a11658 1 OTF_FONTS_DIR d11660 1 a11662 1 OVERRIDE_GEMSPEC d11664 1 a11666 1 OVERRIDE_ROCKSPEC d11668 1 a11670 1 OWN_DIRS_PERMS d11672 1 a11674 1 P4PORT d11676 1 a11678 1 P4USER d11680 1 a11682 1 PALMOS_DEFAULT_SDK d11684 1 a11686 1 PAM_DEFAULT d11688 1 a11690 1 PASSIVE_FETCH d11692 1 a11694 1 PATCHFILES d11696 1 a11698 1 PATCH_DEBUG d11700 1 a11702 1 PATCH_DIST_CAT d11704 1 a11706 1 PATCH_FUZZ_FACTOR d11708 1 a11710 1 PATH d11712 1 a11714 1 PEAR d11716 1 a11718 1 PEAR_CHANNEL_ALIAS d11720 1 a11722 1 PEAR_CMD d11724 1 a11726 1 PEAR_PACKAGE_XML d11728 1 a11730 1 PERL5_CONFIGURE d11732 1 a11734 1 PERL5_LDFLAGS d11736 1 a11738 1 PERL5_MODULE_TYPE d11740 1 a11742 1 PERL5_PACKLIST_DIR d11744 1 a11746 1 PERL5_SITEBASE d11748 1 a11750 1 PERL5_VENDORBASE d11752 1 a11754 1 PFVAR_H d11756 1 a11758 1 PGGROUP d11760 1 a11762 1 PGPKGSRCDIR d11764 1 a11766 1 PGSQL_VERSIONS_ACCEPTED d11768 1 a11770 1 PGUSER d11772 1 a11774 1 PHP d11776 1 a11778 1 PHPPKGSRCDIR d11780 1 a11782 1 PHP_CHECK_INSTALLED d11784 1 a11786 1 PHP_INITIAL_TEENY d11788 1 a11790 1 PHP_VERSION d11792 1 a11794 1 PHP_VERSIONS_INCOMPATIBLE d11796 1 a11798 1 PHP_VERSION_REQD d11800 1 a11802 1 PKGCONFIG_BASE d11804 1 a11806 1 PKGCONFIG_OVERRIDE d11808 1 a11810 1 PKGDIR d11812 1 a11814 1 PKGINFODIR d11816 1 a11818 1 PKGMANDIR d11820 1 a11822 1 PKGNAME_REQD d11824 1 a11826 1 PKGREVISION d11828 1 a11830 1 PKGSRC_CHANGES d11832 1 a11834 1 PKGSRC_KEEP_BIN_PKGS d11836 1 a11838 1 PKGSRC_MAKE_ENV d11840 1 a11842 1 PKGSRC_MKPIE d11844 1 a11846 1 PKGSRC_RUN_TEST d11848 1 a11850 1 PKGSRC_SLEEPSECS d11852 1 a11854 1 PKGSRC_USE_CTF d11856 1 a11858 1 PKGSRC_USE_RELRO d11860 1 a11862 1 PKGSRC_USE_STACK_CHECK d11864 1 a11866 1 PKGTOOLS_ARGS d11868 1 a11870 1 PKG_ALTERNATIVES d11872 1 a11874 1 PKG_APACHE_ACCEPTED d11876 1 a11878 1 PKG_BEST_EXISTS d11880 1 a11882 1 PKG_COMPRESSION d11884 1 a11886 1 PKG_CONFIG_PERMS d11888 1 a11890 1 PKG_DB_TMPDIR d11892 1 a11894 1 PKG_DEFAULT_OPTIONS d11896 1 a11898 1 PKG_DEVELOPER d11900 1 a11902 1 PKG_FATAL_ERRORS d11904 1 a11906 1 PKG_FILELIST_CMD d11908 1 a11910 1 PKG_GID d11912 1 a11914 1 PKG_GROUPS_VARS d11916 1 a11918 1 PKG_INIT_SCRIPTS d11920 1 a11922 1 PKG_JVM d11924 1 a11926 1 PKG_JVM_DEFAULT d11928 1 a11930 1 PKG_LIBTOOL d11932 1 a11934 1 PKG_OPTIONS_DEPRECATED_WARNINGS d11936 1 a11938 1 PKG_OPTIONS_LEGACY_VARS d11940 1 a11942 1 PKG_OPTIONS_OPTIONAL_GROUPS d11944 1 a11946 1 PKG_OPTIONS_VAR d11948 1 a11950 1 PKG_PHP_MAJOR_VERS d11952 1 a11954 1 PKG_RCD_SCRIPTS d11956 1 a11958 1 PKG_REGISTER_SHELLS d11960 1 a11962 1 PKG_SHELL d11964 1 a11966 1 PKG_SUPPORTED_OPTIONS d11968 1 a11970 1 PKG_SYSCONFBASEDIR d11972 1 a11974 1 PKG_SYSCONFDIR_PERMS d11976 1 a11978 1 PKG_SYSCONFVAR d11980 1 a11982 1 PKG_UID d11984 1 a11986 1 PKG_USERS d11988 1 a11990 1 PKG_VERBOSE d11992 1 a11994 1 PLIST_AWK d11996 1 a11998 1 PLIST_SRC d12000 1 a12002 1 PLIST_TYPE d12004 1 a12006 1 POPTOP_USE_MPPE d12008 1 a12010 1 PREFER d12012 1 a12014 1 PREFER_NATIVE_PTHREADS d12016 1 a12018 1 PREFIX d12020 1 a12022 1 PRE_ROOT_CMD d12024 1 a12026 1 PS d12028 1 a12030 1 PTHREAD_CFLAGS d12032 1 a12034 1 PTHREAD_LIBS d12036 1 a12038 1 PTHREAD_TYPE d12040 1 a12042 1 PYPKGPREFIX d12044 1 a12046 1 PYTHON_SELF_CONFLICT d12048 1 a12050 1 PYTHON_VERSIONS_ACCEPTED d12052 1 a12054 1 PYTHON_VERSION_DEFAULT d12056 1 a12058 1 PYVERSSUFFIX d12060 1 a12062 1 QMAILDIR d12064 1 a12066 1 QMAIL_DAEMON_USER d12068 1 a12070 1 QMAIL_NOFILES_GROUP d12072 1 a12074 1 QMAIL_QMAIL_GROUP d12076 1 a12078 1 QMAIL_QUEUE_EXTRA d12080 1 a12082 1 QMAIL_REMOTE_USER d12084 1 a12086 1 QMAIL_SEND_USER d12088 1 a12090 1 QPOPPER_SPOOL_DIR d12092 1 a12094 1 RAKE_NAME d12096 1 a12098 1 RCD_DIR d12100 1 a12102 1 RCD_SCRIPTS d12104 1 a12106 1 RCD_SCRIPTS_EXAMPLEDIR d12108 1 a12110 1 RCD_SCRIPTS_SHELL d12112 1 a12114 1 RCD_SUBR d12116 1 a12118 1 READLINE_DEFAULT d12120 1 a12122 1 REAL_ROOT_GROUP d12124 1 a12126 1 RECURSIVE_MAKE d12128 1 a12130 1 REPLACE_AWK d12132 1 a12134 1 REPLACE_CSH d12136 1 a12138 1 REPLACE_PERL d12140 1 a12142 1 REPLACE_PYTHON d12144 1 a12146 1 REPLACE_RUBY_DIRS d12148 1 a12150 1 REPLACE_SH d12152 1 a12154 1 REQD_DIRS d12156 1 a12158 1 REQD_FILES d12160 1 a12162 1 REQD_FILES_PERMS d12164 1 a12166 1 RESOLV_LDFLAGS d12168 1 a12170 1 RM d12172 1 a12174 1 ROCKSPEC_SPECFILE d12176 1 a12178 1 ROOT_GROUP d12180 1 a12182 1 RPCGEN d12184 1 a12186 1 RPM2PKG_PLIST d12188 1 a12190 1 RPM2PKG_STAGE d12192 1 a12194 1 RPM2PKG_SUBPREFIX d12196 1 a12198 1 RPMIGNOREPATH d12200 1 a12202 1 RSSH_CVS_PATH d12204 1 a12206 1 RSSH_RSYNC_PATH d12208 1 a12210 1 RSSH_SFTP_SERVER_PATH d12212 1 a12214 1 RUBYGEM d12216 1 a12218 1 RUBYGEM_OPTIONS d12220 1 a12222 1 RUBY_ARCH d12224 1 a12226 1 RUBY_ARCHLIB d12228 1 a12230 1 RUBY_BASERIDIR d12232 1 a12234 1 RUBY_BUILD_RI d12236 1 a12238 1 RUBY_DOC d12240 1 a12242 1 RUBY_EG d12244 1 a12246 1 RUBY_EXTCONF d12248 1 a12250 1 RUBY_EXTCONF_DEBUG d12252 1 a12254 1 RUBY_GEM_BASE d12256 1 a12258 1 RUBY_LIB d12260 1 a12262 1 RUBY_NAME d12264 1 a12266 1 RUBY_PKGPREFIX d12268 1 a12270 1 RUBY_RAILS42_VERSION d12272 1 a12274 1 RUBY_RAILS52_VERSION d12276 1 a12278 1 RUBY_RAILS_DEFAULT d12280 1 a12282 1 RUBY_RAILS_STRICT_DEP d12284 1 a12286 1 RUBY_SETUP d12288 1 a12290 1 RUBY_SHLIBALIAS d12292 1 a12294 1 RUBY_SIMPLE_INSTALL d12296 1 a12298 1 RUBY_SITELIB d12300 1 a12302 1 RUBY_SITERIDIR d12304 1 a12306 1 RUBY_SRCDIR d12308 1 a12310 1 RUBY_SUFFIX d12312 1 a12314 1 RUBY_USE_PTHREAD d12316 1 a12318 1 RUBY_VENDORLIB d12320 1 a12322 1 RUBY_VER d12324 1 a12326 1 RUBY_VERSIONS_ACCEPTED d12328 1 a12330 1 RUBY_VERSION_REQD d12332 1 a12334 1 RUN d12336 1 a12338 1 SAWFISH_THEMES d12340 1 a12342 1 SCREWS_GROUP d12344 1 a12346 1 SCRIPTS_ENV d12348 1 a12350 1 SCROLLKEEPER_REBUILDDB d12352 1 a12354 1 SDIST_PAWD d12356 1 a12358 1 SETGIDGAME d12360 1 a12362 1 SETUID_ROOT_PERMS d12364 1 a12366 1 SHLIB d12368 1 a12370 1 SIGN_PACKAGES d12372 1 a12374 1 SITE_SPECIFIC_PKGS d12376 1 a12378 1 SKIP_PORTABILITY_CHECK d12380 1 a12382 1 SMF_MANIFEST d12384 1 a12386 1 SMF_METHOD_SHELL d12388 1 a12390 1 SMF_NAME d12392 1 a12394 1 SMF_SRCDIR d12396 1 a12398 1 SNIPROXY_USER d12400 1 a12402 1 SPECIAL_PERMS d12404 1 a12406 1 SSH_SUID d12408 1 a12410 1 STEP_MSG d12412 1 a12414 1 STRIP_DBG d12416 1 a12418 1 STRIP_DEBUG_SUPPORTED d12420 1 a12422 1 SU d12424 1 a12426 1 SUBST_CLASSES d12428 1 a12430 1 SUBST_FILTER_CMD d12432 1 a12434 1 SUBST_SED d12436 1 a12438 1 SUBST_SKIP_TEXT_CHECK d12440 1 a12442 1 SUBST_VARS d12444 1 a12446 1 SUSE_PREFER d12448 1 a12450 1 SVN_EXTRACTDIR d12452 1 a12454 1 SVN_REPOSITORIES d12456 1 a12458 1 TERMCAP_TYPE d12460 1 a12462 1 TERMINFO_TYPE d12464 1 a12466 1 TEST_DEPENDS d12468 1 a12470 1 TEST_ENV d12472 1 a12474 1 TEST_MAKE_FLAGS d12476 1 a12478 1 TEXLIVE_IGNORE_PATTERNS d12480 1 a12482 1 TEXMFSITE d12484 1 a12486 1 TEX_HYPHEN_DAT d12488 1 a12490 1 TEX_TEXMF_DIRS d12492 1 a12494 1 TO d12496 1 a12498 1 TOOLS_ARGS d12500 1 a12502 1 TOOLS_CMD d12504 1 a12506 1 TOOLS_DIR d12508 1 a12510 1 TOOLS_GNU_MISSING d12512 1 a12514 1 TOOLS_NOOP d12516 1 a12518 1 TOOLS_SCRIPT d12520 1 a12522 1 TTF_FONTDIR d12524 1 a12526 1 TYPE d12528 1 a12530 1 UCSPI_SSL_GROUP d12532 1 a12534 1 UNLIMIT_RESOURCES d12536 1 a12538 1 UNPRIVILEGED_GROUP d12540 1 a12542 1 UNPRIVILEGED_USER d12544 1 a12546 1 UNWRAP_PATTERNS d12548 1 a12550 1 UPDATE_TARGET d12552 1 a12554 1 USA d12556 1 a12558 1 USERPPP_GROUP d12560 1 a12562 1 USE_ABI_DEPENDS d12564 1 a12566 1 USE_BSD_MAKEFILE d12568 1 a12570 1 USE_CROSS_COMPILE d12572 1 a12574 1 USE_CWRAPPERS d12576 1 a12578 1 USE_FEATURES d12580 1 a12582 1 USE_GCC_RUNTIME d12584 1 a12586 1 USE_JAVA d12588 1 a12590 1 USE_LANGUAGES d12592 1 a12594 1 USE_NATIVE_GCC d12596 1 a12598 1 USE_PKGSRC_GCC d12600 1 a12602 1 USE_PKGTASKS d12604 1 a12606 1 USE_RUBY_INSTALL d12608 1 a12610 1 USE_RUBY_SETUP_PKG d12612 1 a12614 1 UUCP_GROUP d12616 1 a12618 1 VARBASE d12620 1 a12622 1 VIM_EXTRA_OPTS d12624 1 a12626 1 WCALC_CGIDIR d12628 1 a12630 1 WCALC_HTMLDIR d12632 1 a12634 1 WDM_MANAGERS d12636 1 a12638 1 WRKDIR d12640 1 a12642 1 WRKDIR_LOCKTYPE d12644 1 a12646 1 WRKOBJDIR d12648 1 a12650 1 WXGTK_ACCEPTED d12652 1 a12654 1 X10_PORT d12656 1 a12658 1 X11BASE d12660 1 a12662 1 X11_TYPE d12664 1 a12666 1 X509_KEY d12668 1 a12670 1 XLOCK_DEFAULT_MODE d12672 1 a12674 1 XXX d12676 1 a12678 1 YES d12680 1 a12682 1 ZSH_STATIC d12684 1 a12686 1 _vargroups d12688 1 a12690 1 all d12692 1 a12694 1 aslr d12696 1 a12698 1 atlas d12700 1 a12702 1 automake d12704 1 a12706 1 awk d12708 1 a12710 1 big-endian d12712 1 a12714 1 binpkg-list d12716 1 a12718 1 bootstrap-depends d12720 1 a12722 1 broken_on_platform d12724 1 a12726 1 build-env d12728 1 a12730 1 buildlink-oss-soundcard-h d12732 1 a12734 1 c++ d12736 1 a12738 1 cce d12740 1 a12742 1 changes d12744 1 a12746 1 changes-entry-noupdate d12748 1 a12750 1 check-clean d12752 1 a12754 1 check-files-clean d12756 1 a12758 1 checksum d12760 1 a12762 1 clean d12764 1 a12766 1 cleandir d12768 1 a12770 1 commit-changes-entry d12772 1 a12774 1 compiler d12776 1 a12778 1 config.guess d12780 1 a12782 1 configuration d12784 1 a12786 1 configure-help d12788 1 a12790 1 cputime d12792 1 a12794 1 csh d12796 1 a12798 1 cvs d12800 1 a12802 1 declaration d12804 1 a12806 1 defined d12808 1 a12810 1 dependencies d12812 1 a12814 1 depends-checksum d12816 1 a12818 1 deps d12820 1 a12822 1 destdir d12824 1 a12826 1 distinfo d12828 1 a12830 1 dlopen d12832 1 a12834 1 do-buildlink d12836 1 a12838 1 do-configure-post-hook d12840 1 a12842 1 do-fetch d12844 1 a12846 1 emul d12848 1 a12850 1 emulator d12852 1 a12854 1 enomem d12856 1 a12858 1 errx d12860 1 a12862 1 feature d12864 1 a12866 1 fetch d12868 1 a12870 1 follows d12872 1 a12874 1 form d12876 1 a12878 1 fortify d12880 1 a12882 1 fossil d12884 1 a12886 1 from d12888 1 a12890 1 fts_close d12892 1 a12894 1 fts_read d12896 1 a12898 1 full d12900 1 a12902 1 getopt_long d12904 1 a12906 1 gettext d12908 1 a12910 1 github d12912 1 a12914 1 gnu d12916 1 a12918 1 go d12920 1 a12922 1 golang d12924 1 a12926 1 hashbang d12928 1 a12930 1 help d12932 1 a12934 1 imake d12936 1 a12938 1 interp d12940 1 a12942 1 intl d12944 1 a12946 1 kerberos d12948 1 a12950 1 krb5 d12952 1 a12954 1 lapack d12956 1 a12958 1 libnbcompat d12960 1 a12962 1 libtool d12964 1 a12966 1 license d12968 1 a12970 1 little-endian d12972 1 a12974 1 locking d12976 1 a12978 1 make d12980 1 a12982 1 memory d12984 1 a12986 1 meta d12988 1 a12990 1 meta_package d12992 1 a12994 1 mk.conf d12996 1 a12998 1 mount d13000 1 a13002 1 mremap d13004 1 a13006 1 nbcompat d13008 1 a13010 1 obstack d13012 1 a13014 1 occurs d13016 1 a13018 1 openblas d13020 1 a13022 1 options.mk d13024 1 a13026 1 override d13028 1 a13030 1 override-message-intltool d13032 1 a13034 1 parallel d13036 1 a13038 1 path d13040 1 a13042 1 paxctl d13044 1 a13046 1 pc d13048 1 a13050 1 perl5 d13052 1 a13054 1 php d13056 1 a13058 1 pkg-config d13060 1 a13062 1 platform d13064 1 a13066 1 post-extract d13068 1 a13070 1 post-wrapper d13072 1 a13074 1 pre-extract d13076 1 a13078 1 print-go-deps d13080 1 a13082 1 print-summary-data d13084 1 a13086 1 pypi d13088 1 a13090 1 readme-all d13092 1 a13094 1 relro d13096 1 a13098 1 reorder d13100 1 a13102 1 replace_interpreter d13104 1 a13106 1 resolv d13108 1 a13110 1 ruby d13112 1 a13114 1 setgid d13116 1 a13118 1 setuid d13120 1 a13122 1 show d13124 1 a13126 1 show-build-defs d13128 1 a13130 1 show-deps d13132 1 a13134 1 show-downlevel d13136 1 a13138 1 show-tools d13140 1 a13142 1 show-vars d13144 1 a13146 1 ssp d13148 1 a13150 1 stage-install d13152 1 a13154 1 strnlen d13156 1 a13158 1 subst d13160 1 a13162 1 sun d13164 1 a13166 1 sunwspro d13168 1 d13235 1 a13236 1   @ 1.274 log @doc/pkgsrc.*: regen @ text @d166 2 d2802 2 d3065 2 d3238 51 d9002 1 a9002 1
    d9047 1 a9047 1

    24.1.

    d9063 1 a9063 1

    24.2.

    d9081 1 a9081 1

    24.3.

    d9099 1 a9099 1

    24.4.

    d9112 1 a9112 1

    24.5.

    d9128 1 a9128 1

    24.6.

    d9152 1 a9152 1

    24.7.

    d9177 1 a9177 1

    24.8.

    d9225 1 a9225 1

    24.9.

    @ 1.273 log @doc/pkgsrc.*: regen @ text @a165 2
    12.1.3. R packages
    12.1.4. TeXlive packages
    a2799 2
    12.1.3. R packages
    12.1.4. TeXlive packages
    a3060 2
    12.1.3. R packages
    12.1.4. TeXlive packages
    a3231 41

    12.1.3. R packages

    Simple R packages from CRAN are handled automatically by R2pkg, which is available in pkgtools/R2pkg. Individual packages (and optionally their dependencies) may be created and updated. R packages generally follow the same form, and most of the relevant information needed is contained in a DESCRIPTION file as part of each R package on CRAN. Consequently, R2pkg downloads that information and creates or updates a package in the canonical form. The resulting package should be reviewed for correctness.

    12.1.4. TeXlive packages

    TeXlive packages from CTAN are handled automatically by texlive2pkg, which is available in pkgtools/texlive2pkg.

    If the TeXlive package name is not known, it may be useful to search CTAN. A Contained in field on the package page typically identifies the basename of the package file in the TeXlive archive.

    If the TeXlive package name is known, download the files from the TeXlive archive. For package foo, you will need to download foo.tar.xz. Most TeXlive packages also have associated documentation packages, so download foo.doc.tar.xz at the same time. These files should be placed in the appropriate category directory, which is often but not always print. Then run the following command in the category directory.

    texlive2pkg foo.tar.xz foo.doc.tar.xz
    

    This will create two packages, tex-foo and tex-foo-doc. Be sure to check that both packages are correct.

    d3739 1 a3739 1 PATCHDIR= ${.CURDIR}/../xemacs/patches d4058 1 a4058 1 FILESDIR=${.CURDIR}/../xemacs/files d8945 1 a8945 1
    d8990 1 a8990 1

    24.1.

    d9006 1 a9006 1

    24.2.

    d9024 1 a9024 1

    24.3.

    d9042 1 a9042 1

    24.4.

    d9055 1 a9055 1

    24.5.

    d9071 1 a9071 1

    24.6.

    d9095 1 a9095 1

    24.7.

    d9120 1 a9120 1

    24.8.

    d9168 1 a9168 1

    24.9.

    d10446 3 d10450 1 a10452 1 AMANDA_TMP d10454 1 a10456 1 AMANDA_VAR d10458 1 a10460 1 APACHE_MODULE_NAME d10462 1 a10464 1 APACHE_MODULE_SRCDIR d10466 1 a10468 1 APACHE_SUEXEC_CONFIGURE_ARGS d10470 1 a10472 1 APACHE_USER d10474 1 a10476 1 APPEND_ELF d10478 1 a10480 1 AUDIT_PACKAGES_FLAGS d10482 1 a10484 1 AUTOMAKE_OVERRIDE d10486 1 a10488 1 AUTO_MKDIRS d10490 1 a10492 1 BDBBASE d10494 1 a10496 1 BDB_DEFAULT d10498 1 a10500 1 BDB_TYPE d10502 1 a10504 1 BIND_GROUP d10506 1 a10508 1 BINPKG_SITES d10510 5 d10517 1 a10517 1 BISON_PKGDATADIR d10630 3 d10634 1 a10636 1 CHECK_FILES d10638 1 a10640 1 CHECK_FILES_STRICT d10642 1 a10644 1 CHECK_HEADERS_SKIP d10646 1 a10648 1 CHECK_INTERPRETER_SKIP d10650 1 a10652 1 CHECK_PERMS_AUTOFIX d10654 1 a10656 1 CHECK_PORTABILITY d10658 1 a10660 1 CHECK_RELRO d10662 1 a10664 1 CHECK_RELRO_SUPPORTED d10666 1 a10668 1 CHECK_SHLIBS_BLACKLIST d10670 1 a10672 1 CHECK_SHLIBS_SUPPORTED d10674 1 a10676 1 CHECK_SSP_SKIP d10678 1 a10680 1 CHECK_STRIPPED d10682 1 a10684 1 CHECK_WRKREF d10686 1 a10688 1 CHECK_WRKREF_SKIP d10690 1 a10692 1 CLAMAV_GROUP d10694 1 a10696 1 CLANGBASE d10698 1 a10700 1 CMAKE_DEPENDENCIES_REWRITE d10702 1 a10704 1 CMAKE_MODULE_PATH_OVERRIDE d10706 1 a10708 1 CMAKE_PREFIX_PATH d10710 9 d10778 19 d10798 1 a10800 1 CYRUS_GROUP d10802 1 a10804 1 CYRUS_USER d10806 1 a10808 1 DAEMONTOOLS_LOG_USER d10810 1 a10812 1 DBUS_USER d10814 1 a10816 1 DEFANG_USER d10818 1 a10820 1 DEFAULT_DISTFILES d10822 1 a10824 1 DEFAULT_SERIAL_DEVICE d10826 1 a10828 1 DEINSTALLDEPENDS d10830 1 a10832 1 DEINSTALL_TEMPLATES d10834 1 a10836 1 DELAYED_WARNING_MSG d10838 1 a10840 1 DEPENDS_TARGET d10842 1 a10844 1 DESTDIR d10846 1 a10848 1 DIALER_GROUP d10850 1 a10852 1 DISTDIR d10854 1 a10856 1 DISTINFO_FILE d10858 1 a10860 1 DIST_PATH d10862 1 a10864 1 DJBDNS_AXFR_USER d10866 1 a10868 1 DJBDNS_DJBDNS_GROUP d10870 1 a10872 1 DJBDNS_RBL_USER d10874 1 a10876 1 DLOPEN_REQUIRE_PTHREADS d10878 1 a10880 1 DL_CFLAGS d10882 1 a10884 1 DL_LIBS d10886 1 a10888 1 DOWNLOADED_DISTFILE d10890 1 a10892 1 DYNAMIC_SITES_CMD d10894 1 a10896 1 ECHO d10898 1 a10900 1 ELK_GUI d10902 1 a10904 1 EMULDIR d10906 1 a10908 1 EMULSUBDIRSLASH d10910 1 a10912 1 EMUL_DISTRO d10914 1 a10916 1 EMUL_IS_NATIVE d10918 1 a10920 1 EMUL_OPSYS d10922 1 a10924 1 EMUL_PLATFORM d10926 1 a10928 1 EMUL_PREFER d10930 1 a10932 1 EMUL_TYPE d10934 1 a10936 1 EXIM_GROUP d10938 1 a10940 1 EXPORT_SYMBOLS_LDFLAGS d10942 1 a10944 1 EXTRACT_CMD d10946 1 a10948 1 EXTRACT_DIR d10950 1 a10952 1 EXTRACT_ENV d10954 1 a10956 1 EXTRACT_OPTS d10958 1 a10960 1 EXTRACT_USING d10962 1 a10964 1 FAIL_MSG d10966 1 a10968 1 FAM d10970 1 a10972 1 FAM_DEFAULT d10974 1 a10976 1 FCPATH d10978 1 a10980 1 FEATURE_LDFLAGS d10982 1 a10984 1 FETCH_AFTER_ARGS d10986 1 a10988 1 FETCH_CMD d10990 1 a10992 1 FETCH_PROXY d10994 1 a10996 1 FETCH_USING d10998 1 a11000 1 FILES_SUBST_SED d11002 1 a11004 1 FLUXBOX_USE_GNOME d11006 1 a11008 1 FLUXBOX_USE_XFT d11010 1 d11018 8 d11094 15 d11110 1 a11112 1 GNU_CONFIGURE d11114 1 a11116 1 GNU_CONFIGURE_MANDIR d11118 1 a11120 1 GODEP_REDIRECTS d11122 1 a11124 1 GO_DEPS d11126 1 a11128 1 GO_SRCPATH d11130 1 a11132 1 GRUB_NETWORK_CARDS d11134 1 a11136 1 GRUB_SCAN_ARGS d11138 1 a11140 1 HASKELL_COMPILER d11142 1 a11144 1 HASKELL_ENABLE_LIBRARY_PROFILING d11146 1 a11148 1 HAS_CONFIGURE d11150 5 d11253 4 d11290 1 a11290 1 LATEX2HTML_ICONPATH d11293 1 a11294 1 LDCONFIG_REMOVE_CMD d11297 1 a11298 1 LEAFNODE_GROUP d11301 1 a11302 1 LIBDVDCSS_HOMEPAGE d11305 1 a11306 1 LIBRSVG_TYPE d11309 1 a11310 1 LIBTOOLIZE_PLIST d11313 1 a11314 1 LIBUSB_TYPE d11317 1 a11318 1 LINKER_RPATH_FLAG d11321 1 d11323 8 a11330 1 LINUX_LOCALES d11358 3 d11362 1 a11364 1 MAKE_DIRS d11366 1 a11368 1 MAKE_ENV d11370 1 a11372 1 MAKE_FLAGS d11374 1 a11376 1 MAKE_JOBS_SAFE d11378 1 a11380 1 MANINSTALL d11382 1 a11384 1 MASTER_SITES d11386 1 a11388 1 MASTER_SITE_CYGWIN d11390 1 a11392 1 MASTER_SITE_GNU d11394 1 a11396 1 MASTER_SITE_MOZILLA d11398 1 a11400 1 MASTER_SITE_OVERRIDE d11402 1 a11404 1 MASTER_SITE_SUNSITE d11406 1 a11408 1 MASTER_SITE_TEX_CTAN d11410 1 a11412 1 MASTER_SITE_XEMACS d11414 1 a11416 1 MASTER_SORT_RANDOM d11418 1 a11420 1 MECAB_CHARSET d11422 1 a11424 1 MEDIATOMB_USER d11426 1 a11428 1 MIREDO_GROUP d11430 1 a11432 1 MISSING_FEATURES d11434 1 a11436 1 MLDONKEY_GROUP d11438 1 a11440 1 MLDONKEY_USER d11442 1 a11444 1 MONOTONE_USER d11446 1 a11448 1 MOTIF_TYPE d11450 1 a11452 1 MPI_TYPE d11454 1 a11456 1 MSGFMT_STRIP_MSGID_PLURAL d11458 1 a11460 1 MUST d11462 1 a11464 1 MYSQL_CHARSET d11466 1 a11468 1 MYSQL_EXTRA_CHARSET d11470 1 a11472 1 MYSQL_PKGSRCDIR d11474 1 a11476 1 MYSQL_VERSIONS_ACCEPTED d11478 1 a11480 1 NAGIOSCMD_GROUP d11482 1 a11484 1 NAGIOS_GROUP d11486 1 a11488 1 NATIVE_APPEND_ABI d11490 1 a11492 1 NATIVE_EXEC_FMT d11494 1 a11496 1 NATIVE_OBJECT_FMT d11498 1 a11500 1 NETBSD_LOGIN_NAME d11502 1 a11504 1 NMH_MTA d11506 1 a11508 1 NOLOGIN d11510 1 a11512 1 NOTE d11514 1 a11516 1 NOT_PAX_ASLR_SAFE d11518 1 a11520 1 NO_BUILD d11522 1 a11524 1 NO_CONFIGURE d11526 1 a11528 1 NS_PREFERRED d11530 1 a11532 1 NULLMAILER_USER d11534 1 a11536 1 OASIS_BUILD_ARGS d11538 1 a11540 1 OBJMACHINE d11542 1 a11544 1 OCAML_FINDLIB_REGISTER d11546 1 a11548 1 OCAML_SITELIBDIR d11550 1 a11552 1 OCAML_USE_DUNE d11554 1 a11556 1 OCAML_USE_JBUILDER d11558 1 a11560 1 OCAML_USE_OASIS_DYNRUN d11562 1 a11564 1 OCAML_USE_OPT_COMPILER d11566 1 a11568 1 OMF d11570 1 a11572 1 ONLY_FOR_PLATFORM d11574 1 a11576 1 OPENSSH_GROUP d11578 1 a11580 1 OPSYS d11582 1 a11584 1 OSS_TYPE d11586 5 a11592 1 OSX_TOLERATE_SDK_SKEW d11594 1 a11596 1 OS_VERSION d11598 1 a11600 1 OVERRIDE_DIRDEPTH d11602 1 d11605 1 a11605 1 OVERRIDE_GNU_CONFIG_SCRIPTS d11653 8 d11766 3 d11770 1 a11772 1 PKGSRC_COMPILER d11774 1 a11776 1 PKGSRC_LOCKTYPE d11778 1 a11780 1 PKGSRC_MESSAGE_RECIPIENTS d11782 1 a11784 1 PKGSRC_MKREPRO d11786 1 a11788 1 PKGSRC_SETENV d11790 1 a11792 1 PKGSRC_TODO d11794 1 a11796 1 PKGSRC_USE_FORTIFY d11798 1 a11800 1 PKGSRC_USE_SSP d11802 1 a11804 1 PKGTASKS_DATAFILE d11806 1 a11808 1 PKGTOOLS_ENV d11810 1 a11812 1 PKG_APACHE d11814 1 a11816 1 PKG_APACHE_DEFAULT d11818 1 a11820 1 PKG_BUILD_OPTIONS d11822 1 a11824 1 PKG_CONFIG d11826 1 a11828 1 PKG_CREATE_USERGROUP d11830 1 a11832 1 PKG_DEBUG_LEVEL d11834 1 a11836 1 PKG_DESTDIR_SUPPORT d11838 1 a11840 1 PKG_DISABLED_OPTIONS d11842 1 a11844 1 PKG_FC d11846 1 a11848 1 PKG_GECOS d11850 1 a11852 1 PKG_GROUPS d11854 1 a11856 1 PKG_HOME d11858 1 a11860 1 PKG_JAVA_HOME d11862 1 a11864 1 PKG_JVMS_ACCEPTED d11866 1 a11868 1 PKG_LEGACY_OPTIONS d11870 1 a11872 1 PKG_OPTIONS d11874 1 a11876 1 PKG_OPTIONS_LEGACY_OPTS d11878 1 a11880 1 PKG_OPTIONS_NONEMPTY_SETS d11882 1 a11884 1 PKG_OPTIONS_REQUIRED_GROUPS d11886 1 a11888 1 PKG_PHP d11890 1 a11892 1 PKG_PHP_VERSION d11894 1 a11896 1 PKG_REFCOUNT_DBDIR d11898 1 a11900 1 PKG_RESUME_TRANSFERS d11902 1 a11904 1 PKG_SUGGESTED_OPTIONS d11906 1 a11908 1 PKG_SYSCONFBASE d11910 1 a11912 1 PKG_SYSCONFDIR d11914 1 a11916 1 PKG_SYSCONFSUBDIR d11918 1 a11920 1 PKG_TOOLS_BIN d11922 1 a11924 1 PKG_UPDATE_FONTS_DB d11926 1 a11928 1 PKG_USERS_VARS d11930 1 a11932 1 PLIST d11934 1 a11936 1 PLIST_AWK_ENV d11938 1 a11940 1 PLIST_SUBST d11942 1 a11944 1 PLIST_VARS d11946 1 a11948 1 POST_FETCH_HOOK d11950 1 a11952 1 PREFER_NATIVE d11954 1 a11956 1 PREFER_PKGSRC d11958 1 a11960 1 PREPEND_PATH d11962 1 a11964 1 PRIVILEGED_STAGES d11966 1 a11968 1 PTHREAD_AUTO_VARS d11970 1 a11972 1 PTHREAD_LDFLAGS d11974 1 a11976 1 PTHREAD_OPTS d11978 1 a11980 1 PVM_SSH d11982 1 a11984 1 PYTHON_FOR_BUILD_ONLY d11986 1 a11988 1 PYTHON_VERSIONED_DEPENDENCIES d11990 1 a11992 1 PYTHON_VERSIONS_INCOMPATIBLE d11994 1 a11996 1 PYTHON_VERSION_REQD d11998 1 a12000 1 PY_NO_EGG d12002 1 a12004 1 QMAIL_ALIAS_USER d12006 1 a12008 1 QMAIL_LOG_USER d12010 1 a12012 1 QMAIL_PASSWD_USER d12014 1 a12016 1 QMAIL_QUEUE_DIR d12018 1 a12020 1 QMAIL_QUEUE_USER d12022 1 a12024 1 QMAIL_ROOT_USER d12026 1 a12028 1 QPOPPER_FAC d12030 1 a12032 1 QPOPPER_USER d12034 5 a12040 1 RASMOL_DEPTH d12042 1 a12044 1 RCD_SCRIPTS_DIR d12046 1 a12048 1 RCD_SCRIPTS_MODE d12050 1 d12053 1 a12053 1 RCD_SCRIPT_SRC d12110 4 d12306 3 d12310 1 a12312 1 SILC_CLIENT_WITH_PERL d12314 1 a12316 1 SKIP_DEPENDS d12318 1 a12320 1 SMF_INSTANCES d12322 1 a12324 1 SMF_METHODS d12326 1 a12328 1 SMF_METHOD_SRC d12330 1 a12332 1 SMF_PREFIX d12334 1 a12336 1 SNIPROXY_GROUP d12338 1 a12340 1 SOURCE_BUFFSIZE d12342 1 a12344 1 SPECIFIC_PKGS d12346 1 a12348 1 SSYNC_PAWD d12350 1 a12352 1 STRIP d12354 1 a12356 1 STRIP_DEBUG d12358 1 a12360 1 STRIP_FILES_SKIP d12362 1 a12364 1 SUBDIR d12366 1 a12368 1 SUBST_FILES d12370 1 a12372 1 SUBST_MESSAGE d12374 1 a12376 1 SUBST_SHOW_DIFF d12378 1 a12380 1 SUBST_STAGE d12382 1 a12384 1 SUNWSPROBASE d12386 9 a12396 1 SU_CMD d12398 1 a12400 1 TERMINFO_DEFAULT d12402 1 a12404 1 TEST d12406 1 a12408 1 TEST_DIRS d12410 1 a12412 1 TEST_MAKE_CMD d12414 1 a12416 1 TEST_TARGET d12418 1 a12420 1 TEXLIVE_REV d12422 1 a12424 1 TEX_FORMATS d12426 1 a12428 1 TEX_HYPHEN_DEF d12430 1 a12432 1 THTTPD_LOG_FACILITY d12434 1 a12436 1 TOOLS_ALIASES d12438 1 a12440 1 TOOLS_BROKEN d12442 1 a12444 1 TOOLS_CREATE d12446 1 a12448 1 TOOLS_FAIL d12450 1 a12452 1 TOOLS_LDCONFIG d12454 1 a12456 1 TOOLS_PATH d12458 1 d12461 1 a12461 1 TOOL_DEPENDS d12614 3 d12618 1 a12620 1 ZERO_FILESIZE_P d12622 1 a12624 1 __stdc__ d12626 1 a12628 1 add d12630 1 a12632 1 alternatives d12634 1 d12637 1 a12637 1 asprintf d12654 3 d12658 1 a12660 1 broken d12662 1 a12664 1 build d12666 1 a12668 1 buildlink-directories d12670 1 a12672 1 c d12674 1 a12676 1 ccache d12678 1 a12680 1 cdefs d12682 1 a12684 1 changes-entry d12686 1 a12688 1 check d12690 1 a12692 1 check-files d12694 1 a12696 1 check-vulnerable d12698 1 a12700 1 checksum-phase d12702 1 a12704 1 clean-depends d12706 1 a12708 1 commit d12710 1 a12712 1 compact d12714 1 a12716 1 conf d12718 1 a12720 1 config.sub d12722 1 a12724 1 configure d12726 1 a12728 1 configure_args d12730 1 a12732 1 create-usergroup d12734 1 d12737 1 a12737 1 ctf d12782 3 d12786 1 a12788 1 emulation d12790 1 a12792 1 endian d12794 1 a12796 1 err d12798 1 a12800 1 etc d12802 1 a12804 1 features d12806 1 a12808 1 fetch-list d12810 1 a12812 1 forbids d12814 1 a12816 1 format d12818 1 d12821 1 a12821 1 fortify_source d12846 3 d12850 1 a12852 1 glob d12854 1 a12856 1 gnu_configure_strict d12858 1 a12860 1 go-deps d12862 1 a12864 1 guess-license d12866 1 a12868 1 heimdal d12870 1 d12893 1 d12895 2 d12898 1 a12900 1 libs d12902 1 a12904 1 licence d12906 1 a12908 1 lintl d12910 1 a12912 1 lock d12914 1 a12916 1 lvalue d12918 1 a12920 1 makesum d12922 1 d12934 3 d12938 1 a12940 1 mprotect d12942 1 a12944 1 nb d12946 1 a12948 1 no d12950 1 a12952 1 obstack_ptr_grow d12954 1 d12957 1 a12957 1 only d13098 3 d13102 1 a13104 1 sunpro d13106 1 @ 1.272 log @Revert the previous commit. @ text @d166 2 d2802 2 d3065 2 d3238 41 d8992 1 a8992 1
    d9037 1 a9037 1

    24.1.

    d9053 1 a9053 1

    24.2.

    d9071 1 a9071 1

    24.3.

    d9089 1 a9089 1

    24.4.

    d9102 1 a9102 1

    24.5.

    d9118 1 a9118 1

    24.6.

    d9142 1 a9142 1

    24.7.

    d9167 1 a9167 1

    24.8.

    d9215 1 a9215 1

    24.9.

    d10493 1 a10493 1 ALSA_PC a10495 1 ALTERNATIVES_SRC d10497 1 a10499 1 AMANDA_USER d10501 1 a10503 1 APACHE_GROUP d10505 1 a10507 1 APACHE_MODULE_SRC d10509 1 a10511 1 APACHE_PKG_PREFIX d10513 1 a10515 1 APACHE_SUEXEC_DOCROOT d10517 1 a10519 1 APPEND_ABI d10521 1 a10523 1 ARLA_CACHE d10525 1 a10527 1 AUTOCONF_REQD d10529 1 a10531 1 AUTOMAKE_REQD d10533 1 a10535 1 BDB185_DEFAULT d10537 1 a10539 1 BDB_ACCEPTED d10541 1 a10543 1 BDB_LIBS d10545 1 a10547 1 BIND_DIR d10549 1 a10551 1 BIND_USER d10553 1 a10555 1 BIN_INSTALL_FLAGS a10556 7 BLAS_ACCEPTED BLAS_LIBS BLAS_TYPE d10669 1 a10669 1 CHECKOUT_DATE a10671 1 CHECK_FAKEHOME d10673 1 a10675 1 CHECK_FILES_SKIP d10677 1 a10679 1 CHECK_HEADERS d10681 1 a10683 1 CHECK_INTERPRETER d10685 1 a10687 1 CHECK_PERMS d10689 1 a10691 1 CHECK_PERMS_SKIP d10693 1 a10695 1 CHECK_PORTABILITY_SKIP d10697 1 a10699 1 CHECK_RELRO_SKIP d10701 1 a10703 1 CHECK_SHLIBS d10705 1 a10707 1 CHECK_SHLIBS_SKIP d10709 1 a10711 1 CHECK_SSP d10713 1 a10715 1 CHECK_SSP_SUPPORTED d10717 1 a10719 1 CHECK_STRIPPED_SKIP d10721 1 a10723 1 CHECK_WRKREF_EXTRA_DIRS d10725 1 a10727 1 CLAMAV_DBDIR d10729 1 a10731 1 CLAMAV_USER d10733 1 a10735 1 CLEANDEPENDS d10737 1 a10739 1 CMAKE_INSTALL_PREFIX d10741 1 a10743 1 CMAKE_PKGSRC_BUILD_FLAGS a10744 2 a10745 9 COMMON_LISP_DOCFILES COMMON_LISP_EXAMPLES COMMON_LISP_EXTRAFILES COMMON_LISP_PACKAGES COMMON_LISP_SYSTEM d10805 1 a10805 17 CVS_EXTRACTDIR CVS_MODULE CVS_PROJECT CVS_REPOSITORIES CVS_ROOT CVS_ROOT_GNU CVS_ROOT_NONGNU CVS_ROOT_SOURCEFORGE CVS_TAG a10807 1 CXX d10809 1 a10811 1 CYRUS_IDLE d10813 1 a10815 1 DAEMONTOOLS_GROUP d10817 1 a10819 1 DBUS_GROUP d10821 1 a10823 1 DEFANG_GROUP d10825 1 a10827 1 DEFAULT_ACCEPTABLE_LICENSES d10829 1 a10831 1 DEFAULT_IRC_SERVER d10833 1 a10835 1 DEF_UMASK d10837 1 a10839 1 DEINSTALL_SRC d10841 1 a10843 1 DELAYED_ERROR_MSG d10845 1 a10847 1 DEPENDS d10849 1 a10851 1 DEPENDS_TYPE d10853 1 a10855 1 DESTDIR_VARNAME d10857 1 a10859 1 DIGEST_REQD d10861 1 a10863 1 DISTFILES d10865 1 a10867 1 DISTNAME d10869 1 a10871 1 DIST_SUBDIR d10873 1 a10875 1 DJBDNS_CACHE_USER d10877 1 a10879 1 DJBDNS_LOG_USER d10881 1 a10883 1 DJBDNS_TINY_USER d10885 1 a10887 1 DL_AUTO_VARS d10889 1 a10891 1 DL_LDFLAGS d10893 1 a10895 1 DNS d10897 1 a10899 1 DT_LAYOUT d10901 1 a10903 1 DYNAMIC_SITES_SCRIPT d10905 1 a10907 1 ECHO_N d10909 1 a10911 1 EMACS_TYPE d10913 1 a10915 1 EMULSUBDIR d10917 1 a10919 1 EMUL_ARCH d10921 1 a10923 1 EMUL_EXEC_FMT d10925 1 a10927 1 EMUL_MODULES d10929 1 a10931 1 EMUL_PKG_FMT d10933 1 a10935 1 EMUL_PLATFORMS d10937 1 a10939 1 EMUL_REQD d10941 1 a10943 1 ERROR_MSG d10945 1 a10947 1 EXIM_USER d10949 1 a10951 1 EXTRACTOR d10953 1 a10955 1 EXTRACT_CMD_DEFAULT d10957 1 a10959 1 EXTRACT_ELEMENTS d10961 1 a10963 1 EXTRACT_ONLY d10965 1 a10967 1 EXTRACT_SUFX d10969 1 a10971 1 FAILOVER_FETCH d10973 1 a10975 1 FAKE_NCURSES d10977 1 a10979 1 FAM_ACCEPTED d10981 1 a10983 1 FAM_SERVER d10985 1 a10987 1 FEATURE_CPPFLAGS d10989 1 a10991 1 FEATURE_LIBS d10993 1 a10995 1 FETCH_BEFORE_ARGS d10997 1 a10999 1 FETCH_OUTPUT_ARGS d11001 1 a11003 1 FETCH_RESUME_ARGS d11005 1 a11007 1 FILES_SUBST d11009 1 a11011 1 FIX_SYSTEM_HEADERS d11013 1 a11015 1 FLUXBOX_USE_KDE a11016 2 a11017 1 FONTDIR a11024 8 FOSSIL_EXTRACTDIR FOSSIL_REPO FOSSIL_REPOSITORIES FOSSIL_VERSION d11093 1 a11093 13 GIT_BRANCH GIT_ENV GIT_EXTRACTDIR GIT_REPO GIT_REPOSITORIES GIT_REVISION GIT_TAG a11095 1 GNU d11097 1 a11099 1 GNU_CONFIGURE_INFODIR d11101 1 a11103 1 GNU_CONFIGURE_STRICT d11105 1 a11107 1 GO_BUILD_PATTERN d11109 1 a11111 1 GO_DIST_BASE d11113 1 a11115 1 GROUP_SPECIFIC_PKGS d11117 1 a11119 1 GRUB_PRESET_COMMAND d11121 1 a11123 1 GZIP d11125 1 a11127 1 HASKELL_ENABLE_HADDOCK_DOCUMENTATION d11129 1 a11131 1 HASKELL_ENABLE_SHARED_LIBRARY a11132 2 a11133 5 HG_REPO HG_REPOSITORIES HG_TAG a11231 4 JAVA_APP_PATH JAVA_APP_TARGETS d11297 1 a11297 5 LINUX_BASE_NODEPS LINUX_BASE_PREFERRED LINUX_BASE_REQUIRED a11299 1 LINUX_LOCALES d11301 1 a11303 1 LOCALBASE_LOCKTYPE d11305 1 a11307 1 LOVE_DATA d11309 1 a11311 1 LOVE_VERSION d11313 1 a11315 1 MACHINE_PLATFORM d11317 1 a11319 1 MAILAGENT_EMAIL d11321 1 a11323 1 MAILAGENT_ORGANIZATION a11324 3 MAJOR_OS_VERSION a11552 4 OS_HAVE_ALSA OS_HAVE_RCD d11565 1 a11565 1 OVERRIDE_ROCKSPEC a11567 1 OWN_DIRS d11569 1 a11571 1 P4GROUP d11573 1 a11575 1 P4ROOT d11577 1 a11579 1 PACKAGES d11581 1 a11583 1 PAMBASE d11585 1 a11587 1 PAPERSIZE d11589 1 a11591 1 PATCHDIR d11593 1 a11595 1 PATCH_ARGS d11597 1 a11599 1 PATCH_DIST_ARGS d11601 1 a11603 1 PATCH_DIST_STRIP d11605 1 a11607 1 PATCH_STRIP a11608 2 a11609 5 PEAR PEAR_CHANNEL PEAR_CHANNEL_ALIAS a11611 1 PEAR_CHANNEL_VERSION d11613 1 a11615 1 PEAR_LIB d11617 1 a11619 1 PERL5 d11621 1 a11623 1 PERL5_CONFIGURE_DIRS d11625 1 a11627 1 PERL5_LICENSE d11629 1 a11631 1 PERL5_PACKLIST d11633 1 a11635 1 PERL5_PERLBASE d11637 1 a11639 1 PERL5_USE_PACKLIST d11641 1 a11643 1 PFCTL d11645 1 a11647 1 PF_VERSION d11649 1 a11651 1 PGHOME d11653 1 a11655 1 PGSQL_TYPE d11657 1 a11659 1 PGSQL_VERSION_DEFAULT d11661 1 a11663 1 PG_LIB_EXT d11665 1 a11667 1 PHPCOMMON_MK d11669 1 a11671 1 PHP_BASE_VERS d11673 1 a11675 1 PHP_EXTENSION_DIR d11677 1 a11679 1 PHP_PKG_PREFIX d11681 1 a11683 1 PHP_VERSIONS_ACCEPTED d11685 1 a11687 1 PHP_VERSION_DEFAULT d11689 1 a11691 1 PILRC_USE_GTK d11693 1 a11695 1 PKGCONFIG_FILE d11697 1 a11699 1 PKGCONFIG_OVERRIDE_STAGE d11701 1 a11703 1 PKGGNUDIR d11705 1 a11707 1 PKGLOCALEDIR d11709 1 a11711 1 PKGNAME d11713 1 a11715 1 PKGPATH d11717 1 a11719 1 PKGSRC_CHANGES d11721 1 a11723 1 PKGSRC_KEEP_BIN_PKGS d11725 1 a11727 1 PKGSRC_MAKE_ENV d11729 1 a11731 1 PKGSRC_MKPIE d11733 1 a11735 1 PKGSRC_RUN_TEST d11737 1 a11739 1 PKGSRC_SLEEPSECS d11741 1 a11743 1 PKGSRC_USE_CTF d11745 1 a11747 1 PKGSRC_USE_RELRO d11749 1 a11751 1 PKGSRC_USE_STACK_CHECK d11753 1 a11755 1 PKGTOOLS_ARGS d11757 1 a11759 1 PKG_ALTERNATIVES d11761 1 a11763 1 PKG_APACHE_ACCEPTED d11765 1 a11767 1 PKG_BEST_EXISTS d11769 1 a11771 1 PKG_COMPRESSION d11773 1 a11775 1 PKG_CONFIG_PERMS d11777 1 a11779 1 PKG_DB_TMPDIR d11781 1 a11783 1 PKG_DEFAULT_OPTIONS d11785 1 a11787 1 PKG_DEVELOPER d11789 1 a11791 1 PKG_FATAL_ERRORS d11793 1 a11795 1 PKG_FILELIST_CMD d11797 1 a11799 1 PKG_GID d11801 1 a11803 1 PKG_GROUPS_VARS d11805 1 a11807 1 PKG_INIT_SCRIPTS d11809 1 a11811 1 PKG_JVM d11813 1 a11815 1 PKG_JVM_DEFAULT d11817 1 a11819 1 PKG_LIBTOOL d11821 1 a11823 1 PKG_OPTIONS_DEPRECATED_WARNINGS d11825 1 a11827 1 PKG_OPTIONS_LEGACY_VARS d11829 1 a11831 1 PKG_OPTIONS_OPTIONAL_GROUPS d11833 1 a11835 1 PKG_OPTIONS_VAR d11837 1 a11839 1 PKG_PHP_MAJOR_VERS d11841 1 a11843 1 PKG_RCD_SCRIPTS d11845 1 a11847 1 PKG_REGISTER_SHELLS d11849 1 a11851 1 PKG_SHELL d11853 1 a11855 1 PKG_SUPPORTED_OPTIONS d11857 1 a11859 1 PKG_SYSCONFBASEDIR d11861 1 a11863 1 PKG_SYSCONFDIR_PERMS d11865 1 a11867 1 PKG_SYSCONFVAR d11869 1 a11871 1 PKG_UID d11873 1 a11875 1 PKG_USERS d11877 1 a11879 1 PKG_VERBOSE d11881 1 a11883 1 PLIST_AWK d11885 1 a11887 1 PLIST_SRC d11889 1 a11891 1 PLIST_TYPE d11893 1 a11895 1 POPTOP_USE_MPPE d11897 1 a11899 1 PREFER d11901 1 a11903 1 PREFER_NATIVE_PTHREADS d11905 1 a11907 1 PREFIX d11909 1 a11911 1 PRE_ROOT_CMD d11913 1 a11915 1 PS d11917 1 a11919 1 PTHREAD_CFLAGS d11921 1 a11923 1 PTHREAD_LIBS d11925 1 a11927 1 PTHREAD_TYPE d11929 1 a11931 1 PYPKGPREFIX d11933 1 a11935 1 PYTHON_SELF_CONFLICT d11937 1 a11939 1 PYTHON_VERSIONS_ACCEPTED d11941 1 a11943 1 PYTHON_VERSION_DEFAULT d11945 1 a11947 1 PYVERSSUFFIX d11949 1 a11951 1 QMAILDIR d11953 1 a11955 1 QMAIL_DAEMON_USER d11957 1 a11959 1 QMAIL_NOFILES_GROUP d11961 1 a11963 1 QMAIL_QMAIL_GROUP d11965 1 a11967 1 QMAIL_QUEUE_EXTRA d11969 1 a11971 1 QMAIL_REMOTE_USER d11973 1 a11975 1 QMAIL_SEND_USER d11977 1 a11979 1 QPOPPER_SPOOL_DIR d11981 1 a11983 1 RAKE_NAME d11985 1 a11987 5 RCD_DIR RCD_ORDER RCD_SCRIPTS d11989 1 a11991 1 RCD_SCRIPTS_EXAMPLEDIR d11993 1 a11995 1 RCD_SCRIPTS_SHELL a11996 3 RCD_SUBR a12052 4 ROCKSPEC_NAME ROCKSPEC_SPECFILE d12245 1 a12245 1 SHORTNAME a12247 1 SIGN_PACKAGES d12249 1 a12251 1 SITE_SPECIFIC_PKGS d12253 1 a12255 1 SKIP_PORTABILITY_CHECK d12257 1 a12259 1 SMF_MANIFEST d12261 1 a12263 1 SMF_METHOD_SHELL d12265 1 a12267 1 SMF_NAME d12269 1 a12271 1 SMF_SRCDIR d12273 1 a12275 1 SNIPROXY_USER d12277 1 a12279 1 SPECIAL_PERMS d12281 1 a12283 1 SSH_SUID d12285 1 a12287 1 STEP_MSG d12289 1 a12291 1 STRIP_DBG d12293 1 a12295 1 STRIP_DEBUG_SUPPORTED d12297 1 a12299 1 SU d12301 1 a12303 1 SUBST_CLASSES d12305 1 a12307 1 SUBST_FILTER_CMD d12309 1 a12311 1 SUBST_SED d12313 1 a12315 1 SUBST_SKIP_TEXT_CHECK d12317 1 a12319 1 SUBST_VARS d12321 1 a12323 1 SUSE_PREFER d12325 1 a12327 9 SVN_EXTRACTDIR SVN_REPO SVN_REPOSITORIES SVN_REVISION TERMCAP_TYPE d12329 1 a12331 1 TERMINFO_TYPE d12333 1 a12335 1 TEST_DEPENDS d12337 1 a12339 1 TEST_ENV d12341 1 a12343 1 TEST_MAKE_FLAGS d12345 1 a12347 1 TEXLIVE_IGNORE_PATTERNS d12349 1 a12351 1 TEXMFSITE d12353 1 a12355 1 TEX_HYPHEN_DAT d12357 1 a12359 1 TEX_TEXMF_DIRS d12361 1 a12363 1 TO d12365 1 a12367 1 TOOLS_ARGS d12369 1 a12371 1 TOOLS_CMD d12373 1 a12375 1 TOOLS_DIR d12377 1 a12379 1 TOOLS_GNU_MISSING d12381 1 a12383 1 TOOLS_NOOP d12385 1 a12387 1 TOOLS_SCRIPT a12388 3 TTF_FONTDIR d12541 1 a12541 1 XXXX a12543 1 YES d12545 1 a12547 1 ZSH_STATIC d12549 1 a12551 1 _vargroups d12553 1 a12555 1 all d12557 1 a12559 1 aslr d12561 1 a12563 1 autoconf d12565 1 a12567 1 autoreconf d12569 1 a12571 1 bash d12573 1 a12575 1 bin-install d12577 1 a12579 1 bootstrap-depends d12581 1 a12583 1 broken_on_platform d12585 1 a12587 1 build-env d12589 1 a12591 1 buildlink-oss-soundcard-h d12593 1 a12595 1 c++ d12597 1 a12599 1 cce d12601 1 a12603 1 changes d12605 1 a12607 1 changes-entry-noupdate d12609 1 a12611 1 check-clean d12613 1 a12615 1 check-files-clean d12617 1 a12619 1 checksum d12621 1 a12623 1 clean d12625 1 a12627 1 cleandir d12629 1 a12631 1 commit-changes-entry d12633 1 a12635 1 compiler d12637 1 a12639 1 config.guess d12641 1 a12643 1 configuration d12645 1 a12647 1 configure-help d12649 1 a12651 1 cputime d12653 1 a12655 1 csh a12656 3 cvs d12701 1 a12701 1 do-install a12703 1 emul d12705 1 a12707 1 emulator d12709 1 a12711 1 enomem d12713 1 a12715 1 errx d12717 1 a12719 1 feature d12721 1 a12723 1 fetch d12725 1 a12727 1 follows d12729 1 a12731 1 form d12733 1 a12735 1 fortify a12736 3 fossil d12761 1 a12761 1 git a12763 1 github d12765 1 a12767 1 gnu d12769 1 a12771 1 go d12773 1 a12775 1 golang d12777 1 a12779 1 hashbang a12780 2 a12781 1 hg a12831 1 mercurial d12833 1 a12835 1 meta-package d12837 1 a12839 1 mit-krb5 d12841 1 a12843 1 mount d12845 1 a12847 1 mremap d12849 1 a12851 1 nbcompat d12853 1 a12855 1 obstack d12857 1 a12859 1 occurs d12861 1 a12863 1 options d12865 1 a12867 1 order d12869 1 a12871 1 override-intltool d12873 1 a12875 1 package d12877 1 a12879 1 partial d12881 1 a12883 1 pax d12885 1 a12887 1 pbulk-index d12889 1 a12891 1 perl d12893 1 a12895 1 perms d12897 1 a12899 1 pkg-build-options d12901 1 a12903 1 pkg_build_options d12905 1 a12907 1 plist d12909 1 a12911 1 post-fetch d12913 1 a12915 1 pre-configure d12917 1 a12919 1 pre-fetch d12921 1 a12923 1 print-plist d12925 1 a12927 1 privileged-install-hook d12929 1 a12931 1 python d12933 1 a12935 1 regcomp d12937 1 a12939 1 rename d12941 1 a12943 1 replace d12945 1 a12947 1 reproducible d12949 1 a12951 1 root d12953 1 a12955 1 setenv d12957 1 a12959 1 setprogname d12961 1 a12963 1 sh d12965 1 a12967 1 show-all d12969 1 a12971 1 show-depends d12973 1 a12975 1 show-distfiles d12977 1 a12979 1 show-subdir-var d12981 1 a12983 1 show-var d12985 1 a12987 1 snprintf d12989 1 a12991 1 st_mode d12993 1 d12996 1 a12996 1 strip d13001 1 a13001 1 subversion a13003 1 sun a13004 2 a13005 1 svn @ 1.271 log @doc/pkgsrc.*: regen @ text @a165 2
    12.1.3. R packages
    12.1.4. TeX packages
    a2799 2
    12.1.3. R packages
    12.1.4. TeX packages
    a3060 2
    12.1.3. R packages
    12.1.4. TeX packages
    a3231 12

    12.1.3. R packages

    Simple R packages from CRAN are handled automatically by R2pkg, including dependencies.

    12.1.4. TeX packages

    TeX and LaTeX packages from CTAN are handled automatically by url2pkg, including dependencies.

    d8945 1 a8945 1
    d8990 1 a8990 1

    24.1.

    d9006 1 a9006 1

    24.2.

    d9024 1 a9024 1

    24.3.

    d9042 1 a9042 1

    24.4.

    d9055 1 a9055 1

    24.5.

    d9071 1 a9071 1

    24.6.

    d9095 1 a9095 1

    24.7.

    d9120 1 a9120 1

    24.8.

    d9168 1 a9168 1

    24.9.

    d11290 1 a11290 1 LAPACK_LIBS a11292 1 LATEX2HTML_ICONPATH d11294 1 a11296 1 LDCONFIG_REMOVE_CMD d11298 1 a11300 1 LEAFNODE_GROUP d11302 1 a11304 1 LIBDVDCSS_HOMEPAGE d11306 1 a11308 1 LIBRSVG_TYPE d11310 1 a11312 1 LIBTOOLIZE_PLIST d11314 1 a11316 1 LIBUSB_TYPE d11318 1 a11320 1 LINKER_RPATH_FLAG d11322 1 a11324 1 LINUX_BASE_NODEPS d11326 1 a11328 1 LINUX_BASE_REQUIRED d11330 1 a11332 1 LOCALBASE d11334 1 a11336 1 LOCALPATCHES d11338 1 a11340 1 LOVE_GAME d11342 1 a11344 1 LP64PLATFORMS d11346 1 a11348 1 MAILAGENT_DOMAIN d11350 1 a11352 1 MAILAGENT_FQDN d11354 1 a11356 1 MAJORDOMO_HOMEDIR d11358 1 a11360 1 MAKEINFO_ARGS d11362 1 a11364 1 MAKE_DIRS_PERMS d11366 1 a11368 1 MAKE_FILE d11370 1 a11372 1 MAKE_JOBS d11374 1 a11376 1 MAKE_PROGRAM d11378 1 a11380 1 MANZ d11382 1 a11384 1 MASTER_SITE_BACKUP d11386 1 a11388 1 MASTER_SITE_GNOME d11390 1 a11392 1 MASTER_SITE_LOCAL d11394 1 a11396 1 MASTER_SITE_OPENOFFICE d11398 1 a11400 1 MASTER_SITE_PERL_CPAN d11402 1 a11404 1 MASTER_SITE_SUSE d11406 1 a11408 1 MASTER_SITE_XCONTRIB d11410 1 a11412 1 MASTER_SORT d11414 1 a11416 1 MASTER_SORT_REGEX d11418 1 a11420 1 MEDIATOMB_GROUP d11422 1 a11424 1 MIPSPROBASE d11426 1 a11428 1 MIREDO_USER d11430 1 a11432 1 MKDIR d11434 1 a11436 1 MLDONKEY_HOME d11438 1 a11440 1 MONOTONE_GROUP d11442 1 a11444 1 MOTIFBASE d11446 1 a11448 1 MOTIF_TYPE_DEFAULT d11450 1 a11452 1 MSGFMT_STRIP_MSGCTXT d11454 1 a11456 1 MTOOLS_ENABLE_FLOPPYD d11458 1 a11460 1 MV d11462 1 a11464 1 MYSQL_DATADIR d11466 1 a11468 1 MYSQL_GROUP d11470 1 a11472 1 MYSQL_USER d11474 1 a11476 1 MYSQL_VERSION_DEFAULT d11478 1 a11480 1 NAGIOSDIR d11482 1 a11484 1 NAGIOS_USER d11486 1 a11488 1 NATIVE_APPEND_ELF d11490 1 a11492 1 NATIVE_MACHINE_PLATFORM d11494 1 a11496 1 NBPAX_PROGRAM_PREFIX d11498 1 a11500 1 NMH_EDITOR d11502 1 a11504 1 NMH_PAGER d11506 1 a11508 1 NONZERO_FILESIZE_P d11510 1 a11512 1 NOT_FOR_PLATFORM d11514 1 a11516 1 NOT_PAX_MPROTECT_SAFE d11518 1 a11520 1 NO_CHECKSUM d11522 1 a11524 1 NO_SKIP d11526 1 a11528 1 NULLMAILER_GROUP d11530 1 a11532 1 OASIS d11534 1 a11536 1 OBJHOSTNAME d11538 1 a11540 1 OCAML_FINDLIB_DIRS d11542 1 a11544 1 OCAML_FINDLIB_REGISTER_VERBOSE d11546 1 a11548 1 OCAML_TOPKG_DOCDIR d11550 1 a11552 1 OCAML_USE_FINDLIB d11554 1 a11556 1 OCAML_USE_OASIS d11558 1 a11560 1 OCAML_USE_OPAM d11562 1 a11564 1 OCAML_USE_TOPKG d11566 1 a11568 1 ONLY_FOR_COMPILER d11570 1 a11572 1 OPENSSH_CHROOT d11574 1 a11576 1 OPENSSH_USER d11578 1 a11580 1 OPSYS_EMULDIR d11582 1 a11584 1 OSX d11586 1 a11588 1 OS_HAVE_ALSA d11590 1 a11592 1 OS_VARIANT d11594 1 a11596 1 OTF_FONTS_DIR d11598 1 a11600 1 OVERRIDE_GEMSPEC d11602 1 a11604 1 OVERRIDE_ROCKSPEC d11606 1 a11608 1 OWN_DIRS_PERMS d11610 1 a11612 1 P4PORT d11614 1 a11616 1 P4USER d11618 1 a11620 1 PALMOS_DEFAULT_SDK d11622 1 a11624 1 PAM_DEFAULT d11626 1 a11628 1 PASSIVE_FETCH d11630 1 a11632 1 PATCHFILES d11634 1 a11636 1 PATCH_DEBUG d11638 1 a11640 1 PATCH_DIST_CAT d11642 1 a11644 1 PATCH_FUZZ_FACTOR d11646 1 a11648 1 PATH d11650 1 a11652 1 PEAR d11654 1 a11656 1 PEAR_CHANNEL_ALIAS d11658 1 a11660 1 PEAR_CMD d11662 1 a11664 1 PEAR_PACKAGE_XML d11666 1 a11668 1 PERL5_CONFIGURE d11670 1 a11672 1 PERL5_LDFLAGS d11674 1 a11676 1 PERL5_MODULE_TYPE d11678 1 a11680 1 PERL5_PACKLIST_DIR d11682 1 a11684 1 PERL5_SITEBASE d11686 1 a11688 1 PERL5_VENDORBASE d11690 1 a11692 1 PFVAR_H d11694 1 a11696 1 PGGROUP d11698 1 a11700 1 PGPKGSRCDIR d11702 1 a11704 1 PGSQL_VERSIONS_ACCEPTED d11706 1 a11708 1 PGUSER d11710 1 a11712 1 PHP d11714 1 a11716 1 PHPPKGSRCDIR d11718 1 a11720 1 PHP_CHECK_INSTALLED d11722 1 a11724 1 PHP_INITIAL_TEENY d11726 1 a11728 1 PHP_VERSION d11730 1 a11732 1 PHP_VERSIONS_INCOMPATIBLE d11734 1 a11736 1 PHP_VERSION_REQD d11738 1 a11740 1 PKGCONFIG_BASE d11742 1 a11744 1 PKGCONFIG_OVERRIDE d11746 1 a11748 1 PKGDIR d11750 1 a11752 1 PKGINFODIR d11754 1 a11756 1 PKGMANDIR d11758 1 a11760 1 PKGNAME_REQD a11761 2 a11762 1 PKGSRC_BLAS_TYPES a12632 1 atlas d12634 1 a12636 1 automake d12638 1 a12640 1 awk d12642 1 a12644 1 big-endian a12645 2 a12646 1 blas a12884 1 lapack d12886 1 a12888 1 libnbcompat d12890 1 a12892 1 libtool d12894 1 a12896 1 license d12898 1 a12900 1 little-endian d12902 1 a12904 1 locking d12906 1 a12908 1 make d12910 1 a12912 1 memory d12914 1 a12916 1 meta d12918 1 a12920 1 meta_package a12921 2 a12922 1 mkl a12944 1 openblas d12946 1 a12948 1 options.mk d12950 1 a12952 1 override d12954 1 a12956 1 override-message-intltool d12958 1 a12960 1 parallel d12962 1 a12964 1 path d12966 1 a12968 1 paxctl d12970 1 a12972 1 pc d12974 1 a12976 1 perl5 d12978 1 a12980 1 php d12982 1 a12984 1 pkg-config d12986 1 a12988 1 platform d12990 1 a12992 1 post-extract d12994 1 a12996 1 post-wrapper d12998 1 a13000 1 pre-extract d13002 1 a13004 1 print-go-deps d13006 1 a13008 1 print-summary-data d13010 1 a13012 1 pypi d13014 1 a13016 1 readme-all d13018 1 a13020 1 relro d13022 1 a13024 1 reorder d13026 1 a13028 1 replace_interpreter d13030 1 a13032 1 resolv d13034 1 a13036 1 ruby d13038 1 a13040 1 setgid d13042 1 a13044 1 setuid d13046 1 a13048 1 show d13050 1 a13052 1 show-build-defs d13054 1 a13056 1 show-deps d13058 1 a13060 1 show-downlevel d13062 1 a13064 1 show-tools d13066 1 a13068 1 show-vars d13070 1 a13072 1 ssp d13074 1 a13076 1 stage-install a13077 3 strnlen @ 1.270 log @doc/pkgsrc.*: regen @ text @d166 2 d2802 2 d3065 2 d3238 12 d8963 1 a8963 1
    d9008 1 a9008 1

    24.1.

    d9024 1 a9024 1

    24.2.

    d9042 1 a9042 1

    24.3.

    d9060 1 a9060 1

    24.4.

    d9073 1 a9073 1

    24.5.

    d9089 1 a9089 1

    24.6.

    d9113 1 a9113 1

    24.7.

    d9138 1 a9138 1

    24.8.

    d9186 1 a9186 1

    24.9.

    d11308 3 d11312 1 a11314 1 LDCONFIG_ADD_CMD d11316 1 a11318 1 LEAFNODE_DATA_DIR d11320 1 a11322 1 LEAFNODE_USER d11324 1 a11326 1 LIBDVDCSS_MASTER_SITES d11328 1 a11330 1 LIBTOOL d11332 1 a11334 1 LIBTOOL_M4_OVERRIDE d11336 1 a11338 1 LICENSE d11340 1 a11342 1 LINK_RPATH_FLAG d11344 1 a11346 1 LINUX_BASE_PREFERRED d11348 1 a11350 1 LINUX_LOCALES d11352 1 a11354 1 LOCALBASE_LOCKTYPE d11356 1 a11358 1 LOVE_DATA d11360 1 a11362 1 LOVE_VERSION d11364 1 a11366 1 MACHINE_PLATFORM d11368 1 a11370 1 MAILAGENT_EMAIL d11372 1 a11374 1 MAILAGENT_ORGANIZATION d11376 1 a11378 1 MAJOR_OS_VERSION d11380 1 a11382 1 MAKE_DIRS d11384 1 a11386 1 MAKE_ENV d11388 1 a11390 1 MAKE_FLAGS d11392 1 a11394 1 MAKE_JOBS_SAFE d11396 1 a11398 1 MANINSTALL d11400 1 a11402 1 MASTER_SITES d11404 1 a11406 1 MASTER_SITE_CYGWIN d11408 1 a11410 1 MASTER_SITE_GNU d11412 1 a11414 1 MASTER_SITE_MOZILLA d11416 1 a11418 1 MASTER_SITE_OVERRIDE d11420 1 a11422 1 MASTER_SITE_SUNSITE d11424 1 a11426 1 MASTER_SITE_TEX_CTAN d11428 1 a11430 1 MASTER_SITE_XEMACS d11432 1 a11434 1 MASTER_SORT_RANDOM d11436 1 a11438 1 MECAB_CHARSET d11440 1 a11442 1 MEDIATOMB_USER d11444 1 a11446 1 MIREDO_GROUP d11448 1 a11450 1 MISSING_FEATURES d11452 1 a11454 1 MLDONKEY_GROUP d11456 1 a11458 1 MLDONKEY_USER d11460 1 a11462 1 MONOTONE_USER d11464 1 a11466 1 MOTIF_TYPE d11468 1 a11470 1 MPI_TYPE d11472 1 a11474 1 MSGFMT_STRIP_MSGID_PLURAL d11476 1 a11478 1 MUST d11480 1 a11482 1 MYSQL_CHARSET d11484 1 a11486 1 MYSQL_EXTRA_CHARSET d11488 1 a11490 1 MYSQL_PKGSRCDIR d11492 1 a11494 1 MYSQL_VERSIONS_ACCEPTED d11496 1 a11498 1 NAGIOSCMD_GROUP d11500 1 a11502 1 NAGIOS_GROUP d11504 1 a11506 1 NATIVE_APPEND_ABI d11508 1 a11510 1 NATIVE_EXEC_FMT d11512 1 a11514 1 NATIVE_OBJECT_FMT d11516 1 a11518 1 NETBSD_LOGIN_NAME d11520 1 a11522 1 NMH_MTA d11524 1 a11526 1 NOLOGIN d11528 1 a11530 1 NOTE d11532 1 a11534 1 NOT_PAX_ASLR_SAFE d11536 1 a11538 1 NO_BUILD d11540 1 a11542 1 NO_CONFIGURE d11544 1 a11546 1 NS_PREFERRED d11548 1 a11550 1 NULLMAILER_USER d11552 1 a11554 1 OASIS_BUILD_ARGS d11556 1 a11558 1 OBJMACHINE d11560 1 a11562 1 OCAML_FINDLIB_REGISTER d11564 1 a11566 1 OCAML_SITELIBDIR d11568 1 a11570 1 OCAML_USE_DUNE d11572 1 a11574 1 OCAML_USE_JBUILDER d11576 1 a11578 1 OCAML_USE_OASIS_DYNRUN d11580 1 a11582 1 OCAML_USE_OPT_COMPILER d11584 1 a11586 1 OMF d11588 1 a11590 1 ONLY_FOR_PLATFORM d11592 1 a11594 1 OPENSSH_GROUP d11596 1 a11598 1 OPSYS d11600 1 a11602 1 OSS_TYPE d11604 1 a11606 1 OSX_TOLERATE_SDK_SKEW d11608 1 a11610 1 OS_HAVE_RCD d11612 1 a11614 1 OS_VERSION d11616 1 a11618 1 OVERRIDE_DIRDEPTH d11620 1 a11622 1 OVERRIDE_GNU_CONFIG_SCRIPTS d11624 1 a11626 1 OWN_DIRS d11628 1 a11630 1 P4GROUP d11632 1 a11634 1 P4ROOT d11636 1 a11638 1 PACKAGES d11640 1 a11642 1 PAMBASE d11644 1 a11646 1 PAPERSIZE d11648 1 a11650 1 PATCHDIR d11652 1 a11654 1 PATCH_ARGS d11656 1 a11658 1 PATCH_DIST_ARGS d11660 1 a11662 1 PATCH_DIST_STRIP d11664 1 a11666 1 PATCH_STRIP d11668 1 a11670 1 PCCBASE d11672 1 a11674 1 PEAR_CHANNEL d11676 1 a11678 1 PEAR_CHANNEL_VERSION d11680 1 a11682 1 PEAR_LIB d11684 1 a11686 1 PERL5 d11688 1 a11690 1 PERL5_CONFIGURE_DIRS d11692 1 a11694 1 PERL5_LICENSE d11696 1 a11698 1 PERL5_PACKLIST d11700 1 a11702 1 PERL5_PERLBASE d11704 1 a11706 1 PERL5_USE_PACKLIST d11708 1 a11710 1 PFCTL d11712 1 a11714 1 PF_VERSION d11716 1 a11718 1 PGHOME d11720 1 a11722 1 PGSQL_TYPE d11724 1 a11726 1 PGSQL_VERSION_DEFAULT d11728 1 a11730 1 PG_LIB_EXT d11732 1 a11734 1 PHPCOMMON_MK d11736 1 a11738 1 PHP_BASE_VERS d11740 1 a11742 1 PHP_EXTENSION_DIR d11744 1 a11746 1 PHP_PKG_PREFIX d11748 1 a11750 1 PHP_VERSIONS_ACCEPTED d11752 1 a11754 1 PHP_VERSION_DEFAULT d11756 1 a11758 1 PILRC_USE_GTK d11760 1 a11762 1 PKGCONFIG_FILE d11764 1 a11766 1 PKGCONFIG_OVERRIDE_STAGE d11768 1 a11770 1 PKGGNUDIR d11772 1 a11774 1 PKGLOCALEDIR d11776 1 a11778 1 PKGNAME d11780 1 a11782 1 PKGPATH d11784 1 d12655 1 d12657 2 d12660 1 a12662 1 autoreconf d12664 1 a12666 1 bash d12668 1 a12670 1 bin-install d12672 1 d12911 1 d12913 2 d12916 1 a12918 1 libs d12920 1 a12922 1 licence d12924 1 a12926 1 lintl d12928 1 a12930 1 lock d12932 1 a12934 1 lvalue d12936 1 a12938 1 makesum d12940 1 a12942 1 mercurial d12944 1 a12946 1 meta-package d12948 1 a12950 1 mit-krb5 d12952 1 d12975 1 d12977 2 d12980 1 a12982 1 order d12984 1 a12986 1 override-intltool d12988 1 a12990 1 package d12992 1 a12994 1 partial d12996 1 a12998 1 pax d13000 1 a13002 1 pbulk-index d13004 1 a13006 1 perl d13008 1 a13010 1 perms d13012 1 a13014 1 pkg-build-options d13016 1 a13018 1 pkg_build_options d13020 1 a13022 1 plist d13024 1 a13026 1 post-fetch d13028 1 a13030 1 pre-configure d13032 1 a13034 1 pre-fetch d13036 1 a13038 1 print-plist d13040 1 a13042 1 privileged-install-hook d13044 1 a13046 1 python d13048 1 a13050 1 regcomp d13052 1 a13054 1 rename d13056 1 a13058 1 replace d13060 1 a13062 1 reproducible d13064 1 a13066 1 root d13068 1 a13070 1 setenv d13072 1 a13074 1 setprogname d13076 1 a13078 1 sh d13080 1 a13082 1 show-all d13084 1 a13086 1 show-depends d13088 1 a13090 1 show-distfiles d13092 1 a13094 1 show-subdir-var d13096 1 a13098 1 show-var d13100 1 a13102 1 snprintf d13104 1 a13106 1 st_mode d13108 1 d13111 1 a13111 1 strip @ 1.269 log @doc/pkgsrc.*: regen @ text @d966 1 a966 1 2019Q1.

    d992 2 a993 2

    The tar file for the stable branch 2019Q1 is in the directory pkgsrc-2019Q1 and is also called pkgsrc.tar.gz.

    d996 1 a996 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2019Q1/pkgsrc.tar.gz
    d1011 1 a1011 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2019Q1 -P pkgsrc
    d1096 1
    a1096 1
    	-rpkgsrc-2019Q1 option.

    d1341 1 a1341 1 to the root users crontab(5) entry. For example the entry d1370 1 a1370 1 see daily.conf(5) and security.conf(5) for more details. d1561 1 a1561 1

    If you invoke the make(1) command with d1569 1 a1569 1

    If you want to know the value of a certain make(1) d1572 1 a1572 1 target. e.g. to show the expansion of the make(1) d1585 1 a1585 1 install a binary package - if available - via pkg_add(1), d1589 1 a1589 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1628 1 a1628 1 make(1) from the base system, it is in the directory d1770 1 a1770 1 privileges using su(1) d2011 1 a2011 1 another system with pkg_add(1). This saves having to build d2602 1 a2602 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2654 1 a2654 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2728 1 a2728 1 scripts and to make(1). Some package authors ignore the d3553 1 a3553 1 an argument to patch(1) that sets the pathname strip count to d3563 1 a3563 1 this package which have been reported with send-pr(1). d3916 1 a3916 1

    This shell script is invoked twice by pkg_add(1). d3921 2 a3922 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 17.1, “Files and directories outside the installation prefix”. d3942 2 a3943 2 See pkg_delete(1) and pkg_create(1) for more information. d4082 1 a4082 1 the make(1) system as a programming language for a big system d4088 1 a4088 1 like awk(1) programs. To make sure that every shell command runs d4102 1 a4102 1 make(1) for the second time, the file exists and will not be d4120 1 a4120 1

    You might remember that make(1) sometimes removes d4124 1 a4124 1 when one of the commands fails (like false(1) above).

    d4133 1 a4133 1 !=, which are described in the make(1) man d4151 1 a4151 1 interpreted as delimiters, just like in sh(1).

    d4208 1 a4208 1

    Example 3 can handle arbitrary strings, since printf(1) only d4212 1 a4212 1 skipped by the shell. For printf(1) this doesn't make a difference, d4256 1 a4256 1 ${EGFILES} is replaced with an empty string by make(1). d4305 1 a4305 1 - see the pkg_create(1) man page for a full list. d4449 1 a4449 1 The files are later concatenated using cat(1), and the order of things is d5535 1 a5535 1 make(1) variable that the user can set to override the default d5753 1 a5753 1 install files according to hier(7), with the exception that d6071 1 a6071 1 patch(1) can be handed in d6073 1 a6073 1

    By default patch(1) is given special args to make d6252 1 a6252 1 install(1) command that have the owner, group and d6298 1 a6298 1

    If set to yes, do not run strip(1) d6375 1 a6375 1

    This target does a pkg_delete(1) in the d6381 1 a6381 1

    Add a "-v" to the pkg_delete(1) command.

    d6390 1 a6390 1 -R to the pkg_delete(1) d6542 1 a6542 1

    This target invokes pkg_info(1) for the current d6658 1 a6658 1

    If the package installs files via tar(1) or d6685 1 a6685 1 it will be installed via pkg_add(1). If not, d6690 1 a6690 1 pkg_add(1) if:

    d6875 1 a6875 1 make(1) (for example .if or d7125 1 a7125 1 pkg_info(1).

    d7226 1 a7226 1

    pkg_add(1) is able to detect attempts to install packages d7237 1 a7237 1 exported in pkg_summary(5) files and consumed by binary package d7288 1 a7288 1 not be deleted using pkg_delete(1) unless the d7421 1 a7421 1 sed(1) that specify the actual substitution. Every sed d7620 1 a7620 1 files, i.e. files that are loaded via dlopen(3), NOT d7630 1 a7630 1 the cc(1) or ld(1) line with ${LIBTOOL} d7647 2 a7648 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7656 1 a7656 1 ldconfig(8).

    d8709 1 a8709 1 document. Next, generate an uuencoded gzipped tar(1) d8712 1 a8712 1 either with the send-pr(1) command, or if you don't have d8909 1 a8909 1 search the pkg_summary(5) database for PREV_PKGPATH d8945 1 a8945 1
    d8990 1 a8990 1

    24.1.

    d8999 1 a8999 1 to the pkgsrc-internal invocations of make(1), while d9006 1 a9006 1

    24.2.

    d9015 1 a9015 1 make(1) program that is used in the pkgsrc d9024 1 a9024 1

    24.3.

    d9042 1 a9042 1

    24.4.

    d9055 1 a9055 1

    24.5.

    d9071 1 a9071 1

    24.6.

    d9084 1 a9084 1 which is documented in the make(1) man page and which is d9095 1 a9095 1

    24.7.

    d9113 1 a9113 1 send-pr(1) appear here. Please do not report your bugs here d9120 1 a9120 1

    24.8.

    d9168 1 a9168 1

    24.9.

    d10029 1 a10029 1 improvements. Why you would want this when Berkeley yacc(1) is part d11306 3 d11310 1 a11312 1 LIBTOOLIZE_PLIST d11314 1 a11316 1 LIBUSB_TYPE d11318 1 a11320 1 LINKER_RPATH_FLAG d11322 1 a11324 1 LINUX_BASE_NODEPS d11326 1 a11328 1 LINUX_BASE_REQUIRED d11330 1 a11332 1 LOCALBASE d11334 1 a11336 1 LOCALPATCHES d11338 1 a11340 1 LOVE_GAME d11342 1 a11344 1 LP64PLATFORMS d11346 1 a11348 1 MAILAGENT_DOMAIN d11350 1 a11352 1 MAILAGENT_FQDN d11354 1 a11356 1 MAJORDOMO_HOMEDIR d11358 1 a11360 1 MAKEINFO_ARGS d11362 1 a11364 1 MAKE_DIRS_PERMS d11366 1 a11368 1 MAKE_FILE d11370 1 a11372 1 MAKE_JOBS d11374 1 a11376 1 MAKE_PROGRAM d11378 1 a11380 1 MANZ d11382 1 a11384 1 MASTER_SITE_BACKUP d11386 1 a11388 1 MASTER_SITE_GNOME d11390 1 a11392 1 MASTER_SITE_LOCAL d11394 1 a11396 1 MASTER_SITE_OPENOFFICE d11398 1 a11400 1 MASTER_SITE_PERL_CPAN d11402 1 a11404 1 MASTER_SITE_SUSE d11406 1 a11408 1 MASTER_SITE_XCONTRIB d11410 1 a11412 1 MASTER_SORT d11414 1 a11416 1 MASTER_SORT_REGEX d11418 1 a11420 1 MEDIATOMB_GROUP d11422 1 a11424 1 MIPSPROBASE d11426 1 a11428 1 MIREDO_USER d11430 1 a11432 1 MKDIR d11434 1 a11436 1 MLDONKEY_HOME d11438 1 a11440 1 MONOTONE_GROUP d11442 1 a11444 1 MOTIFBASE d11446 1 a11448 1 MOTIF_TYPE_DEFAULT d11450 1 a11452 1 MSGFMT_STRIP_MSGCTXT d11454 1 a11456 1 MTOOLS_ENABLE_FLOPPYD d11458 1 a11460 1 MV d11462 1 a11464 1 MYSQL_DATADIR d11466 1 a11468 1 MYSQL_GROUP d11470 1 a11472 1 MYSQL_USER d11474 1 a11476 1 MYSQL_VERSION_DEFAULT d11478 1 a11480 1 NAGIOSDIR d11482 1 a11484 1 NAGIOS_USER d11486 1 a11488 1 NATIVE_APPEND_ELF d11490 1 a11492 1 NATIVE_MACHINE_PLATFORM d11494 1 a11496 1 NBPAX_PROGRAM_PREFIX d11498 1 a11500 1 NMH_EDITOR d11502 1 a11504 1 NMH_PAGER d11506 1 a11508 1 NONZERO_FILESIZE_P d11510 1 a11512 1 NOT_FOR_PLATFORM d11514 1 a11516 1 NOT_PAX_MPROTECT_SAFE d11518 1 a11520 1 NO_CHECKSUM d11522 1 a11524 1 NO_SKIP d11526 1 a11528 1 NULLMAILER_GROUP d11530 1 a11532 1 OASIS d11534 1 a11536 1 OBJHOSTNAME d11538 1 a11540 1 OCAML_FINDLIB_DIRS d11542 1 a11544 1 OCAML_FINDLIB_REGISTER_VERBOSE d11546 1 a11548 1 OCAML_TOPKG_DOCDIR d11550 1 a11552 1 OCAML_USE_FINDLIB d11554 1 a11556 1 OCAML_USE_OASIS d11558 1 a11560 1 OCAML_USE_OPAM d11562 1 a11564 1 OCAML_USE_TOPKG d11566 1 a11568 1 ONLY_FOR_COMPILER d11570 1 a11572 1 OPENSSH_CHROOT d11574 1 a11576 1 OPENSSH_USER d11578 1 a11580 1 OPSYS_EMULDIR d11582 1 a11584 1 OSX d11586 1 a11588 1 OS_HAVE_ALSA d11590 1 a11592 1 OS_VARIANT d11594 1 a11596 1 OTF_FONTS_DIR d11598 1 a11600 1 OVERRIDE_GEMSPEC d11602 1 a11604 1 OVERRIDE_ROCKSPEC d11606 1 a11608 1 OWN_DIRS_PERMS d11610 1 a11612 1 P4PORT d11614 1 a11616 1 P4USER d11618 1 a11620 1 PALMOS_DEFAULT_SDK d11622 1 a11624 1 PAM_DEFAULT d11626 1 a11628 1 PASSIVE_FETCH d11630 1 a11632 1 PATCHFILES d11634 1 a11636 1 PATCH_DEBUG d11638 1 a11640 1 PATCH_DIST_CAT d11642 1 a11644 1 PATCH_FUZZ_FACTOR d11646 1 a11648 1 PATH d11650 1 a11652 1 PEAR d11654 1 a11656 1 PEAR_CHANNEL_ALIAS d11658 1 a11660 1 PEAR_CMD d11662 1 a11664 1 PEAR_PACKAGE_XML d11666 1 a11668 1 PERL5_CONFIGURE d11670 1 a11672 1 PERL5_LDFLAGS d11674 1 a11676 1 PERL5_MODULE_TYPE d11678 1 a11680 1 PERL5_PACKLIST_DIR d11682 1 a11684 1 PERL5_SITEBASE d11686 1 a11688 1 PERL5_VENDORBASE d11690 1 a11692 1 PFVAR_H d11694 1 a11696 1 PGGROUP d11698 1 a11700 1 PGPKGSRCDIR d11702 1 a11704 1 PGSQL_VERSIONS_ACCEPTED d11706 1 a11708 1 PGUSER d11710 1 a11712 1 PHP d11714 1 a11716 1 PHPPKGSRCDIR d11718 1 a11720 1 PHP_CHECK_INSTALLED d11722 1 a11724 1 PHP_INITIAL_TEENY d11726 1 a11728 1 PHP_VERSION d11730 1 a11732 1 PHP_VERSIONS_INCOMPATIBLE d11734 1 a11736 1 PHP_VERSION_REQD d11738 1 a11740 1 PKGCONFIG_BASE d11742 1 a11744 1 PKGCONFIG_OVERRIDE d11746 1 a11748 1 PKGDIR d11750 1 a11752 1 PKGINFODIR d11754 1 a11756 1 PKGMANDIR d11758 1 a11760 1 PKGNAME_REQD d11762 1 a11764 1 PKGREVISION d11766 1 a11768 1 PKGSRC_COMPILER d11770 1 a11772 1 PKGSRC_LOCKTYPE d11774 1 a11776 1 PKGSRC_MESSAGE_RECIPIENTS d11778 1 a11780 1 PKGSRC_MKREPRO d11782 1 a11784 1 PKGSRC_SETENV d11786 1 a11788 1 PKGSRC_TODO d11790 1 a11792 1 PKGSRC_USE_FORTIFY d11794 1 a11796 1 PKGSRC_USE_SSP d11798 1 a11800 1 PKGTASKS_DATAFILE d11802 1 a11804 1 PKGTOOLS_ENV d11806 1 a11808 1 PKG_APACHE d11810 1 a11812 1 PKG_APACHE_DEFAULT d11814 1 a11816 1 PKG_BUILD_OPTIONS d11818 1 a11820 1 PKG_CONFIG d11822 1 a11824 1 PKG_CREATE_USERGROUP d11826 1 a11828 1 PKG_DEBUG_LEVEL d11830 1 a11832 1 PKG_DESTDIR_SUPPORT d11834 1 a11836 1 PKG_DISABLED_OPTIONS d11838 1 a11840 1 PKG_FC d11842 1 a11844 1 PKG_GECOS d11846 1 a11848 1 PKG_GROUPS d11850 1 a11852 1 PKG_HOME d11854 1 a11856 1 PKG_JAVA_HOME d11858 1 a11860 1 PKG_JVMS_ACCEPTED d11862 1 a11864 1 PKG_LEGACY_OPTIONS d11866 1 a11868 1 PKG_OPTIONS d11870 1 a11872 1 PKG_OPTIONS_LEGACY_OPTS d11874 1 a11876 1 PKG_OPTIONS_NONEMPTY_SETS d11878 1 a11880 1 PKG_OPTIONS_REQUIRED_GROUPS d11882 1 a11884 1 PKG_PHP d11886 1 a11888 1 PKG_PHP_VERSION d11890 1 a11892 1 PKG_REFCOUNT_DBDIR d11894 1 a11896 1 PKG_RESUME_TRANSFERS d11898 1 a11900 1 PKG_SUGGESTED_OPTIONS d11902 1 a11904 1 PKG_SYSCONFBASE d11906 1 a11908 1 PKG_SYSCONFDIR d11910 1 a11912 1 PKG_SYSCONFSUBDIR d11914 1 a11916 1 PKG_TOOLS_BIN d11918 1 a11920 1 PKG_UPDATE_FONTS_DB d11922 1 a11924 1 PKG_USERS_VARS d11926 1 a11928 1 PLIST d11930 1 a11932 1 PLIST_AWK_ENV d11934 1 a11936 1 PLIST_SUBST d11938 1 a11940 1 PLIST_VARS d11942 1 a11944 1 POST_FETCH_HOOK d11946 1 a11948 1 PREFER_NATIVE d11950 1 a11952 1 PREFER_PKGSRC d11954 1 a11956 1 PREPEND_PATH d11958 1 a11960 1 PRIVILEGED_STAGES d11962 1 a11964 1 PTHREAD_AUTO_VARS d11966 1 a11968 1 PTHREAD_LDFLAGS d11970 1 a11972 1 PTHREAD_OPTS d11974 1 a11976 1 PVM_SSH d11978 1 a11980 1 PYTHON_FOR_BUILD_ONLY d11982 1 a11984 1 PYTHON_VERSIONED_DEPENDENCIES d11986 1 a11988 1 PYTHON_VERSIONS_INCOMPATIBLE d11990 1 a11992 1 PYTHON_VERSION_REQD d11994 1 a11996 1 PY_NO_EGG d11998 1 a12000 1 QMAIL_ALIAS_USER d12002 1 a12004 1 QMAIL_LOG_USER d12006 1 a12008 1 QMAIL_PASSWD_USER d12010 1 a12012 1 QMAIL_QUEUE_DIR d12014 1 a12016 1 QMAIL_QUEUE_USER d12018 1 a12020 1 QMAIL_ROOT_USER d12022 1 a12024 1 QPOPPER_FAC d12026 1 a12028 1 QPOPPER_USER d12030 1 a12032 1 RASMOL_DEPTH d12034 1 a12036 1 RCD_ORDER d12038 1 a12040 1 RCD_SCRIPTS_DIR d12042 1 a12044 1 RCD_SCRIPTS_MODE d12046 1 a12048 1 RCD_SCRIPT_SRC d12050 1 a12052 1 RDOC d12054 1 a12056 1 READLINE_TYPE d12058 1 a12060 1 REAL_ROOT_USER d12062 1 a12064 1 RELAY_CTRL_DIR d12066 1 a12068 1 REPLACE_BASH d12070 1 a12072 1 REPLACE_KSH d12074 1 a12076 1 REPLACE_PERL6 d12078 1 a12080 1 REPLACE_RUBY d12082 1 a12084 1 REPLACE_RUBY_PAT d12086 1 a12088 1 REPLACE_TEXLUA d12090 1 a12092 1 REQD_DIRS_PERMS d12094 1 a12096 1 REQD_FILES_MODE d12098 1 a12100 1 RESOLV_AUTO_VARS d12102 1 a12104 1 RESOLV_LIBS d12106 1 a12108 1 ROCKSPEC_NAME d12110 1 a12112 1 ROOT_CMD d12114 1 a12116 1 ROOT_USER d12118 1 a12120 1 RPM d12122 1 a12124 1 RPM2PKG_PREFIX d12126 1 a12128 1 RPM2PKG_STRIP d12130 1 a12132 1 RPMFILES d12134 1 a12136 1 RPM_DB_PREFIX d12138 1 a12140 1 RSSH_RDIST_PATH d12142 1 a12144 1 RSSH_SCP_PATH d12146 1 a12148 1 RUBY d12150 1 a12152 1 RUBYGEM_NAME d12154 1 a12156 1 RUBY_ABI_VERSION d12158 1 a12160 1 RUBY_ARCHINC d12162 1 a12164 1 RUBY_BASE d12166 1 a12168 1 RUBY_BUILD_RDOC d12170 1 a12172 1 RUBY_DLEXT d12174 1 a12176 1 RUBY_DYNAMIC_DIRS d12178 1 a12180 1 RUBY_ENCODING_ARG d12182 1 a12184 1 RUBY_EXTCONF_CHECK d12186 1 a12188 1 RUBY_EXTCONF_MAKEFILE d12190 1 a12192 1 RUBY_INC d12194 1 a12196 1 RUBY_LIB_BASE d12198 1 a12200 1 RUBY_NOVERSION d12202 1 a12204 1 RUBY_RAILS d12206 1 a12208 1 RUBY_RAILS51_VERSION d12210 1 a12212 1 RUBY_RAILS_ACCEPTED d12214 1 a12216 1 RUBY_RAILS_REQD d12218 1 a12220 1 RUBY_RIDIR d12222 1 a12224 1 RUBY_SHLIB d12226 1 a12228 1 RUBY_SHLIBVER d12230 1 a12232 1 RUBY_SITEARCHLIB d12234 1 a12236 1 RUBY_SITELIB_BASE d12238 1 a12240 1 RUBY_SLEXT d12242 1 a12244 1 RUBY_STATICLIB d12246 1 a12248 1 RUBY_SYSRIDIR d12250 1 a12252 1 RUBY_VENDORARCHLIB d12254 1 a12256 1 RUBY_VENDORLIB_BASE d12258 1 a12260 1 RUBY_VERSION d12262 1 a12264 1 RUBY_VERSION_DEFAULT d12266 1 a12268 1 RUBY_VER_DIR d12270 1 a12272 1 RUN_LDCONFIG d12274 1 a12276 1 SCO d12278 1 a12280 1 SCREWS_USER d12282 1 a12284 1 SCROLLKEEPER_DATADIR d12286 1 a12288 1 SCROLLKEEPER_UPDATEDB d12290 1 a12292 1 SERIAL_DEVICES d12294 1 a12296 1 SETGID_GAMES_PERMS d12298 1 a12300 1 SH d12302 1 a12304 1 SHORTNAME d12306 1 a12308 1 SILC_CLIENT_WITH_PERL d12310 1 a12312 1 SKIP_DEPENDS d12314 1 a12316 1 SMF_INSTANCES d12318 1 a12320 1 SMF_METHODS d12322 1 a12324 1 SMF_METHOD_SRC d12326 1 a12328 1 SMF_PREFIX d12330 1 a12332 1 SNIPROXY_GROUP d12334 1 a12336 1 SOURCE_BUFFSIZE d12338 1 a12340 1 SPECIFIC_PKGS d12342 1 a12344 1 SSYNC_PAWD d12346 1 a12348 1 STRIP d12350 1 a12352 1 STRIP_DEBUG d12354 1 a12356 1 STRIP_FILES_SKIP d12358 1 a12360 1 SUBDIR d12362 1 a12364 1 SUBST_FILES d12366 1 a12368 1 SUBST_MESSAGE d12370 1 a12372 1 SUBST_SHOW_DIFF d12374 1 a12376 1 SUBST_STAGE d12378 1 a12380 1 SUNWSPROBASE d12382 1 a12384 1 SU_CMD d12386 1 a12388 1 SVN_REPO d12390 1 a12392 1 SVN_REVISION d12394 1 a12396 1 TERMINFO_DEFAULT d12398 1 a12400 1 TEST d12402 1 a12404 1 TEST_DIRS d12406 1 a12408 1 TEST_MAKE_CMD d12410 1 a12412 1 TEST_TARGET d12414 1 a12416 1 TEXLIVE_REV d12418 1 a12420 1 TEX_FORMATS d12422 1 a12424 1 TEX_HYPHEN_DEF d12426 1 a12428 1 THTTPD_LOG_FACILITY d12430 1 a12432 1 TOOLS_ALIASES d12434 1 a12436 1 TOOLS_BROKEN d12438 1 a12440 1 TOOLS_CREATE d12442 1 a12444 1 TOOLS_FAIL d12446 1 a12448 1 TOOLS_LDCONFIG d12450 1 a12452 1 TOOLS_PATH d12454 1 a12456 1 TOOL_DEPENDS d12458 1 a12460 1 TTF_FONTS_DIR d12462 1 a12464 1 UAC_REQD_EXECS d12466 1 a12468 1 UCSPI_SSL_USER d12470 1 a12472 1 UNPRIVILEGED d12474 1 a12476 1 UNPRIVILEGED_GROUPS d12478 1 a12480 1 UNWRAP_FILES d12482 1 a12484 1 UPDATE_GEMSPEC d12486 1 a12488 1 URI d12490 1 a12492 1 USERGROUP_PHASE d12494 1 a12496 1 USER_SPECIFIC_PKGS d12498 1 a12500 1 USE_APR d12502 1 a12504 1 USE_BUILTIN d12506 1 a12508 1 USE_CURSES d12510 1 a12512 1 USE_DB185 d12514 1 a12516 1 USE_GAMESGROUP d12518 1 a12520 1 USE_IMAKE d12522 1 a12524 1 USE_JAVA2 d12526 1 a12528 1 USE_LIBTOOL d12530 1 a12532 1 USE_NETBSD_REPO d12534 1 a12536 1 USE_PKGSRC_GCC_RUNTIME d12538 1 a12540 1 USE_RUBY_EXTCONF d12542 1 a12544 1 USE_RUBY_SETUP d12546 1 a12548 1 USE_TOOLS d12550 1 a12552 1 UUCP_USER d12554 1 a12556 1 VARNAME d12558 1 a12560 1 WARNING_MSG d12562 1 a12564 1 WCALC_CGIPATH d12566 1 a12568 1 WCALC_HTMLPATH d12570 1 a12572 1 WRAPPER_REORDER_CMDS d12574 1 a12576 1 WRKDIR_BASENAME d12578 1 a12580 1 WRKLOG d12582 1 a12584 1 WRKSRC d12586 1 a12588 1 WXGTK_DEFAULT d12590 1 a12592 1 X11 d12594 1 a12596 1 X11_PKGSRCDIR d12598 1 a12600 1 X509_CERTIFICATE d12602 1 a12604 1 XAW_TYPE d12606 1 a12608 1 XMKMF_FLAGS d12610 1 a12612 1 XXXX d12614 1 a12616 1 ZERO_FILESIZE_P d12618 1 a12620 1 __stdc__ d12622 1 a12624 1 add d12626 1 a12628 1 alternatives d12630 1 a12632 1 asprintf d12634 1 a12636 1 automake d12638 1 a12640 1 awk d12642 1 a12644 1 big-endian d12646 1 a12648 1 binpkg-list d12650 1 a12652 1 broken d12654 1 a12656 1 build d12658 1 a12660 1 buildlink-directories d12662 1 a12664 1 c d12666 1 a12668 1 ccache d12670 1 a12672 1 cdefs d12674 1 a12676 1 changes-entry d12678 1 a12680 1 check d12682 1 a12684 1 check-files d12686 1 a12688 1 check-vulnerable d12690 1 a12692 1 checksum-phase d12694 1 a12696 1 clean-depends d12698 1 a12700 1 commit d12702 1 a12704 1 compact d12706 1 a12708 1 conf d12710 1 a12712 1 config.sub d12714 1 a12716 1 configure d12718 1 a12720 1 configure_args d12722 1 a12724 1 create-usergroup d12726 1 a12728 1 ctf d12730 1 a12732 1 debug d12734 1 a12736 1 declare d12738 1 a12740 1 depend d12742 1 a12744 1 depends d12746 1 a12748 1 depends-fetch d12750 1 a12752 1 describe d12754 1 a12756 1 distclean d12758 1 a12760 1 dl d12762 1 a12764 1 do-build d12766 1 a12768 1 do-clean d12770 1 a12772 1 do-extract d12774 1 a12776 1 do-install d12778 1 a12780 1 emulation d12782 1 a12784 1 endian d12786 1 a12788 1 err d12790 1 a12792 1 etc d12794 1 a12796 1 features d12798 1 a12800 1 fetch-list d12802 1 a12804 1 forbids d12806 1 a12808 1 format d12810 1 a12812 1 fortify_source d12814 1 a12816 1 friend d12818 1 a12820 1 fts d12822 1 a12824 1 fts_open d12826 1 a12828 1 fts_set d12830 1 a12832 1 gcc d12834 1 a12836 1 getprogname d12838 1 a12840 1 git d12842 1 a12844 1 glob d12846 1 a12848 1 gnu_configure_strict d12850 1 a12852 1 go-deps d12854 1 a12856 1 guess-license d12858 1 a12860 1 heimdal d12862 1 a12864 1 hg d12866 1 a12868 1 increment d12870 1 a12872 1 interpreter d12874 1 a12876 1 iso d12878 1 a12880 1 krb d12882 1 a12884 1 ksh d12886 1 a12888 1 libnbcompat d12890 1 a12892 1 libtool d12894 1 a12896 1 license d12898 1 a12900 1 little-endian d12902 1 a12904 1 locking d12906 1 a12908 1 make d12910 1 a12912 1 memory d12914 1 a12916 1 meta d12918 1 a12920 1 meta_package d12922 1 a12924 1 mk.conf d12926 1 a12928 1 mprotect d12930 1 a12932 1 nb d12934 1 a12936 1 no d12938 1 a12940 1 obstack_ptr_grow d12942 1 a12944 1 only d12946 1 a12948 1 options.mk d12950 1 a12952 1 override d12954 1 a12956 1 override-message-intltool d12958 1 a12960 1 parallel d12962 1 a12964 1 path d12966 1 a12968 1 paxctl d12970 1 a12972 1 pc d12974 1 a12976 1 perl5 d12978 1 a12980 1 php d12982 1 a12984 1 pkg-config d12986 1 a12988 1 platform d12990 1 a12992 1 post-extract d12994 1 a12996 1 post-wrapper d12998 1 a13000 1 pre-extract d13002 1 a13004 1 print-go-deps d13006 1 a13008 1 print-summary-data d13010 1 a13012 1 pypi d13014 1 a13016 1 readme-all d13018 1 a13020 1 relro d13022 1 a13024 1 reorder d13026 1 a13028 1 replace_interpreter d13030 1 a13032 1 resolv d13034 1 a13036 1 ruby d13038 1 a13040 1 setgid d13042 1 a13044 1 setuid d13046 1 a13048 1 show d13050 1 a13052 1 show-build-defs d13054 1 a13056 1 show-deps d13058 1 a13060 1 show-downlevel d13062 1 a13064 1 show-tools d13066 1 a13068 1 show-vars d13070 1 a13072 1 ssp d13074 1 a13076 1 stage-install d13078 1 a13080 1 strong d13082 1 a13084 1 subversion d13086 1 a13088 1 sunpro d13090 1 a13092 1 svn d13094 1 a13096 1 tex d13098 1 a13100 1 tmp d13102 1 a13104 1 tools d13106 1 a13108 1 type d13110 1 a13112 1 undefined d13114 1 a13116 1 unlimit d13118 1 a13120 1 unprivileged-install-hook d13122 1 a13124 1 update d13126 1 a13128 1 upload-distfiles d13130 1 a13132 1 use_tools d13134 1 a13136 1 utimes d13138 1 a13140 1 verbose d13142 1 a13144 1 warn d13146 1 a13148 1 warnings d13150 1 a13152 1 weak d13154 1 a13156 1 wrapper d13158 1 @ 1.268 log @doc/pkgsrc.*: regen @ text @d3099 10 a3108 1 BUILD_DEPENDS instead of DEPENDS. d3113 1 a3113 1 BUILD_DEPENDS+= libxslt-[0-9]*:../../textproc/libxslt d5888 70 a5957 33
    ${MASTER_SITE_APACHE}
    ${MASTER_SITE_BACKUP}
    ${MASTER_SITE_CYGWIN}
    ${MASTER_SITE_DEBIAN}
    ${MASTER_SITE_FREEBSD}
    ${MASTER_SITE_FREEBSD_LOCAL}
    ${MASTER_SITE_GENTOO}
    ${MASTER_SITE_GNOME}
    ${MASTER_SITE_GNU}
    ${MASTER_SITE_GNUSTEP}
    ${MASTER_SITE_HASKELL_HACKAGE}
    ${MASTER_SITE_IFARCHIVE}
    ${MASTER_SITE_KDE}
    ${MASTER_SITE_MOZILLA}
    ${MASTER_SITE_MOZILLA_ALL}
    ${MASTER_SITE_MOZILLA_ESR}
    ${MASTER_SITE_MYSQL}
    ${MASTER_SITE_NETLIB}
    ${MASTER_SITE_OPENOFFICE}
    ${MASTER_SITE_OSDN}
    ${MASTER_SITE_PERL_CPAN}
    ${MASTER_SITE_PGSQL}
    ${MASTER_SITE_RUBYGEMS}
    ${MASTER_SITE_R_CRAN}
    ${MASTER_SITE_SOURCEFORGE}
    ${MASTER_SITE_SUNSITE}
    ${MASTER_SITE_SUSE}
    ${MASTER_SITE_TEX_CTAN}
    ${MASTER_SITE_XCONTRIB}
    ${MASTER_SITE_XEMACS}
    ${MASTER_SITE_XORG}
    
    d6717 1 a6717 1 are needed for building a package (like BUILD_DEPENDS) d7094 2 a7095 1 DEPENDS definitions, the d7104 3 a7106 2 BUILD_DEPENDS definition does not, marking a dependency that is only needed for building the package.

    d7109 11 a7119 3 BUILD_DEPENDS.

    The format for a BUILD_DEPENDS and a DEPENDS definition is:

    d7149 1 a7149 1 use the BUILD_DEPENDS definition:

    d7151 1 a7151 1 BUILD_DEPENDS+= itstool-[0-9]*:../../textproc/itstool d7154 3 d8945 1 a8945 1
    d8990 1 a8990 1

    24.1.

    d9006 1 a9006 1

    24.2.

    d9024 1 a9024 1

    24.3.

    d9042 1 a9042 1

    24.4.

    d9055 1 a9055 1

    24.5.

    d9071 1 a9071 1

    24.6.

    d9095 1 a9095 1

    24.7.

    d9120 1 a9120 1

    24.8.

    d9168 1 a9168 1

    24.9.

    d10423 2734 a13156 2574
    • #!

    • -lintl

    • 64bit

    • ABI

    • ACCEPTABLE_LICENSES

    • ACROREAD_FONTPATH

    • ADDITIONAL

    • AFAIK

    • AIX

    • ALLOW_VULNERABLE_PACKAGES

    • ALL_ENV

    • ALTERNATIVES_SRC

    • AMANDA_TMP

    • AMANDA_USER

    • AMANDA_VAR

    • APACHE_GROUP

    • APACHE_MODULE_NAME

    • APACHE_MODULE_SRC

    • APACHE_MODULE_SRCDIR

    • APACHE_PKG_PREFIX

    • APACHE_SUEXEC_CONFIGURE_ARGS

    • APACHE_SUEXEC_DOCROOT

    • APACHE_USER

    • APPEND_ABI

    • APPEND_ELF

    • ARLA_CACHE

    • AUDIT_PACKAGES_FLAGS

    • AUTOCONF_REQD

    • AUTOMAKE_OVERRIDE

    • AUTOMAKE_REQD

    • AUTO_MKDIRS

    • BDB185_DEFAULT

    • BDBBASE

    • BDB_ACCEPTED

    • BDB_DEFAULT

    • BDB_LIBS

    • BDB_TYPE

    • BIND_DIR

    • BIND_GROUP

    • BIND_USER

    • BINPKG_SITES

    • BIN_INSTALL_FLAGS

    • BISON_PKGDATADIR

    • BOOTSTRAP_DEPENDS

    • BOOTSTRAP_SETUPTOOLS

    • BROKEN

    • BROKEN_EXCEPT_ON_PLATFORM

    • BROKEN_ON_PLATFORM

    • BSDSRCDIR

    • BSDXSRCDIR

    • BSD_MAKE_ENV

    • BUILDLINK_AUTO_DIRS

    • BUILDLINK_AUTO_VARS

    • BUILDLINK_CFLAGS

    • BUILDLINK_CONTENTS_FILTER

    • BUILDLINK_CPPFLAGS

    • BUILDLINK_DEPMETHOD

    • BUILDLINK_FILES

    • BUILDLINK_FILES_CMD

    • BUILDLINK_FNAME_TRANSFORM

    • BUILDLINK_LDFLAGS

    • BUILDLINK_LIBS

    • BUILDLINK_OPSYS_SUPPORT_PTHREAD

    • BUILDLINK_PKGNAME

    • BUILDLINK_PREFIX

    • BUILDLINK_RPATHDIRS

    • BUILDLINK_TREE

    • BUILD_DEFS

    • BUILD_DEFS_EFFECTS

    • BUILD_DIRS

    • BUILD_ENV_SHELL

    • BUILD_MAKE_CMD

    • BUILD_MAKE_FLAGS

    • BUILD_TARGET

    • BUILTIN_FIND_FILES

    • BUILTIN_FIND_FILES_VAR

    • BUILTIN_FIND_GREP

    • BUILTIN_FIND_HEADERS

    • BUILTIN_FIND_HEADERS_VAR

    • BUILTIN_PKG

    • BUILTIN_TEST_CURSES_DEFINES

    • BUILTIN_TEST_CURSES_FUNCS

    • BUILTIN_VERSION_SCRIPT

    • BUILTIN_X11_TYPE

    • BUILTIN_X11_VERSION

    • CACTI_GROUP

    • CACTI_USER

    • CANNA_GROUP

    • CANNA_USER

    • CAT

    • CCACHE_BASE

    • CCACHE_DIR

    • CCACHE_LOGFILE

    • CC_VERSION

    • CC_VERSION_STRING

    • CDRECORD_CONF

    • CDROM_PKG_URL_DIR

    • CDROM_PKG_URL_HOST

    • CHECK_FAKEHOME

    • CHECK_FILES

    • CHECK_FILES_SKIP

    • CHECK_FILES_STRICT

    • CHECK_HEADERS

    • CHECK_HEADERS_SKIP

    • CHECK_INTERPRETER

    • CHECK_INTERPRETER_SKIP

    • CHECK_PERMS

    • CHECK_PERMS_AUTOFIX

    • CHECK_PERMS_SKIP

    • CHECK_PORTABILITY

    • CHECK_PORTABILITY_SKIP

    • CHECK_RELRO

    • CHECK_RELRO_SKIP

    • CHECK_RELRO_SUPPORTED

    • CHECK_SHLIBS

    • CHECK_SHLIBS_BLACKLIST

    • CHECK_SHLIBS_SKIP

    • CHECK_SHLIBS_SUPPORTED

    • CHECK_SSP

    • CHECK_SSP_SKIP

    • CHECK_SSP_SUPPORTED

    • CHECK_STRIPPED

    • CHECK_STRIPPED_SKIP

    • CHECK_WRKREF

    • CHECK_WRKREF_EXTRA_DIRS

    • CHECK_WRKREF_SKIP

    • CLAMAV_DBDIR

    • CLAMAV_GROUP

    • CLAMAV_USER

    • CLANGBASE

    • CLEANDEPENDS

    • CMAKE_DEPENDENCIES_REWRITE

    • CMAKE_INSTALL_PREFIX

    • CMAKE_MODULE_PATH_OVERRIDE

    • CMAKE_PKGSRC_BUILD_FLAGS

    • CMAKE_PREFIX_PATH

    • CMAKE_USE_GNU_INSTALL_DIRS

    • COMPILER_RPATH_FLAG

    • COMPILER_USE_SYMLINKS

    • CONFIGURE_ARGS

    • CONFIGURE_DIRS

    • CONFIGURE_ENV

    • CONFIGURE_HAS_INFODIR

    • CONFIGURE_HAS_MANDIR

    • CONFIGURE_SCRIPT

    • CONFIG_SHELL

    • CONFIG_SHELL_FLAGS

    • CONF_FILES

    • CONF_FILES_MODE

    • CONF_FILES_PERMS

    • CONSERVER_DEFAULTHOST

    • CONSERVER_DEFAULTPORT

    • CP

    • CPP

    • CPP_PRECOMP_FLAGS

    • CREATE_WRKDIR_SYMLINK

    • CROSSBASE

    • CTFCONVERT

    • CTF_FILES_SKIP

    • CTF_SUPPORTED

    • CTYPE

    • CUPS_GROUP

    • CUPS_SYSTEM_GROUPS

    • CUPS_USER

    • CURSES_DEFAULT

    • CURSES_TYPE

    • CXX

    • CYRUS_GROUP

    • CYRUS_IDLE

    • CYRUS_USER

    • DAEMONTOOLS_GROUP

    • DAEMONTOOLS_LOG_USER

    • DBUS_GROUP

    • DBUS_USER

    • DEFANG_GROUP

    • DEFANG_USER

    • DEFAULT_ACCEPTABLE_LICENSES

    • DEFAULT_DISTFILES

    • DEFAULT_IRC_SERVER

    • DEFAULT_SERIAL_DEVICE

    • DEF_UMASK

    • DEINSTALLDEPENDS

    • DEINSTALL_SRC

    • DEINSTALL_TEMPLATES

    • DELAYED_ERROR_MSG

    • DELAYED_WARNING_MSG

    • DEPENDS_TARGET

    • DEPENDS_TYPE

    • DESTDIR

    • DESTDIR_VARNAME

    • DIALER_GROUP

    • DIGEST_REQD

    • DISTDIR

    • DISTFILES

    • DISTINFO_FILE

    • DISTNAME

    • DIST_PATH

    • DIST_SUBDIR

    • DJBDNS_AXFR_USER

    • DJBDNS_CACHE_USER

    • DJBDNS_DJBDNS_GROUP

    • DJBDNS_LOG_USER

    • DJBDNS_RBL_USER

    • DJBDNS_TINY_USER

    • DLOPEN_REQUIRE_PTHREADS

    • DL_AUTO_VARS

    • DL_CFLAGS

    • DL_LDFLAGS

    • DL_LIBS

    • DNS

    • DOWNLOADED_DISTFILE

    • DT_LAYOUT

    • DYNAMIC_SITES_CMD

    • DYNAMIC_SITES_SCRIPT

    • ECHO

    • ECHO_N

    • ELK_GUI

    • EMACS_TYPE

    • EMULDIR

    • EMULSUBDIR

    • EMULSUBDIRSLASH

    • EMUL_ARCH

    • EMUL_DISTRO

    • EMUL_EXEC_FMT

    • EMUL_IS_NATIVE

    • EMUL_MODULES

    • EMUL_OPSYS

    • EMUL_PKG_FMT

    • EMUL_PLATFORM

    • EMUL_PLATFORMS

    • EMUL_PREFER

    • EMUL_REQD

    • EMUL_TYPE

    • ERROR_MSG

    • EXIM_GROUP

    • EXIM_USER

    • EXPORT_SYMBOLS_LDFLAGS

    • EXTRACTOR

    • EXTRACT_CMD

    • EXTRACT_CMD_DEFAULT

    • EXTRACT_DIR

    • EXTRACT_ELEMENTS

    • EXTRACT_ENV

    • EXTRACT_ONLY

    • EXTRACT_OPTS

    • EXTRACT_SUFX

    • EXTRACT_USING

    • FAILOVER_FETCH

    • FAIL_MSG

    • FAKE_NCURSES

    • FAM

    • FAM_ACCEPTED

    • FAM_DEFAULT

    • FAM_SERVER

    • FCPATH

    • FEATURE_CPPFLAGS

    • FEATURE_LDFLAGS

    • FEATURE_LIBS

    • FETCH_AFTER_ARGS

    • FETCH_BEFORE_ARGS

    • FETCH_CMD

    • FETCH_OUTPUT_ARGS

    • FETCH_PROXY

    • FETCH_RESUME_ARGS

    • FETCH_USING

    • FILES_SUBST

    • FILES_SUBST_SED

    • FIX_SYSTEM_HEADERS

    • FLUXBOX_USE_GNOME

    • FLUXBOX_USE_KDE

    • FLUXBOX_USE_XFT

    • FLUXBOX_USE_XINERAMA

    • FONTS_DIRS

    • FONTS_VERBOSE

    • FOO_HACKS_MK

    • FOX_USE_XUNICODE

    • FREEWNN_GROUP

    • FREEWNN_USER

    • FTP_PKG_URL_DIR

    • FTP_PKG_URL_HOST

    • GAMEDATAMODE

    • GAMEDATA_PERMS

    • GAMEDIRMODE

    • GAMEDIR_PERMS

    • GAMEGRP

    • GAMEMODE

    • GAMEOWN

    • GAMES_GROUP

    • GAMES_USER

    • GCC

    • GCCBASE

    • GCC_REQD

    • GCC_VERSION_SUFFIX

    • GEM_BUILD

    • GEM_CLEANBUILD

    • GEM_CLEANBUILD_EXTENSIONS

    • GEM_DOCDIR

    • GEM_EXTSDIR

    • GEM_HOME

    • GEM_LIBDIR

    • GEM_NAME

    • GEM_PATH

    • GEM_SPECFILE

    • GENERATE_PLIST

    • GHOSTSCRIPT_REQD

    • GITHUB_PROJECT

    • GITHUB_RELEASE

    • GITHUB_TAG

    • GITHUB_TYPE

    • GNU

    • GNU_CONFIGURE

    • GNU_CONFIGURE_INFODIR

    • GNU_CONFIGURE_MANDIR

    • GNU_CONFIGURE_STRICT

    • GO_BUILD_PATTERN

    • GO_DIST_BASE

    • GO_SRCPATH

    • GROUP_SPECIFIC_PKGS

    • GRUB_NETWORK_CARDS

    • GRUB_PRESET_COMMAND

    • GRUB_SCAN_ARGS

    • GZIP

    • HASKELL_COMPILER

    • HASKELL_ENABLE_HADDOCK_DOCUMENTATION

    • HASKELL_ENABLE_LIBRARY_PROFILING

    • HASKELL_ENABLE_SHARED_LIBRARY

    • HAS_CONFIGURE

    • HEADER_TEMPLATES

    • HOST_PKGTOOLS_ARGS

    • HOST_SPECIFIC_PKGS

    • HOWL_GROUP

    • HOWL_USER

    • ICCBASE

    • ICECAST_CHROOTDIR

    • ICON_THEMES

    • IDOBASE

    • IGNORE_CCACHE

    • IGNORE_INFO_DIRS

    • IGNORE_INTERACTIVE_FETCH

    • IMAKE

    • IMAKEOPTS

    • IMAKE_MAKE

    • IMAKE_MANINSTALL

    • IMAP_UW_CCLIENT_MBOX_FMT

    • IMDICTDIR

    • INCOMPAT_CURSES

    • INFO_DIR

    • INFO_FILES

    • INFO_FILES_VERBOSE

    • INFO_MSG

    • INIT_SYSTEM

    • INN_DATA_DIR

    • INN_GROUP

    • INN_USER

    • INSTALLATION_DIRS

    • INSTALLATION_DIRS_FROM_PLIST

    • INSTALL_ENV

    • INSTALL_SH_OVERRIDE

    • INSTALL_SRC

    • INSTALL_TEMPLATES

    • INSTALL_UNSTRIPPED

    • IRCD_HYBRID_IRC_GROUP

    • IRCD_HYBRID_IRC_USER

    • IRCD_HYBRID_MAXCONN

    • IRCD_HYBRID_NICLEN

    • IRCD_HYBRID_SYSLOG_EVENTS

    • IRCD_HYBRID_SYSLOG_FACILITY

    • IRCD_HYBRID_TOPICLEN

    • IRIX

    • IRRD_USE_PGP

    • JABBERD_GROUP

    • JABBERD_LOGDIR

    • JABBERD_PIDDIR

    • JABBERD_SPOOLDIR

    • JABBERD_USER

    • JAKARTA_HOME

    • JAVA_BINPREFIX

    • JAVA_CLASSPATH

    • JAVA_HOME

    • JAVA_LD_LIBRARY_PATH

    • JAVA_NAME

    • JAVA_UNLIMIT

    • JAVA_WRAPPERS

    • JPEG_ACCEPTED

    • JPEG_DEFAULT

    • KERBEROS

    • KERMIT_SUID_UUCP

    • KJS_USE_PCRE

    • KNEWS_DOMAIN_FILE

    • KNEWS_DOMAIN_NAME

    • KRB5_ACCEPTED

    • KRB5_DEFAULT

    • LANGUAGES

    • LATEX2HTML_ICONPATH

    • LDCONFIG_ADD_CMD

    • LDCONFIG_REMOVE_CMD

    • LEAFNODE_DATA_DIR

    • LEAFNODE_GROUP

    • LEAFNODE_USER

    • LIBDVDCSS_HOMEPAGE

    • LIBDVDCSS_MASTER_SITES

    • LIBTOOL

    • LIBTOOLIZE_PLIST

    • LIBTOOL_M4_OVERRIDE

    • LIBUSB_TYPE

    • LICENSE

    • LINKER_RPATH_FLAG

    • LINK_RPATH_FLAG

    • LINUX_LOCALES

    • LOCALBASE

    • LOCALBASE_LOCKTYPE

    • LOCALPATCHES

    • LOVE_DATA

    • LOVE_GAME

    • LOVE_VERSION

    • LP64PLATFORMS

    • MACHINE_PLATFORM

    • MAILAGENT_DOMAIN

    • MAILAGENT_EMAIL

    • MAILAGENT_FQDN

    • MAILAGENT_ORGANIZATION

    • MAJORDOMO_HOMEDIR

    • MAKEINFO_ARGS

    • MAKE_DIRS

    • MAKE_DIRS_PERMS

    • MAKE_ENV

    • MAKE_FILE

    • MAKE_FLAGS

    • MAKE_JOBS

    • MAKE_JOBS_SAFE

    • MAKE_PROGRAM

    • MANINSTALL

    • MANZ

    • MASTER_SITES

    • MASTER_SITE_BACKUP

    • MASTER_SITE_CYGWIN

    • MASTER_SITE_GNOME

    • MASTER_SITE_GNU

    • MASTER_SITE_LOCAL

    • MASTER_SITE_MOZILLA

    • MASTER_SITE_OPENOFFICE

    • MASTER_SITE_OVERRIDE

    • MASTER_SITE_PERL_CPAN

    • MASTER_SITE_SUNSITE

    • MASTER_SITE_SUSE

    • MASTER_SITE_TEX_CTAN

    • MASTER_SITE_XCONTRIB

    • MASTER_SITE_XEMACS

    • MASTER_SORT

    • MASTER_SORT_RANDOM

    • MASTER_SORT_REGEX

    • MECAB_CHARSET

    • MEDIATOMB_GROUP

    • MEDIATOMB_USER

    • MIPSPROBASE

    • MIREDO_GROUP

    • MIREDO_USER

    • MISSING_FEATURES

    • MKDIR

    • MLDONKEY_GROUP

    • MLDONKEY_HOME

    • MLDONKEY_USER

    • MONOTONE_GROUP

    • MONOTONE_USER

    • MOTIFBASE

    • MOTIF_TYPE

    • MOTIF_TYPE_DEFAULT

    • MPI_TYPE

    • MSGFMT_STRIP_MSGCTXT

    • MSGFMT_STRIP_MSGID_PLURAL

    • MTOOLS_ENABLE_FLOPPYD

    • MUST

    • MV

    • MYSQL_CHARSET

    • MYSQL_DATADIR

    • MYSQL_EXTRA_CHARSET

    • MYSQL_GROUP

    • MYSQL_PKGSRCDIR

    • MYSQL_USER

    • MYSQL_VERSIONS_ACCEPTED

    • MYSQL_VERSION_DEFAULT

    • NAGIOSCMD_GROUP

    • NAGIOSDIR

    • NAGIOS_GROUP

    • NAGIOS_USER

    • NATIVE_APPEND_ABI

    • NATIVE_APPEND_ELF

    • NATIVE_EXEC_FMT

    • NATIVE_MACHINE_PLATFORM

    • NATIVE_OBJECT_FMT

    • NBPAX_PROGRAM_PREFIX

    • NETBSD_LOGIN_NAME

    • NMH_EDITOR

    • NMH_MTA

    • NMH_PAGER

    • NOLOGIN

    • NONZERO_FILESIZE_P

    • NOTE

    • NOT_FOR_PLATFORM

    • NOT_PAX_ASLR_SAFE

    • NOT_PAX_MPROTECT_SAFE

    • NO_BUILD

    • NO_CHECKSUM

    • NO_CONFIGURE

    • NO_SKIP

    • NS_PREFERRED

    • NULLMAILER_GROUP

    • NULLMAILER_USER

    • OASIS

    • OASIS_BUILD_ARGS

    • OBJHOSTNAME

    • OBJMACHINE

    • OCAML_FINDLIB_DIRS

    • OCAML_FINDLIB_REGISTER

    • OCAML_FINDLIB_REGISTER_VERBOSE

    • OCAML_SITELIBDIR

    • OCAML_TOPKG_DOCDIR

    • OCAML_USE_DUNE

    • OCAML_USE_FINDLIB

    • OCAML_USE_JBUILDER

    • OCAML_USE_OASIS

    • OCAML_USE_OASIS_DYNRUN

    • OCAML_USE_OPAM

    • OCAML_USE_OPT_COMPILER

    • OCAML_USE_TOPKG

    • OMF

    • ONLY_FOR_COMPILER

    • ONLY_FOR_PLATFORM

    • OPENSSH_CHROOT

    • OPENSSH_GROUP

    • OPENSSH_USER

    • OPSYS

    • OPSYS_EMULDIR

    • OSS_TYPE

    • OSX

    • OSX_TOLERATE_SDK_SKEW

    • OS_VARIANT

    • OS_VERSION

    • OTF_FONTS_DIR

    • OVERRIDE_DIRDEPTH

    • OVERRIDE_GEMSPEC

    • OVERRIDE_GNU_CONFIG_SCRIPTS

    • OWN_DIRS

    • OWN_DIRS_PERMS

    • P4GROUP

    • P4PORT

    • P4ROOT

    • P4USER

    • PACKAGES

    • PALMOS_DEFAULT_SDK

    • PAMBASE

    • PAM_DEFAULT

    • PAPERSIZE

    • PASSIVE_FETCH

    • PATCHDIR

    • PATCHFILES

    • PATCH_ARGS

    • PATCH_DEBUG

    • PATCH_DIST_ARGS

    • PATCH_DIST_CAT

    • PATCH_DIST_STRIP

    • PATCH_FUZZ_FACTOR

    • PATCH_STRIP

    • PATH

    • PCCBASE

    • PEAR_CMD

    • PEAR_LIB

    • PEAR_PACKAGE_XML

    • PERL5

    • PERL5_CONFIGURE

    • PERL5_CONFIGURE_DIRS

    • PERL5_LDFLAGS

    • PERL5_LICENSE

    • PERL5_MODULE_TYPE

    • PERL5_PACKLIST

    • PERL5_PACKLIST_DIR

    • PERL5_PERLBASE

    • PERL5_SITEBASE

    • PERL5_USE_PACKLIST

    • PERL5_VENDORBASE

    • PFCTL

    • PFVAR_H

    • PF_VERSION

    • PGGROUP

    • PGHOME

    • PGPKGSRCDIR

    • PGSQL_TYPE

    • PGSQL_VERSIONS_ACCEPTED

    • PGSQL_VERSION_DEFAULT

    • PGUSER

    • PG_LIB_EXT

    • PHP

    • PHPCOMMON_MK

    • PHPPKGSRCDIR

    • PHP_BASE_VERS

    • PHP_CHECK_INSTALLED

    • PHP_EXTENSION_DIR

    • PHP_INITIAL_TEENY

    • PHP_PKG_PREFIX

    • PHP_VERSION

    • PHP_VERSIONS_ACCEPTED

    • PHP_VERSIONS_INCOMPATIBLE

    • PHP_VERSION_DEFAULT

    • PHP_VERSION_REQD

    • PILRC_USE_GTK

    • PKGCONFIG_BASE

    • PKGCONFIG_FILE

    • PKGCONFIG_OVERRIDE

    • PKGCONFIG_OVERRIDE_STAGE

    • PKGDIR

    • PKGGNUDIR

    • PKGINFODIR

    • PKGLOCALEDIR

    • PKGMANDIR

    • PKGNAME

    • PKGNAME_REQD

    • PKGPATH

    • PKGREVISION

    • PKGSRC_CHANGES

    • PKGSRC_COMPILER

    • PKGSRC_KEEP_BIN_PKGS

    • PKGSRC_LOCKTYPE

    • PKGSRC_MAKE_ENV

    • PKGSRC_MESSAGE_RECIPIENTS

    • PKGSRC_MKPIE

    • PKGSRC_MKREPRO

    • PKGSRC_RUN_TEST

    • PKGSRC_SETENV

    • PKGSRC_SLEEPSECS

    • PKGSRC_TODO

    • PKGSRC_USE_CTF

    • PKGSRC_USE_FORTIFY

    • PKGSRC_USE_RELRO

    • PKGSRC_USE_SSP

    • PKGSRC_USE_STACK_CHECK

    • PKGTASKS_DATAFILE

    • PKGTOOLS_ARGS

    • PKGTOOLS_ENV

    • PKG_ALTERNATIVES

    • PKG_APACHE

    • PKG_APACHE_ACCEPTED

    • PKG_APACHE_DEFAULT

    • PKG_BEST_EXISTS

    • PKG_BUILD_OPTIONS

    • PKG_COMPRESSION

    • PKG_CONFIG

    • PKG_CONFIG_PERMS

    • PKG_CREATE_USERGROUP

    • PKG_DB_TMPDIR

    • PKG_DEBUG_LEVEL

    • PKG_DEFAULT_OPTIONS

    • PKG_DESTDIR_SUPPORT

    • PKG_DEVELOPER

    • PKG_DISABLED_OPTIONS

    • PKG_FATAL_ERRORS

    • PKG_FC

    • PKG_FILELIST_CMD

    • PKG_GECOS

    • PKG_GID

    • PKG_GROUPS

    • PKG_GROUPS_VARS

    • PKG_HOME

    • PKG_INIT_SCRIPTS

    • PKG_JAVA_HOME

    • PKG_JVM

    • PKG_JVMS_ACCEPTED

    • PKG_JVM_DEFAULT

    • PKG_LEGACY_OPTIONS

    • PKG_LIBTOOL

    • PKG_OPTIONS

    • PKG_OPTIONS_DEPRECATED_WARNINGS

    • PKG_OPTIONS_LEGACY_OPTS

    • PKG_OPTIONS_LEGACY_VARS

    • PKG_OPTIONS_NONEMPTY_SETS

    • PKG_OPTIONS_OPTIONAL_GROUPS

    • PKG_OPTIONS_REQUIRED_GROUPS

    • PKG_OPTIONS_VAR

    • PKG_PHP

    • PKG_PHP_MAJOR_VERS

    • PKG_PHP_VERSION

    • PKG_RCD_SCRIPTS

    • PKG_REFCOUNT_DBDIR

    • PKG_REGISTER_SHELLS

    • PKG_RESUME_TRANSFERS

    • PKG_SHELL

    • PKG_SUGGESTED_OPTIONS

    • PKG_SUPPORTED_OPTIONS

    • PKG_SYSCONFBASE

    • PKG_SYSCONFBASEDIR

    • PKG_SYSCONFDIR

    • PKG_SYSCONFDIR_PERMS

    • PKG_SYSCONFSUBDIR

    • PKG_SYSCONFVAR

    • PKG_TOOLS_BIN

    • PKG_UID

    • PKG_UPDATE_FONTS_DB

    • PKG_USERS

    • PKG_USERS_VARS

    • PKG_VERBOSE

    • PLIST

    • PLIST_AWK

    • PLIST_AWK_ENV

    • PLIST_SRC

    • PLIST_SUBST

    • PLIST_TYPE

    • PLIST_VARS

    • POPTOP_USE_MPPE

    • POST_FETCH_HOOK

    • PREFER

    • PREFER_NATIVE

    • PREFER_NATIVE_PTHREADS

    • PREFER_PKGSRC

    • PREFIX

    • PREPEND_PATH

    • PRE_ROOT_CMD

    • PRIVILEGED_STAGES

    • PS

    • PTHREAD_AUTO_VARS

    • PTHREAD_CFLAGS

    • PTHREAD_LDFLAGS

    • PTHREAD_LIBS

    • PTHREAD_OPTS

    • PTHREAD_TYPE

    • PVM_SSH

    • PYPKGPREFIX

    • PYTHON_FOR_BUILD_ONLY

    • PYTHON_SELF_CONFLICT

    • PYTHON_VERSIONED_DEPENDENCIES

    • PYTHON_VERSIONS_ACCEPTED

    • PYTHON_VERSIONS_INCOMPATIBLE

    • PYTHON_VERSION_DEFAULT

    • PYTHON_VERSION_REQD

    • PYVERSSUFFIX

    • PY_NO_EGG

    • QMAILDIR

    • QMAIL_ALIAS_USER

    • QMAIL_DAEMON_USER

    • QMAIL_LOG_USER

    • QMAIL_NOFILES_GROUP

    • QMAIL_PASSWD_USER

    • QMAIL_QMAIL_GROUP

    • QMAIL_QUEUE_DIR

    • QMAIL_QUEUE_EXTRA

    • QMAIL_QUEUE_USER

    • QMAIL_REMOTE_USER

    • QMAIL_ROOT_USER

    • QMAIL_SEND_USER

    • QPOPPER_FAC

    • QPOPPER_SPOOL_DIR

    • QPOPPER_USER

    • RAKE_NAME

    • RASMOL_DEPTH

    • RCD_SCRIPTS

    • RCD_SCRIPTS_DIR

    • RCD_SCRIPTS_EXAMPLEDIR

    • RCD_SCRIPTS_MODE

    • RCD_SCRIPTS_SHELL

    • RCD_SCRIPT_SRC

    • RDOC

    • READLINE_DEFAULT

    • READLINE_TYPE

    • REAL_ROOT_GROUP

    • REAL_ROOT_USER

    • RECURSIVE_MAKE

    • RELAY_CTRL_DIR

    • REPLACE_AWK

    • REPLACE_BASH

    • REPLACE_CSH

    • REPLACE_KSH

    • REPLACE_PERL

    • REPLACE_PERL6

    • REPLACE_PYTHON

    • REPLACE_RUBY

    • REPLACE_RUBY_DIRS

    • REPLACE_RUBY_PAT

    • REPLACE_SH

    • REPLACE_TEXLUA

    • REQD_DIRS

    • REQD_DIRS_PERMS

    • REQD_FILES

    • REQD_FILES_MODE

    • REQD_FILES_PERMS

    • RESOLV_AUTO_VARS

    • RESOLV_LDFLAGS

    • RESOLV_LIBS

    • RM

    • ROOT_CMD

    • ROOT_GROUP

    • ROOT_USER

    • RPCGEN

    • RPM

    • RPM2PKG_PLIST

    • RPM2PKG_PREFIX

    • RPM2PKG_STAGE

    • RPM2PKG_STRIP

    • RPM2PKG_SUBPREFIX

    • RPMFILES

    • RPMIGNOREPATH

    • RPM_DB_PREFIX

    • RSSH_CVS_PATH

    • RSSH_RDIST_PATH

    • RSSH_RSYNC_PATH

    • RSSH_SCP_PATH

    • RSSH_SFTP_SERVER_PATH

    • RUBY

    • RUBYGEM

    • RUBYGEM_NAME

    • RUBYGEM_OPTIONS

    • RUBY_ABI_VERSION

    • RUBY_ARCH

    • RUBY_ARCHINC

    • RUBY_ARCHLIB

    • RUBY_BASE

    • RUBY_BASERIDIR

    • RUBY_BUILD_RDOC

    • RUBY_BUILD_RI

    • RUBY_DLEXT

    • RUBY_DOC

    • RUBY_DYNAMIC_DIRS

    • RUBY_EG

    • RUBY_ENCODING_ARG

    • RUBY_EXTCONF

    • RUBY_EXTCONF_CHECK

    • RUBY_EXTCONF_DEBUG

    • RUBY_EXTCONF_MAKEFILE

    • RUBY_GEM_BASE

    • RUBY_INC

    • RUBY_LIB

    • RUBY_LIB_BASE

    • RUBY_NAME

    • RUBY_NOVERSION

    • RUBY_PKGPREFIX

    • RUBY_RAILS

    • RUBY_RAILS42_VERSION

    • RUBY_RAILS51_VERSION

    • RUBY_RAILS52_VERSION

    • RUBY_RAILS_ACCEPTED

    • RUBY_RAILS_DEFAULT

    • RUBY_RAILS_REQD

    • RUBY_RAILS_STRICT_DEP

    • RUBY_RIDIR

    • RUBY_SETUP

    • RUBY_SHLIB

    • RUBY_SHLIBALIAS

    • RUBY_SHLIBVER

    • RUBY_SIMPLE_INSTALL

    • RUBY_SITEARCHLIB

    • RUBY_SITELIB

    • RUBY_SITELIB_BASE

    • RUBY_SITERIDIR

    • RUBY_SLEXT

    • RUBY_SRCDIR

    • RUBY_STATICLIB

    • RUBY_SUFFIX

    • RUBY_SYSRIDIR

    • RUBY_USE_PTHREAD

    • RUBY_VENDORARCHLIB

    • RUBY_VENDORLIB

    • RUBY_VENDORLIB_BASE

    • RUBY_VER

    • RUBY_VERSION

    • RUBY_VERSIONS_ACCEPTED

    • RUBY_VERSION_DEFAULT

    • RUBY_VERSION_REQD

    • RUBY_VER_DIR

    • RUN

    • RUN_LDCONFIG

    • SAWFISH_THEMES

    • SCO

    • SCREWS_GROUP

    • SCREWS_USER

    • SCRIPTS_ENV

    • SCROLLKEEPER_DATADIR

    • SCROLLKEEPER_REBUILDDB

    • SCROLLKEEPER_UPDATEDB

    • SDIST_PAWD

    • SERIAL_DEVICES

    • SETGIDGAME

    • SETGID_GAMES_PERMS

    • SETUID_ROOT_PERMS

    • SH

    • SHLIB

    • SIGN_PACKAGES

    • SILC_CLIENT_WITH_PERL

    • SITE_SPECIFIC_PKGS

    • SKIP_DEPENDS

    • SKIP_PORTABILITY_CHECK

    • SMF_INSTANCES

    • SMF_MANIFEST

    • SMF_METHODS

    • SMF_METHOD_SHELL

    • SMF_METHOD_SRC

    • SMF_NAME

    • SMF_PREFIX

    • SMF_SRCDIR

    • SNIPROXY_GROUP

    • SNIPROXY_USER

    • SOURCE_BUFFSIZE

    • SPECIAL_PERMS

    • SPECIFIC_PKGS

    • SSH_SUID

    • SSYNC_PAWD

    • STEP_MSG

    • STRIP

    • STRIP_DBG

    • STRIP_DEBUG

    • STRIP_DEBUG_SUPPORTED

    • STRIP_FILES_SKIP

    • SU

    • SUBDIR

    • SUBST_CLASSES

    • SUBST_FILES

    • SUBST_FILTER_CMD

    • SUBST_MESSAGE

    • SUBST_SED

    • SUBST_SHOW_DIFF

    • SUBST_SKIP_TEXT_CHECK

    • SUBST_STAGE

    • SUBST_VARS

    • SUNWSPROBASE

    • SUSE_PREFER

    • SU_CMD

    • TERMCAP_TYPE

    • TERMINFO_DEFAULT

    • TERMINFO_TYPE

    • TEST

    • TEST_DIRS

    • TEST_ENV

    • TEST_MAKE_CMD

    • TEST_MAKE_FLAGS

    • TEST_TARGET

    • TEXLIVE_IGNORE_PATTERNS

    • TEXLIVE_REV

    • TEXMFSITE

    • TEX_FORMATS

    • TEX_HYPHEN_DAT

    • TEX_HYPHEN_DEF

    • TEX_TEXMF_DIRS

    • THTTPD_LOG_FACILITY

    • TO

    • TOOLS_ALIASES

    • TOOLS_ARGS

    • TOOLS_BROKEN

    • TOOLS_CMD

    • TOOLS_CREATE

    • TOOLS_DIR

    • TOOLS_FAIL

    • TOOLS_GNU_MISSING

    • TOOLS_LDCONFIG

    • TOOLS_NOOP

    • TOOLS_PATH

    • TOOLS_SCRIPT

    • TTF_FONTS_DIR

    • TYPE

    • UAC_REQD_EXECS

    • UCSPI_SSL_GROUP

    • UCSPI_SSL_USER

    • UNLIMIT_RESOURCES

    • UNPRIVILEGED

    • UNPRIVILEGED_GROUP

    • UNPRIVILEGED_GROUPS

    • UNPRIVILEGED_USER

    • UNWRAP_FILES

    • UNWRAP_PATTERNS

    • UPDATE_GEMSPEC

    • UPDATE_TARGET

    • URI

    • USA

    • USERGROUP_PHASE

    • USERPPP_GROUP

    • USER_SPECIFIC_PKGS

    • USE_ABI_DEPENDS

    • USE_APR

    • USE_BSD_MAKEFILE

    • USE_BUILTIN

    • USE_CROSS_COMPILE

    • USE_CURSES

    • USE_CWRAPPERS

    • USE_DB185

    • USE_FEATURES

    • USE_GAMESGROUP

    • USE_GCC_RUNTIME

    • USE_IMAKE

    • USE_JAVA

    • USE_JAVA2

    • USE_LANGUAGES

    • USE_LIBTOOL

    • USE_NATIVE_GCC

    • USE_NETBSD_REPO

    • USE_PKGSRC_GCC

    • USE_PKGSRC_GCC_RUNTIME

    • USE_PKGTASKS

    • USE_RUBY_EXTCONF

    • USE_RUBY_INSTALL

    • USE_RUBY_SETUP

    • USE_RUBY_SETUP_PKG

    • USE_TOOLS

    • UUCP_GROUP

    • UUCP_USER

    • VARBASE

    • VARNAME

    • VIM_EXTRA_OPTS

    • WARNING_MSG

    • WCALC_CGIDIR

    • WCALC_CGIPATH

    • WCALC_HTMLDIR

    • WCALC_HTMLPATH

    • WDM_MANAGERS

    • WRAPPER_REORDER_CMDS

    • WRKDIR

    • WRKDIR_BASENAME

    • WRKDIR_LOCKTYPE

    • WRKLOG

    • WRKOBJDIR

    • WRKSRC

    • WXGTK_ACCEPTED

    • WXGTK_DEFAULT

    • X10_PORT

    • X11

    • X11BASE

    • X11_PKGSRCDIR

    • X11_TYPE

    • X509_CERTIFICATE

    • X509_KEY

    • XAW_TYPE

    • XLOCK_DEFAULT_MODE

    • XMKMF_FLAGS

    • XXX

    • YES

    • ZERO_FILESIZE_P

    • ZSH_STATIC

    • __stdc__

    • _vargroups

    • add

    • all

    • alternatives

    • aslr

    • asprintf

    • autoconf

    • automake

    • autoreconf

    • awk

    • bash

    • big-endian

    • bin-install

    • binpkg-list

    • bootstrap-depends

    • broken

    • broken_on_platform

    • build

    • build-env

    • buildlink-directories

    • buildlink-oss-soundcard-h

    • c

    • c++

    • ccache

    • cce

    • cdefs

    • changes

    • changes-entry

    • changes-entry-noupdate

    • check

    • check-clean

    • check-files

    • check-files-clean

    • check-vulnerable

    • checksum

    • checksum-phase

    • clean

    • clean-depends

    • cleandir

    • commit

    • commit-changes-entry

    • compact

    • compiler

    • conf

    • config.guess

    • config.sub

    • configuration

    • configure-help

    • cputime

    • create-usergroup

    • csh

    • ctf

    • debug

    • declaration

    • declare

    • defined

    • depend

    • dependencies

    • depends

    • depends-checksum

    • depends-fetch

    • describe

    • destdir

    • distclean

    • distinfo

    • dl

    • dlopen

    • do-build

    • do-buildlink

    • do-clean

    • do-configure-post-hook

    • do-extract

    • do-fetch

    • emul

    • emulation

    • emulator

    • endian

    • enomem

    • err

    • errx

    • etc

    • feature

    • features

    • fetch

    • fetch-list

    • follows

    • forbids

    • form

    • format

    • fortify

    • fortify_source

    • friend

    • from

    • fts

    • fts_close

    • fts_open

    • fts_read

    • fts_set

    • full

    • gcc

    • getopt_long

    • getprogname

    • gettext

    • github

    • glob

    • go

    • golang

    • guess-license

    • hashbang

    • heimdal

    • help

    • imake

    • increment

    • interp

    • interpreter

    • intl

    • iso

    • kerberos

    • krb

    • krb5

    • ksh

    • latex

    • libnbcompat

    • libs

    • libtool

    • licence

    • license

    • lintl

    • little-endian

    • lock

    • locking

    • lvalue

    • make

    • makesum

    • memory

    • meta

    • meta-package

    • meta_package

    • mit-krb5

    • mk.conf

    • mount

    • mprotect

    • mremap

    • nb

    • nbcompat

    • no

    • obstack

    • obstack_ptr_grow

    • occurs

    • only

    • options

    • options.mk

    • order

    • override

    • override-intltool

    • override-message-intltool

    • package

    • parallel

    • partial

    • path

    • pax

    • paxctl

    • pbulk-index

    • pc

    • perl

    • perl5

    • perms

    • php

    • pkg-build-options

    • pkg-config

    • pkg_build_options

    • platform

    • plist

    • post-extract

    • post-fetch

    • post-wrapper

    • pre-configure

    • pre-extract

    • pre-fetch

    • print-plist

    • print-summary-data

    • privileged-install-hook

    • pypi

    • python

    • readme-all

    • regcomp

    • relro

    • rename

    • reorder

    • replace

    • replace_interpreter

    • reproducible

    • resolv

    • root

    • ruby

    • setenv

    • setgid

    • setprogname

    • setuid

    • sh

    • show

    • show-all

    • show-build-defs

    • show-depends

    • show-deps

    • show-distfiles

    • show-downlevel

    • show-subdir-var

    • show-tools

    • show-var

    • show-vars

    • snprintf

    • ssp

    • st_mode

    • stage-install

    • strip

    • strong

    • subst

    • sun

    • sunpro

    • sunwspro

    • test

    • tex

    • texlive

    • tmp

    • tool

    • tools

    • tools-libtool-m4-override

    • type

    • ulimit

    • undefined

    • undo-replace

    • unlimit

    • unprivileged

    • unprivileged-install-hook

    • unstripped

    • update

    • upload

    • upload-distfiles

    • usage

    • use_tools

    • user

    • utimes

    • vasprintf

    • verbose

    • vsnprintf

    • warn

    • warning

    • warnings

    • warnx

    • weak

    • work

    • wrapper

    • yes

    @ 1.267 log @doc/pkgsrc.*: regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.34 2019/04/28 13:41:18 rillig Exp $

    d1038 1 a1038 1 cvs -q -z2 d8886 1 a8886 1
    d8931 1 a8931 1

    24.1.

    d8947 1 a8947 1

    24.2.

    d8965 1 a8965 1

    24.3.

    d8983 1 a8983 1

    24.4.

    d8996 1 a8996 1

    24.5.

    d9012 1 a9012 1

    24.6.

    d9036 1 a9036 1

    24.7.

    d9061 1 a9061 1

    24.8.

    d9109 1 a9109 1

    24.9.

    d10365 2572 a12936 1353
  • #!

  • -lintl

  • 64bit

  • ABI

  • ACCEPTABLE_LICENSES

  • ACROREAD_FONTPATH

  • ADDITIONAL

  • AFAIK

  • AIX

  • ALLOW_VULNERABLE_PACKAGES

  • ALL_ENV

  • ALSA_PC

  • ALTERNATIVES_SRC

  • AMANDA_TMP

  • AMANDA_USER

  • AMANDA_VAR

  • APACHE_GROUP

  • APACHE_MODULE_NAME

  • APACHE_MODULE_SRC

  • APACHE_MODULE_SRCDIR

  • APACHE_PKG_PREFIX

  • APACHE_SUEXEC_CONFIGURE_ARGS

  • APACHE_SUEXEC_DOCROOT

  • APACHE_USER

  • APPEND_ABI

  • APPEND_ELF

  • ARLA_CACHE

  • AUDIT_PACKAGES_FLAGS

  • AUTOCONF_REQD

  • AUTOMAKE_OVERRIDE

  • AUTOMAKE_REQD

  • AUTO_MKDIRS

  • BDB185_DEFAULT

  • BDBBASE

  • BDB_ACCEPTED

  • BDB_DEFAULT

  • BDB_LIBS

  • BDB_TYPE

  • BIND_DIR

  • BIND_GROUP

  • BIND_USER

  • BINPKG_SITES

  • BIN_INSTALL_FLAGS

  • BISON_PKGDATADIR

  • BOOTSTRAP_DEPENDS

  • BOOTSTRAP_SETUPTOOLS

  • BROKEN

  • BROKEN_EXCEPT_ON_PLATFORM

  • BROKEN_ON_PLATFORM

  • BSDSRCDIR

  • BSDXSRCDIR

  • BSD_MAKE_ENV

  • BUILDLINK_AUTO_DIRS

  • BUILDLINK_AUTO_VARS

  • BUILDLINK_CFLAGS

  • BUILDLINK_CONTENTS_FILTER

  • BUILDLINK_CPPFLAGS

  • BUILDLINK_DEPMETHOD

  • BUILDLINK_FILES

  • BUILDLINK_FILES_CMD

  • BUILDLINK_FNAME_TRANSFORM

  • BUILDLINK_LDFLAGS

  • BUILDLINK_LIBS

  • BUILDLINK_OPSYS_SUPPORT_PTHREAD

  • BUILDLINK_PKGNAME

  • BUILDLINK_PREFIX

  • BUILDLINK_RPATHDIRS

  • BUILDLINK_TREE

  • BUILD_DEFS

  • BUILD_DEFS_EFFECTS

  • BUILD_DIRS

  • BUILD_ENV_SHELL

  • BUILD_MAKE_CMD

  • BUILD_MAKE_FLAGS

  • BUILD_TARGET

  • BUILTIN_FIND_FILES

  • BUILTIN_FIND_FILES_VAR

  • BUILTIN_FIND_GREP

  • BUILTIN_FIND_HEADERS

  • BUILTIN_FIND_HEADERS_VAR

  • BUILTIN_PKG

  • BUILTIN_TEST_CURSES_DEFINES

  • BUILTIN_TEST_CURSES_FUNCS

  • BUILTIN_VERSION_SCRIPT

  • BUILTIN_X11_TYPE

  • BUILTIN_X11_VERSION

  • CACTI_GROUP

  • CACTI_USER

  • CANNA_GROUP

  • CANNA_USER

  • CAT

  • CCACHE_BASE

  • CCACHE_DIR

  • CCACHE_LOGFILE

  • CC_VERSION

  • CC_VERSION_STRING

  • CDRECORD_CONF

  • CDROM_PKG_URL_DIR

  • CDROM_PKG_URL_HOST

  • CHECKOUT_DATE

  • CHECK_FAKEHOME

  • CHECK_FILES

  • CHECK_FILES_SKIP

  • CHECK_FILES_STRICT

  • CHECK_HEADERS

  • CHECK_HEADERS_SKIP

  • CHECK_INTERPRETER

  • CHECK_INTERPRETER_SKIP

  • CHECK_PERMS

  • CHECK_PERMS_AUTOFIX

  • CHECK_PERMS_SKIP

  • CHECK_PORTABILITY

  • CHECK_PORTABILITY_SKIP

  • CHECK_RELRO

  • CHECK_RELRO_SKIP

  • CHECK_RELRO_SUPPORTED

  • CHECK_SHLIBS

  • CHECK_SHLIBS_BLACKLIST

  • CHECK_SHLIBS_SKIP

  • CHECK_SHLIBS_SUPPORTED

  • CHECK_SSP

  • CHECK_SSP_SKIP

  • CHECK_SSP_SUPPORTED

  • CHECK_STRIPPED

  • CHECK_STRIPPED_SKIP

  • CHECK_WRKREF

  • CHECK_WRKREF_EXTRA_DIRS

  • CHECK_WRKREF_SKIP

  • CLAMAV_DBDIR

  • CLAMAV_GROUP

  • CLAMAV_USER

  • CLANGBASE

  • CLEANDEPENDS

  • CMAKE_DEPENDENCIES_REWRITE

  • CMAKE_INSTALL_PREFIX

  • CMAKE_MODULE_PATH_OVERRIDE

  • CMAKE_PKGSRC_BUILD_FLAGS

  • CMAKE_PREFIX_PATH

  • CMAKE_USE_GNU_INSTALL_DIRS

  • COMMON_LISP_DOCFILES

  • COMMON_LISP_EXAMPLES

  • COMMON_LISP_EXTRAFILES

  • COMMON_LISP_PACKAGES

  • COMMON_LISP_SYSTEM

  • COMPILER_RPATH_FLAG

  • COMPILER_USE_SYMLINKS

  • CONFIGURE_ARGS

  • CONFIGURE_DIRS

  • CONFIGURE_ENV

  • CONFIGURE_HAS_INFODIR

  • CONFIGURE_HAS_MANDIR

  • CONFIGURE_SCRIPT

  • CONFIG_SHELL

  • CONFIG_SHELL_FLAGS

  • CONF_FILES

  • CONF_FILES_MODE

  • CONF_FILES_PERMS

  • CONSERVER_DEFAULTHOST

  • CONSERVER_DEFAULTPORT

  • CP

  • CPP

  • CPP_PRECOMP_FLAGS

  • CREATE_WRKDIR_SYMLINK

  • CROSSBASE

  • CTFCONVERT

  • CTF_FILES_SKIP

  • CTF_SUPPORTED

  • CTYPE

  • CUPS_GROUP

  • CUPS_SYSTEM_GROUPS

  • CUPS_USER

  • CURSES_DEFAULT

  • CURSES_TYPE

  • CVS_EXTRACTDIR

  • CVS_MODULE

  • CVS_PROJECT

  • CVS_REPOSITORIES

  • CVS_ROOT

  • CVS_ROOT_GNU

  • CVS_ROOT_NONGNU

  • CVS_ROOT_SOURCEFORGE

  • CVS_TAG

  • CXX

  • CYRUS_GROUP

  • CYRUS_IDLE

  • CYRUS_USER

  • DAEMONTOOLS_GROUP

  • DAEMONTOOLS_LOG_USER

  • DBUS_GROUP

  • DBUS_USER

  • DEFANG_GROUP

  • DEFANG_USER

  • DEFAULT_ACCEPTABLE_LICENSES

  • DEFAULT_DISTFILES

  • DEFAULT_IRC_SERVER

  • DEFAULT_SERIAL_DEVICE

  • DEF_UMASK

  • DEINSTALLDEPENDS

  • DEINSTALL_SRC

  • DEINSTALL_TEMPLATES

  • DELAYED_ERROR_MSG

  • DELAYED_WARNING_MSG

  • DEPENDS_TARGET

  • DEPENDS_TYPE

  • DESTDIR

  • DESTDIR_VARNAME

  • DIALER_GROUP

  • DIGEST_REQD

  • DISTDIR

  • DISTFILES

  • DISTINFO_FILE

  • DISTNAME

  • DIST_PATH

  • DIST_SUBDIR

  • DJBDNS_AXFR_USER

  • DJBDNS_CACHE_USER

  • DJBDNS_DJBDNS_GROUP

  • DJBDNS_LOG_USER

  • DJBDNS_RBL_USER

  • DJBDNS_TINY_USER

  • DLOPEN_REQUIRE_PTHREADS

  • DL_AUTO_VARS

  • DL_CFLAGS

  • DL_LDFLAGS

  • DL_LIBS

  • DNS

  • DOWNLOADED_DISTFILE

  • DT_LAYOUT

  • DYNAMIC_SITES_CMD

  • DYNAMIC_SITES_SCRIPT

  • ECHO

  • ECHO_N

  • ELK_GUI

  • EMACS_TYPE

  • EMULDIR

  • EMULSUBDIR

  • EMULSUBDIRSLASH

  • EMUL_ARCH

  • EMUL_DISTRO

  • EMUL_EXEC_FMT

  • EMUL_IS_NATIVE

  • EMUL_MODULES

  • EMUL_OPSYS

  • EMUL_PKG_FMT

  • EMUL_PLATFORM

  • EMUL_PLATFORMS

  • EMUL_PREFER

  • EMUL_REQD

  • EMUL_TYPE

  • ERROR_MSG

  • EXIM_GROUP

  • EXIM_USER

  • EXPORT_SYMBOLS_LDFLAGS

  • EXTRACTOR

  • EXTRACT_CMD

  • EXTRACT_CMD_DEFAULT

  • EXTRACT_DIR

  • EXTRACT_ELEMENTS

  • EXTRACT_ENV

  • EXTRACT_ONLY

  • EXTRACT_OPTS

  • EXTRACT_SUFX

  • EXTRACT_USING

  • FAILOVER_FETCH

  • FAIL_MSG

  • FAKE_NCURSES

  • FAM

  • FAM_ACCEPTED

  • FAM_DEFAULT

  • FAM_SERVER

  • FCPATH

  • FEATURE_CPPFLAGS

  • FEATURE_LDFLAGS

  • FEATURE_LIBS

  • FETCH_AFTER_ARGS

  • FETCH_BEFORE_ARGS

  • FETCH_CMD

  • FETCH_OUTPUT_ARGS

  • FETCH_PROXY

  • FETCH_RESUME_ARGS

  • FETCH_USING

  • FILES_SUBST

  • FILES_SUBST_SED

  • FIX_SYSTEM_HEADERS

  • FLUXBOX_USE_GNOME

  • FLUXBOX_USE_KDE

  • FLUXBOX_USE_XFT

  • FLUXBOX_USE_XINERAMA

  • FONTDIR

  • FONTS_DIRS

  • FONTS_VERBOSE

  • FOO_HACKS_MK

  • FOSSIL_EXTRACTDIR

  • FOSSIL_REPO

  • FOSSIL_REPOSITORIES

  • FOSSIL_VERSION

  • FOX_USE_XUNICODE

  • FREEWNN_GROUP

  • FREEWNN_USER

  • FTP_PKG_URL_DIR

  • FTP_PKG_URL_HOST

  • GAMEDATAMODE

  • GAMEDATA_PERMS

  • GAMEDIRMODE

  • GAMEDIR_PERMS

  • GAMEGRP

  • GAMEMODE

  • GAMEOWN

  • GAMES_GROUP

  • GAMES_USER

  • GCC

  • GCCBASE

  • GCC_REQD

  • GCC_VERSION_SUFFIX

  • GEM_BUILD

  • GEM_CLEANBUILD

  • GEM_CLEANBUILD_EXTENSIONS

  • GEM_DOCDIR

  • GEM_EXTSDIR

  • GEM_HOME

  • GEM_LIBDIR

  • GEM_NAME

  • GEM_PATH

  • GEM_SPECFILE

  • GENERATE_PLIST

  • GHOSTSCRIPT_REQD

  • GITHUB_PROJECT

  • GITHUB_RELEASE

  • GITHUB_TAG

  • GITHUB_TYPE

  • GIT_BRANCH

  • GIT_ENV

  • GIT_EXTRACTDIR

  • GIT_REPO

  • GIT_REPOSITORIES

  • GIT_REVISION

  • GIT_TAG

  • GNU

  • GNU_CONFIGURE

  • GNU_CONFIGURE_INFODIR

  • GNU_CONFIGURE_MANDIR

  • GNU_CONFIGURE_STRICT

  • GO_BUILD_PATTERN

  • GO_DIST_BASE

  • GO_SRCPATH

  • GROUP_SPECIFIC_PKGS

  • GRUB_NETWORK_CARDS

  • GRUB_PRESET_COMMAND

  • GRUB_SCAN_ARGS

  • GZIP

  • HASKELL_COMPILER

  • HASKELL_ENABLE_HADDOCK_DOCUMENTATION

  • HASKELL_ENABLE_LIBRARY_PROFILING

  • HASKELL_ENABLE_SHARED_LIBRARY

  • HAS_CONFIGURE

  • HEADER_TEMPLATES

  • HG_REPO

  • HG_REPOSITORIES

  • HG_TAG

  • HOST_PKGTOOLS_ARGS

  • HOST_SPECIFIC_PKGS

  • HOWL_GROUP

  • HOWL_USER

  • ICCBASE

  • ICECAST_CHROOTDIR

  • ICON_THEMES

  • IDOBASE

  • IGNORE_CCACHE

  • IGNORE_INFO_DIRS

  • IGNORE_INTERACTIVE_FETCH

  • IMAKE

  • IMAKEOPTS

  • IMAKE_MAKE

  • IMAKE_MANINSTALL

  • IMAP_UW_CCLIENT_MBOX_FMT

  • IMDICTDIR

  • INCOMPAT_CURSES

  • INFO_DIR

  • INFO_FILES

  • INFO_FILES_VERBOSE

  • INFO_MSG

  • INIT_SYSTEM

  • INN_DATA_DIR

  • INN_GROUP

  • INN_USER

  • INSTALLATION_DIRS

  • INSTALLATION_DIRS_FROM_PLIST

  • INSTALL_ENV

  • INSTALL_SH_OVERRIDE

  • INSTALL_SRC

  • INSTALL_TEMPLATES

  • INSTALL_UNSTRIPPED

  • IRCD_HYBRID_IRC_GROUP

  • IRCD_HYBRID_IRC_USER

  • IRCD_HYBRID_MAXCONN

  • IRCD_HYBRID_NICLEN

  • IRCD_HYBRID_SYSLOG_EVENTS

  • IRCD_HYBRID_SYSLOG_FACILITY

  • IRCD_HYBRID_TOPICLEN

  • IRIX

  • IRRD_USE_PGP

  • JABBERD_GROUP

  • JABBERD_LOGDIR

  • JABBERD_PIDDIR

  • JABBERD_SPOOLDIR

  • JABBERD_USER

  • JAKARTA_HOME

  • JAVA_APP_PATH

  • JAVA_APP_TARGETS

  • JAVA_BINPREFIX

  • JAVA_CLASSPATH

  • JAVA_HOME

  • JAVA_LD_LIBRARY_PATH

  • JAVA_NAME

  • JAVA_UNLIMIT

  • JAVA_WRAPPERS

  • JPEG_ACCEPTED

  • JPEG_DEFAULT

  • KERBEROS

  • KERMIT_SUID_UUCP

  • KJS_USE_PCRE

  • KNEWS_DOMAIN_FILE

  • KNEWS_DOMAIN_NAME

  • KRB5_ACCEPTED

  • KRB5_DEFAULT

  • LANGUAGES

  • LATEX2HTML_ICONPATH

  • LDCONFIG_ADD_CMD

  • LDCONFIG_REMOVE_CMD

  • LEAFNODE_DATA_DIR

  • LEAFNODE_GROUP

  • LEAFNODE_USER

  • LIBDVDCSS_HOMEPAGE

  • LIBDVDCSS_MASTER_SITES

  • LIBTOOL

  • LIBTOOLIZE_PLIST

  • LIBTOOL_M4_OVERRIDE

  • LIBUSB_TYPE

  • LICENSE

  • LINKER_RPATH_FLAG

  • LINK_RPATH_FLAG

  • LINUX_BASE_NODEPS

  • LINUX_BASE_PREFERRED

  • LINUX_BASE_REQUIRED

  • LINUX_LOCALES

  • LOCALBASE

  • LOCALBASE_LOCKTYPE

  • LOCALPATCHES

  • LOVE_DATA

  • LOVE_GAME

  • LOVE_VERSION

  • LP64PLATFORMS

  • MACHINE_PLATFORM

  • MAILAGENT_DOMAIN

  • MAILAGENT_EMAIL

  • MAILAGENT_FQDN

  • MAILAGENT_ORGANIZATION

  • MAJORDOMO_HOMEDIR

  • MAJOR_OS_VERSION

  • MAKEINFO_ARGS

  • MAKE_DIRS

  • MAKE_DIRS_PERMS

  • MAKE_ENV

  • MAKE_FILE

  • MAKE_FLAGS

  • MAKE_JOBS

  • MAKE_JOBS_SAFE

  • MAKE_PROGRAM

  • MANINSTALL

  • MANZ

  • MASTER_SITES

  • MASTER_SITE_BACKUP

  • MASTER_SITE_CYGWIN

  • MASTER_SITE_GNOME

  • MASTER_SITE_GNU

  • MASTER_SITE_LOCAL

  • MASTER_SITE_MOZILLA

  • MASTER_SITE_OPENOFFICE

  • MASTER_SITE_OVERRIDE

  • MASTER_SITE_PERL_CPAN

  • MASTER_SITE_SUNSITE

  • MASTER_SITE_SUSE

  • MASTER_SITE_TEX_CTAN

  • MASTER_SITE_XCONTRIB

  • MASTER_SITE_XEMACS

  • MASTER_SORT

  • MASTER_SORT_RANDOM

  • MASTER_SORT_REGEX

  • MECAB_CHARSET

  • MEDIATOMB_GROUP

  • MEDIATOMB_USER

  • MIPSPROBASE

  • MIREDO_GROUP

  • MIREDO_USER

  • MISSING_FEATURES

  • MKDIR

  • MLDONKEY_GROUP

  • MLDONKEY_HOME

  • MLDONKEY_USER

  • MONOTONE_GROUP

  • MONOTONE_USER

  • MOTIFBASE

  • MOTIF_TYPE

  • MOTIF_TYPE_DEFAULT

  • MPI_TYPE

  • MSGFMT_STRIP_MSGCTXT

  • MSGFMT_STRIP_MSGID_PLURAL

  • MTOOLS_ENABLE_FLOPPYD

  • MUST

  • MV

  • MYSQL_CHARSET

  • MYSQL_DATADIR

  • MYSQL_EXTRA_CHARSET

  • MYSQL_GROUP

  • MYSQL_PKGSRCDIR

  • MYSQL_USER

  • MYSQL_VERSIONS_ACCEPTED

  • MYSQL_VERSION_DEFAULT

  • NAGIOSCMD_GROUP

  • NAGIOSDIR

  • NAGIOS_GROUP

  • NAGIOS_USER

  • NATIVE_APPEND_ABI

  • NATIVE_APPEND_ELF

  • NATIVE_EXEC_FMT

  • NATIVE_MACHINE_PLATFORM

  • NATIVE_OBJECT_FMT

  • NBPAX_PROGRAM_PREFIX

  • NETBSD_LOGIN_NAME

  • NMH_EDITOR

  • NMH_MTA

  • NMH_PAGER

  • NOLOGIN

  • NONZERO_FILESIZE_P

  • NOTE

  • NOT_FOR_PLATFORM

  • NOT_PAX_ASLR_SAFE

  • NOT_PAX_MPROTECT_SAFE

  • NO_BUILD

  • NO_CHECKSUM

  • NO_CONFIGURE

  • NO_SKIP

  • NS_PREFERRED

  • NULLMAILER_GROUP

  • NULLMAILER_USER

  • OASIS

  • OASIS_BUILD_ARGS

  • OBJHOSTNAME

  • OBJMACHINE

  • OCAML_FINDLIB_DIRS

  • OCAML_FINDLIB_REGISTER

  • OCAML_FINDLIB_REGISTER_VERBOSE

  • OCAML_SITELIBDIR

  • OCAML_TOPKG_DOCDIR

  • OCAML_USE_DUNE

  • OCAML_USE_FINDLIB

  • OCAML_USE_JBUILDER

  • OCAML_USE_OASIS

  • OCAML_USE_OASIS_DYNRUN

  • OCAML_USE_OPAM

  • OCAML_USE_OPT_COMPILER

  • OCAML_USE_TOPKG

  • OMF

  • ONLY_FOR_COMPILER

  • ONLY_FOR_PLATFORM

  • OPENSSH_CHROOT

  • OPENSSH_GROUP

  • OPENSSH_USER

  • OPSYS

  • OPSYS_EMULDIR

  • OSS_TYPE

  • OSX

  • OSX_TOLERATE_SDK_SKEW

  • OS_HAVE_ALSA

  • OS_HAVE_RCD

  • OS_VARIANT

  • OS_VERSION

  • OTF_FONTS_DIR

  • OVERRIDE_DIRDEPTH

  • OVERRIDE_GEMSPEC

  • OVERRIDE_GNU_CONFIG_SCRIPTS

  • OVERRIDE_ROCKSPEC

  • OWN_DIRS

  • OWN_DIRS_PERMS

  • P4GROUP

  • P4PORT

  • P4ROOT

  • P4USER

  • PACKAGES

  • PALMOS_DEFAULT_SDK

  • PAMBASE

  • PAM_DEFAULT

  • PAPERSIZE

  • PASSIVE_FETCH

  • PATCHDIR

  • PATCHFILES

  • PATCH_ARGS

  • PATCH_DEBUG

  • PATCH_DIST_ARGS

  • PATCH_DIST_CAT

  • PATCH_DIST_STRIP

  • PATCH_FUZZ_FACTOR

  • PATCH_STRIP

  • PATH

  • PCCBASE

  • PEAR

  • PEAR_CHANNEL

  • PEAR_CHANNEL_ALIAS

  • PEAR_CHANNEL_VERSION

  • PEAR_CMD

  • PEAR_LIB

  • PEAR_PACKAGE_XML

  • PERL5

  • PERL5_CONFIGURE

  • PERL5_CONFIGURE_DIRS

  • PERL5_LDFLAGS

  • PERL5_LICENSE

  • PERL5_MODULE_TYPE

  • PERL5_PACKLIST

  • PERL5_PACKLIST_DIR

  • PERL5_PERLBASE

  • PERL5_SITEBASE

  • PERL5_USE_PACKLIST

  • PERL5_VENDORBASE

  • PFCTL

  • PFVAR_H

  • PF_VERSION

  • PGGROUP

  • PGHOME

  • PGPKGSRCDIR

  • PGSQL_TYPE

  • PGSQL_VERSIONS_ACCEPTED

  • PGSQL_VERSION_DEFAULT

  • PGUSER

  • PG_LIB_EXT

  • PHP

  • PHPCOMMON_MK

  • PHPPKGSRCDIR

  • PHP_BASE_VERS

  • PHP_CHECK_INSTALLED

  • PHP_EXTENSION_DIR

  • PHP_INITIAL_TEENY

  • PHP_PKG_PREFIX

  • PHP_VERSION

  • PHP_VERSIONS_ACCEPTED

  • PHP_VERSIONS_INCOMPATIBLE

  • PHP_VERSION_DEFAULT

  • PHP_VERSION_REQD

  • PILRC_USE_GTK

  • PKGCONFIG_BASE

  • PKGCONFIG_FILE

  • PKGCONFIG_OVERRIDE

  • PKGCONFIG_OVERRIDE_STAGE

  • PKGDIR

  • PKGGNUDIR

  • PKGINFODIR

  • PKGLOCALEDIR

  • PKGMANDIR

  • PKGNAME

  • PKGNAME_REQD

  • PKGPATH

  • PKGREVISION

  • PKGSRC_CHANGES

  • PKGSRC_COMPILER

  • PKGSRC_KEEP_BIN_PKGS

  • PKGSRC_LOCKTYPE

  • PKGSRC_MAKE_ENV

  • PKGSRC_MESSAGE_RECIPIENTS

  • PKGSRC_MKPIE

  • PKGSRC_MKREPRO

  • PKGSRC_RUN_TEST

  • PKGSRC_SETENV

  • PKGSRC_SLEEPSECS

  • PKGSRC_TODO

  • PKGSRC_USE_CTF

  • PKGSRC_USE_FORTIFY

  • PKGSRC_USE_RELRO

  • PKGSRC_USE_SSP

  • PKGSRC_USE_STACK_CHECK

  • PKGTASKS_DATAFILE

  • PKGTOOLS_ARGS

  • PKGTOOLS_ENV

  • PKG_ALTERNATIVES

  • PKG_APACHE

  • PKG_APACHE_ACCEPTED

  • PKG_APACHE_DEFAULT

  • PKG_BEST_EXISTS

  • PKG_BUILD_OPTIONS

  • PKG_COMPRESSION

  • PKG_CONFIG

  • PKG_CONFIG_PERMS

  • PKG_CREATE_USERGROUP

  • PKG_DB_TMPDIR

  • PKG_DEBUG_LEVEL

  • PKG_DEFAULT_OPTIONS

  • PKG_DESTDIR_SUPPORT

  • PKG_DEVELOPER

  • PKG_DISABLED_OPTIONS

  • PKG_FATAL_ERRORS

  • PKG_FC

  • PKG_FILELIST_CMD

  • PKG_GECOS

  • PKG_GID

  • PKG_GROUPS

  • PKG_GROUPS_VARS

  • PKG_HOME

  • PKG_INIT_SCRIPTS

  • PKG_JAVA_HOME

  • PKG_JVM

  • PKG_JVMS_ACCEPTED

  • PKG_JVM_DEFAULT

  • PKG_LEGACY_OPTIONS

  • PKG_LIBTOOL

  • PKG_OPTIONS

  • PKG_OPTIONS_DEPRECATED_WARNINGS

  • PKG_OPTIONS_LEGACY_OPTS

  • PKG_OPTIONS_LEGACY_VARS

  • PKG_OPTIONS_NONEMPTY_SETS

  • PKG_OPTIONS_OPTIONAL_GROUPS

  • PKG_OPTIONS_REQUIRED_GROUPS

  • PKG_OPTIONS_VAR

  • PKG_PHP

  • PKG_PHP_MAJOR_VERS

  • PKG_PHP_VERSION

  • PKG_RCD_SCRIPTS

  • PKG_REFCOUNT_DBDIR

  • PKG_REGISTER_SHELLS

  • PKG_RESUME_TRANSFERS

  • PKG_SHELL

  • PKG_SUGGESTED_OPTIONS

  • PKG_SUPPORTED_OPTIONS

  • PKG_SYSCONFBASE

  • PKG_SYSCONFBASEDIR

  • PKG_SYSCONFDIR

  • PKG_SYSCONFDIR_PERMS

  • PKG_SYSCONFSUBDIR

  • PKG_SYSCONFVAR

  • PKG_TOOLS_BIN

  • PKG_UID

  • PKG_UPDATE_FONTS_DB

  • PKG_USERS

  • PKG_USERS_VARS

  • PKG_VERBOSE

  • PLIST

  • PLIST_AWK

  • PLIST_AWK_ENV

  • PLIST_SRC

  • PLIST_SUBST

  • PLIST_TYPE

  • PLIST_VARS

  • POPTOP_USE_MPPE

  • POST_FETCH_HOOK

  • PREFER

  • PREFER_NATIVE

  • PREFER_NATIVE_PTHREADS

  • PREFER_PKGSRC

  • PREFIX

  • PREPEND_PATH

  • PRE_ROOT_CMD

  • PRIVILEGED_STAGES

  • PS

  • PTHREAD_AUTO_VARS

  • PTHREAD_CFLAGS

  • PTHREAD_LDFLAGS

  • PTHREAD_LIBS

  • PTHREAD_OPTS

  • PTHREAD_TYPE

  • PVM_SSH

  • PYPKGPREFIX

  • PYTHON_FOR_BUILD_ONLY

  • PYTHON_SELF_CONFLICT

  • PYTHON_VERSIONED_DEPENDENCIES

  • PYTHON_VERSIONS_ACCEPTED

  • PYTHON_VERSIONS_INCOMPATIBLE

  • PYTHON_VERSION_DEFAULT

  • PYTHON_VERSION_REQD

  • PYVERSSUFFIX

  • PY_NO_EGG

  • QMAILDIR

  • QMAIL_ALIAS_USER

  • QMAIL_DAEMON_USER

  • QMAIL_LOG_USER

  • QMAIL_NOFILES_GROUP

  • QMAIL_PASSWD_USER

  • QMAIL_QMAIL_GROUP

  • QMAIL_QUEUE_DIR

  • QMAIL_QUEUE_EXTRA

  • QMAIL_QUEUE_USER

  • QMAIL_REMOTE_USER

  • QMAIL_ROOT_USER

  • QMAIL_SEND_USER

  • QPOPPER_FAC

  • QPOPPER_SPOOL_DIR

  • QPOPPER_USER

  • RAKE_NAME

  • RASMOL_DEPTH

  • RCD_DIR

  • RCD_ORDER

  • RCD_SCRIPTS

  • RCD_SCRIPTS_DIR

  • RCD_SCRIPTS_EXAMPLEDIR

  • RCD_SCRIPTS_MODE

  • RCD_SCRIPTS_SHELL

  • RCD_SCRIPT_SRC

  • RCD_SUBR

  • RDOC

  • READLINE_DEFAULT

  • READLINE_TYPE

  • REAL_ROOT_GROUP

  • REAL_ROOT_USER

  • RECURSIVE_MAKE

  • RELAY_CTRL_DIR

  • REPLACE_AWK

  • REPLACE_BASH

  • REPLACE_CSH

  • REPLACE_KSH

  • REPLACE_PERL

  • REPLACE_PERL6

  • REPLACE_PYTHON

  • REPLACE_RUBY

  • REPLACE_RUBY_DIRS

  • REPLACE_RUBY_PAT

  • REPLACE_SH

  • REPLACE_TEXLUA

  • REQD_DIRS

  • REQD_DIRS_PERMS

  • REQD_FILES

  • REQD_FILES_MODE

  • REQD_FILES_PERMS

  • RESOLV_AUTO_VARS

  • RESOLV_LDFLAGS

  • RESOLV_LIBS

  • RM

  • ROCKSPEC_NAME

  • ROCKSPEC_SPECFILE

  • ROOT_CMD

  • ROOT_GROUP

  • ROOT_USER

  • RPCGEN

  • RPM

  • RPM2PKG_PLIST

  • RPM2PKG_PREFIX

  • RPM2PKG_STAGE

  • RPM2PKG_STRIP

  • RPM2PKG_SUBPREFIX

  • RPMFILES

  • RPMIGNOREPATH

  • RPM_DB_PREFIX

  • RSSH_CVS_PATH

  • RSSH_RDIST_PATH

  • RSSH_RSYNC_PATH

  • RSSH_SCP_PATH

  • RSSH_SFTP_SERVER_PATH

  • RUBY

  • RUBYGEM

  • RUBYGEM_NAME

  • RUBYGEM_OPTIONS

  • RUBY_ABI_VERSION

  • RUBY_ARCH

  • RUBY_ARCHINC

  • RUBY_ARCHLIB

  • RUBY_BASE

  • RUBY_BASERIDIR

  • RUBY_BUILD_RDOC

  • RUBY_BUILD_RI

  • RUBY_DLEXT

  • RUBY_DOC

  • RUBY_DYNAMIC_DIRS

  • RUBY_EG

  • RUBY_ENCODING_ARG

  • RUBY_EXTCONF

  • RUBY_EXTCONF_CHECK

  • RUBY_EXTCONF_DEBUG

  • RUBY_EXTCONF_MAKEFILE

  • RUBY_GEM_BASE

  • RUBY_INC

  • RUBY_LIB

  • RUBY_LIB_BASE

  • RUBY_NAME

  • RUBY_NOVERSION

  • RUBY_PKGPREFIX

  • RUBY_RAILS

  • RUBY_RAILS42_VERSION

  • RUBY_RAILS51_VERSION

  • RUBY_RAILS52_VERSION

  • RUBY_RAILS_ACCEPTED

  • RUBY_RAILS_DEFAULT

  • RUBY_RAILS_REQD

  • RUBY_RAILS_STRICT_DEP

  • RUBY_RIDIR

  • RUBY_SETUP

  • RUBY_SHLIB

  • RUBY_SHLIBALIAS

  • RUBY_SHLIBVER

  • RUBY_SIMPLE_INSTALL

  • RUBY_SITEARCHLIB

  • RUBY_SITELIB

  • RUBY_SITELIB_BASE

  • RUBY_SITERIDIR

  • RUBY_SLEXT

  • RUBY_SRCDIR

  • RUBY_STATICLIB

  • RUBY_SUFFIX

  • RUBY_SYSRIDIR

  • RUBY_USE_PTHREAD

  • RUBY_VENDORARCHLIB

  • RUBY_VENDORLIB

  • RUBY_VENDORLIB_BASE

  • RUBY_VER

  • RUBY_VERSION

  • RUBY_VERSIONS_ACCEPTED

  • RUBY_VERSION_DEFAULT

  • RUBY_VERSION_REQD

  • RUBY_VER_DIR

  • RUN

  • RUN_LDCONFIG

  • SAWFISH_THEMES

  • SCO

  • SCREWS_GROUP

  • SCREWS_USER

  • SCRIPTS_ENV

  • SCROLLKEEPER_DATADIR

  • SCROLLKEEPER_REBUILDDB

  • SCROLLKEEPER_UPDATEDB

  • SDIST_PAWD

  • SERIAL_DEVICES

  • SETGIDGAME

  • SETGID_GAMES_PERMS

  • SETUID_ROOT_PERMS

  • SH

  • SHLIB

  • SHORTNAME

  • SIGN_PACKAGES

  • SILC_CLIENT_WITH_PERL

  • SITE_SPECIFIC_PKGS

  • SKIP_DEPENDS

  • SKIP_PORTABILITY_CHECK

  • SMF_INSTANCES

  • SMF_MANIFEST

  • SMF_METHODS

  • SMF_METHOD_SHELL

  • SMF_METHOD_SRC

  • SMF_NAME

  • SMF_PREFIX

  • SMF_SRCDIR

  • SNIPROXY_GROUP

  • SNIPROXY_USER

  • SOURCE_BUFFSIZE

  • SPECIAL_PERMS

  • SPECIFIC_PKGS

  • SSH_SUID

  • SSYNC_PAWD

  • STEP_MSG

  • STRIP

  • STRIP_DBG

  • STRIP_DEBUG

  • STRIP_DEBUG_SUPPORTED

  • STRIP_FILES_SKIP

  • SU

  • SUBDIR

  • SUBST_CLASSES

  • SUBST_FILES

  • SUBST_FILTER_CMD

  • SUBST_MESSAGE

  • SUBST_SED

  • SUBST_SHOW_DIFF

  • SUBST_SKIP_TEXT_CHECK

  • SUBST_STAGE

  • SUBST_VARS

  • SUNWSPROBASE

  • SUSE_PREFER

  • SU_CMD

  • SVN_EXTRACTDIR

  • SVN_REPO

  • SVN_REPOSITORIES

  • SVN_REVISION

  • TERMCAP_TYPE

  • TERMINFO_DEFAULT

  • TERMINFO_TYPE

  • TEST

  • TEST_DIRS

  • TEST_ENV

  • TEST_MAKE_CMD

  • TEST_MAKE_FLAGS

  • TEST_TARGET

  • TEXLIVE_IGNORE_PATTERNS

  • TEXLIVE_REV

  • TEXMFSITE

  • TEX_FORMATS

  • TEX_HYPHEN_DAT

  • TEX_HYPHEN_DEF

  • TEX_TEXMF_DIRS

  • THTTPD_LOG_FACILITY

  • TO

  • TOOLS_ALIASES

  • TOOLS_ARGS

  • TOOLS_BROKEN

  • TOOLS_CMD

  • TOOLS_CREATE

  • TOOLS_DIR

  • TOOLS_FAIL

  • TOOLS_GNU_MISSING

  • TOOLS_LDCONFIG

  • TOOLS_NOOP

  • TOOLS_PATH

  • TOOLS_SCRIPT

  • TTF_FONTDIR

  • TTF_FONTS_DIR

  • TYPE

  • UAC_REQD_EXECS

  • UCSPI_SSL_GROUP

  • UCSPI_SSL_USER

  • UNLIMIT_RESOURCES

  • UNPRIVILEGED

  • UNPRIVILEGED_GROUP

  • UNPRIVILEGED_GROUPS

  • UNPRIVILEGED_USER

  • UNWRAP_FILES

  • UNWRAP_PATTERNS

  • UPDATE_GEMSPEC

  • UPDATE_TARGET

  • URI

  • USA

  • USERGROUP_PHASE

  • USERPPP_GROUP

  • USER_SPECIFIC_PKGS

  • USE_ABI_DEPENDS

  • USE_APR

  • USE_BSD_MAKEFILE

  • USE_BUILTIN

  • USE_CROSS_COMPILE

  • USE_CURSES

  • USE_CWRAPPERS

  • USE_DB185

  • USE_FEATURES

  • USE_GAMESGROUP

  • USE_GCC_RUNTIME

  • USE_IMAKE

  • USE_JAVA

  • USE_JAVA2

  • USE_LANGUAGES

  • USE_LIBTOOL

  • USE_NATIVE_GCC

  • USE_NETBSD_REPO

  • USE_PKGSRC_GCC

  • USE_PKGSRC_GCC_RUNTIME

  • USE_PKGTASKS

  • USE_RUBY_EXTCONF

  • USE_RUBY_INSTALL

  • USE_RUBY_SETUP

  • USE_RUBY_SETUP_PKG

  • USE_TOOLS

  • UUCP_GROUP

  • UUCP_USER

  • VARBASE

  • VARNAME

  • VIM_EXTRA_OPTS

  • WARNING_MSG

  • WCALC_CGIDIR

  • WCALC_CGIPATH

  • WCALC_HTMLDIR

  • WCALC_HTMLPATH

  • WDM_MANAGERS

  • WRAPPER_REORDER_CMDS

  • WRKDIR

  • WRKDIR_BASENAME

  • WRKDIR_LOCKTYPE

  • WRKLOG

  • WRKOBJDIR

  • WRKSRC

  • WXGTK_ACCEPTED

  • WXGTK_DEFAULT

  • X10_PORT

  • X11

  • X11BASE

  • X11_PKGSRCDIR

  • X11_TYPE

  • X509_CERTIFICATE

  • X509_KEY

  • XAW_TYPE

  • XLOCK_DEFAULT_MODE

  • XMKMF_FLAGS

  • XXX

  • XXXX

  • YES

  • ZERO_FILESIZE_P

  • ZSH_STATIC

  • __stdc__

  • _vargroups

  • add

  • all

  • alternatives

  • aslr

  • asprintf

  • autoconf

  • automake

  • autoreconf

  • awk

  • bash

  • big-endian

  • bin-install

  • binpkg-list

  • bootstrap-depends

  • broken

  • broken_on_platform

  • build

  • build-env

  • buildlink-directories

  • buildlink-oss-soundcard-h

  • c

  • c++

  • ccache

  • cce

  • cdefs

  • changes

  • changes-entry

  • changes-entry-noupdate

  • check

  • check-clean

  • check-files

  • check-files-clean

  • check-vulnerable

  • checksum

  • checksum-phase

  • clean

  • clean-depends

  • cleandir

  • commit

  • commit-changes-entry

  • compact

  • compiler

  • conf

  • config.guess

  • config.sub

  • configuration

  • configure

  • configure-help

  • configure_args

  • cputime

  • create-usergroup

  • csh

  • ctf

  • cvs

  • debug

  • declaration

  • declare

  • defined

  • depend

  • dependencies

  • depends

  • depends-checksum

  • depends-fetch

  • describe

  • destdir

  • distclean

  • distinfo

  • dl

  • dlopen

  • do-build

  • do-buildlink

  • do-clean

  • do-configure-post-hook

  • do-extract

  • do-fetch

  • do-install

  • emul

  • emulation

  • emulator

  • endian

  • enomem

  • err

  • errx

  • etc

  • feature

  • features

  • fetch

  • fetch-list

  • follows

  • forbids

  • form

  • format

  • fortify

  • fortify_source

  • fossil

  • friend

  • from

  • fts

  • fts_close

  • fts_open

  • fts_read

  • fts_set

  • full

  • gcc

  • getopt_long

  • getprogname

  • gettext

  • git

  • github

  • glob

  • gnu

  • go

  • golang

  • guess-license

  • hashbang

  • heimdal

  • help

  • hg

  • imake

  • increment

  • interp

  • interpreter

  • intl

  • iso

  • kerberos

  • krb

  • krb5

  • ksh

  • latex

  • libnbcompat

  • libs

  • libtool

  • licence

  • license

  • lintl

  • little-endian

  • lock

  • locking

  • lvalue

  • make

  • makesum

  • memory

  • mercurial

  • meta

  • meta-package

  • meta_package

  • mit-krb5

  • mk.conf

  • mount

  • mprotect

  • mremap

  • nb

  • nbcompat

  • no

  • obstack

  • obstack_ptr_grow

  • occurs

  • only

  • options

  • options.mk

  • order

  • override

  • override-intltool

  • override-message-intltool

  • package

  • parallel

  • partial

  • path

  • pax

  • paxctl

  • pbulk-index

  • pc

  • perl

  • perl5

  • perms

  • php

  • pkg-build-options

  • pkg-config

  • pkg_build_options

  • platform

  • plist

  • post-extract

  • post-fetch

  • post-wrapper

  • pre-configure

  • pre-extract

  • pre-fetch

  • print-plist

  • print-summary-data

  • privileged-install-hook

  • pypi

  • python

  • readme-all

  • regcomp

  • relro

  • rename

  • reorder

  • replace

  • replace_interpreter

  • reproducible

  • resolv

  • root

  • ruby

  • setenv

  • setgid

  • setprogname

  • setuid

  • sh

  • show

  • show-all

  • show-build-defs

  • show-depends

  • show-deps

  • show-distfiles

  • show-downlevel

  • show-subdir-var

  • show-tools

  • show-var

  • show-vars

  • snprintf

  • ssp

  • st_mode

  • stage-install

  • strip

  • strong

  • subst

  • subversion

  • sun

  • sunpro

  • sunwspro

  • svn

  • test

  • tex

  • texlive

  • tmp

  • tool

  • tools

  • tools-libtool-m4-override

  • type

  • ulimit

  • undefined

  • undo-replace

  • unlimit

  • unprivileged

  • unprivileged-install-hook

  • unstripped

  • update

  • upload

  • upload-distfiles

  • usage

  • use_tools

  • user

  • utimes

  • vasprintf

  • verbose

  • vsnprintf

  • warn

  • warning

  • warnings

  • warnx

  • weak

  • work

  • wrapper

  • yes

  • @ 1.266 log @doc/pkgsrc.*: regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.33 2019/01/01 02:50:23 jnemeth Exp $

    d63 2 a64 1
    2. Where to get pkgsrc and how to keep it up-to-date
    d66 1 a66 1
    2.1. Getting pkgsrc for the first time
    d68 2 a69 2
    2.1.1. As tar archive
    2.1.2. Via anonymous CVS
    d71 1 a71 1
    2.2. Keeping pkgsrc up-to-date
    d73 2 a74 2
    2.2.1. Via tar files
    2.2.2. Via CVS
    d77 1 a77 1
    3. Using pkgsrc on systems other than NetBSD
    d79 2 a80 2
    3.1. Binary distribution
    3.2. Bootstrapping pkgsrc
    d82 1 a82 1
    4. Using pkgsrc
    d84 1 a84 1
    4.1. Using binary packages
    d86 7 a92 7
    4.1.1. Finding binary packages
    4.1.2. Installing binary packages
    4.1.3. Deinstalling packages
    4.1.4. Getting information about installed packages
    4.1.5. Checking for security vulnerabilities in installed packages
    4.1.6. Finding if newer versions of your installed packages are in pkgsrc
    4.1.7. Other administrative functions
    d94 1 a94 1
    4.2. Building packages from source
    d96 3 a98 3
    4.2.1. Requirements
    4.2.2. Fetching distfiles
    4.2.3. How to build and install
    d101 1 a101 1
    5. Configuring pkgsrc
    d103 4 a106 4
    5.1. General configuration
    5.2. Variables affecting the build process
    5.3. Variables affecting the installation process
    5.4. Selecting and configuring the compiler
    d108 3 a110 3
    5.4.1. Selecting the compiler
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d112 2 a113 2
    5.5. Developer/advanced settings
    5.6. Selecting Build Options
    d115 1 a115 1
    6. Creating binary packages
    d117 2 a118 2
    6.1. Building a single binary package
    6.2. Settings for creation of binary packages
    d120 1 a120 1
    7. Creating binary packages for everything in pkgsrc (bulk d123 24 a146 24
    7.1. Preparations
    7.2. Running a pbulk-style bulk build
    7.2.1. Configuration
    7.3. Requirements of a full bulk build
    7.4. Creating a multiple CD-ROM packages collection
    7.4.1. Example of cdpack
    8. Directory layout of the installed files
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    9. Frequently Asked Questions
    9.1. Are there any mailing lists for pkg-related discussion?
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d148 7 a154 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d159 2 a160 1
    10. Creating a new pkgsrc package from scratch
    d162 1 a162 1
    10.1. Common types of packages
    d164 2 a165 2
    10.1.1. Perl modules
    10.1.2. Python modules and programs
    d167 2 a168 2
    10.2. Examples
    10.2.1. How the www/nvu package came into pkgsrc
    d170 1 a170 1
    11. Package components - files, directories and contents
    d172 3 a174 3
    11.1. Makefile
    11.2. distinfo
    11.3. patches/*
    d176 5 a180 5
    11.3.1. Structure of a single patch file
    11.3.2. Creating patch files
    11.3.3. Sources where the patch files come from
    11.3.4. Patching guidelines
    11.3.5. Feedback to the author
    d182 2 a183 2
    11.4. Other mandatory files
    11.5. Optional files
    d185 3 a187 3
    11.5.1. Files affecting the binary package
    11.5.2. Files affecting the build process
    11.5.3. Files affecting nothing at all
    d189 2 a190 2
    11.6. work*
    11.7. files/*
    d192 1 a192 1
    12. Programming in Makefiles
    d194 4 a197 4
    12.1. Caveats
    12.2. Makefile variables
    12.2.1. Naming conventions
    12.3. Code snippets
    d199 4 a202 4
    12.3.1. Adding things to a list
    12.3.2. Echoing a string exactly as-is
    12.3.3. Passing CFLAGS to GNU configure scripts
    12.3.4. Handling possibly empty variables
    d205 1 a205 1
    13. PLIST issues
    d207 9 a215 9
    13.1. RCS ID
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    13.4. Variable substitution in PLIST
    13.5. Man page compression
    13.6. Changing PLIST source with PLIST_SRC
    13.7. Platform-specific and differing PLISTs
    13.8. Build-specific PLISTs
    13.9. Sharing directories between packages
    d217 1 a217 1
    14. Buildlink methodology
    d219 2 a220 2
    14.1. Converting packages to use buildlink3
    14.2. Writing buildlink3.mk files
    d222 2 a223 2
    14.2.1. Anatomy of a buildlink3.mk file
    14.2.2. Updating d229 1 a229 1
    14.3. Writing builtin.mk files
    d231 2 a232 2
    14.3.1. Anatomy of a builtin.mk file
    14.3.2. Global preferences for native or pkgsrc software
    d235 1 a235 1
    15. The pkginstall framework
    d237 120 a356 120
    15.1. Files and directories outside the installation prefix
    15.1.1. Directory manipulation
    15.1.2. File manipulation
    15.2. Configuration files
    15.2.1. How PKG_SYSCONFDIR is set
    15.2.2. Telling the software where configuration files are
    15.2.3. Patching installations
    15.2.4. Disabling handling of configuration files
    15.3. System startup scripts
    15.3.1. Disabling handling of system startup scripts
    15.4. System users and groups
    15.5. System shells
    15.5.1. Disabling shell registration
    15.6. Fonts
    15.6.1. Disabling automatic update of the fonts databases
    16. Options handling
    16.1. Global default options
    16.2. Converting packages to use bsd.options.mk
    16.3. Option Names
    16.4. Determining the options of dependencies
    17. The build process
    17.1. Introduction
    17.2. Program location
    17.3. Directories used during the build process
    17.4. Running a phase
    17.5. The fetch phase
    17.5.1. What to fetch and where to get it from
    17.5.2. How are the files fetched?
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    17.16. Cleaning up
    17.17. Other helpful targets
    18. Tools needed for building or running
    18.1. Tools for pkgsrc builds
    18.2. Tools needed by packages
    18.3. Tools provided by platforms
    19. Making your package work
    19.1. General operation
    19.1.1. How to pull in user-settable variables from mk.conf
    19.1.2. User interaction
    19.1.3. Handling licenses
    19.1.4. Restricted packages
    19.1.5. Handling dependencies
    19.1.6. Handling conflicts with other packages
    19.1.7. Packages that cannot or should not be built
    19.1.8. Packages which should not be deleted, once installed
    19.1.9. Handling packages with security problems
    19.1.10. How to handle incrementing versions when fixing an existing package
    19.1.11. Substituting variable text in the package files (the SUBST framework)
    19.2. The fetch phase
    19.2.1. Packages whose distfiles aren't available for plain downloading
    19.2.2. How to handle modified distfiles with the 'old' name
    19.2.3. Packages hosted on github.com
    19.3. The configure phase
    19.3.1. Shared libraries - libtool
    19.3.2. Using libtool on GNU packages that already support libtool
    19.3.3. GNU Autoconf/Automake
    19.4. Programming languages
    19.4.1. C, C++, and Fortran
    19.4.2. Java
    19.4.3. Packages containing perl scripts
    19.4.4. Packages containing shell scripts
    19.4.5. Other programming languages
    19.5. The build phase
    19.5.1. Compiling C and C++ code conditionally
    19.5.2. How to handle compiler bugs
    19.5.3. Undefined reference to ...
    19.5.4. Running out of memory
    19.6. The install phase
    19.6.1. Creating needed directories
    19.6.2. Where to install documentation
    19.6.3. Installing highscore files
    19.6.4. Adding DESTDIR support to packages
    19.6.5. Packages with hardcoded paths to other interpreters
    19.6.6. Packages installing perl modules
    19.6.7. Packages installing info files
    19.6.8. Packages installing man pages
    19.6.9. Packages installing GConf data files
    19.6.10. Packages installing scrollkeeper/rarian data files
    19.6.11. Packages installing X11 fonts
    19.6.12. Packages installing GTK2 modules
    19.6.13. Packages installing SGML or XML data
    19.6.14. Packages installing extensions to the MIME database
    19.6.15. Packages using intltool
    19.6.16. Packages installing startup scripts
    19.6.17. Packages installing TeX modules
    19.6.18. Packages supporting running binaries in d358 2 a359 2
    19.6.19. Packages installing hicolor theme icons
    19.6.20. Packages installing desktop files
    d361 1 a361 1
    19.7. Marking packages as having problems
    d363 2 a364 2
    20. Debugging
    21. Submitting and Committing
    d366 16 a381 16
    21.1. Submitting binary packages
    21.2. Submitting source packages (for non-NetBSD-developers)
    21.3. General notes when adding, updating, or removing packages
    21.4. Commit Messages
    21.5. Committing: Adding a package to CVS
    21.6. Updating a package to a newer version
    21.7. Renaming a package in pkgsrc
    21.8. Moving a package in pkgsrc
    22. Frequently Asked Questions
    23. GNOME packaging and porting
    23.1. Meta packages
    23.2. Packaging a GNOME application
    23.3. Updating GNOME to a newer version
    23.4. Patching guidelines
    d386 1 a386 1
    24. Design of the pkgsrc infrastructure
    d388 3 a390 3
    24.1. The meaning of variable definitions
    24.2. Avoiding problems before they arise
    24.3. Variable evaluation
    d392 2 a393 2
    24.3.1. At load time
    24.3.2. At runtime
    d395 2 a396 2
    24.4. How can variables be specified?
    24.5. Designing interfaces for Makefile fragments
    d398 2 a399 2
    24.5.1. Procedures with parameters
    24.5.2. Actions taken on behalf of parameters
    d401 1 a401 1
    24.6. The order in which files are loaded
    d403 2 a404 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d407 1 a407 1
    25. Regression tests
    d409 2 a410 2
    25.1. Running the regression tests
    25.2. Adding a new regression test
    d412 2 a413 2
    25.2.1. Overridable functions
    25.2.2. Helper functions
    d416 2 a417 2
    26. Porting pkgsrc
    26.1. Porting pkgsrc to a new operating system
    d446 2 a447 1
    D. Editing guidelines for the pkgsrc guide
    d449 2 a450 2
    D.1. Make targets
    D.2. Procedure
    d459 1 a459 1
    11.1. Patching examples d461 1 a461 1
    23.1. PLIST handling for GNOME packages d805 2 a806 1
    2. Where to get pkgsrc and how to keep it up-to-date
    d808 1 a808 1
    2.1. Getting pkgsrc for the first time
    d810 2 a811 2
    2.1.1. As tar archive
    2.1.2. Via anonymous CVS
    d813 1 a813 1
    2.2. Keeping pkgsrc up-to-date
    d815 2 a816 2
    2.2.1. Via tar files
    2.2.2. Via CVS
    d819 1 a819 1
    3. Using pkgsrc on systems other than NetBSD
    d821 2 a822 2
    3.1. Binary distribution
    3.2. Bootstrapping pkgsrc
    d824 1 a824 1
    4. Using pkgsrc
    d826 1 a826 1
    4.1. Using binary packages
    d828 7 a834 7
    4.1.1. Finding binary packages
    4.1.2. Installing binary packages
    4.1.3. Deinstalling packages
    4.1.4. Getting information about installed packages
    4.1.5. Checking for security vulnerabilities in installed packages
    4.1.6. Finding if newer versions of your installed packages are in pkgsrc
    4.1.7. Other administrative functions
    d836 1 a836 1
    4.2. Building packages from source
    d838 3 a840 3
    4.2.1. Requirements
    4.2.2. Fetching distfiles
    4.2.3. How to build and install
    d843 1 a843 1
    5. Configuring pkgsrc
    d845 4 a848 4
    5.1. General configuration
    5.2. Variables affecting the build process
    5.3. Variables affecting the installation process
    5.4. Selecting and configuring the compiler
    d850 3 a852 3
    5.4.1. Selecting the compiler
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d854 2 a855 2
    5.5. Developer/advanced settings
    5.6. Selecting Build Options
    d857 1 a857 1
    6. Creating binary packages
    d859 2 a860 2
    6.1. Building a single binary package
    6.2. Settings for creation of binary packages
    d862 1 a862 1
    7. Creating binary packages for everything in pkgsrc (bulk d865 24 a888 24
    7.1. Preparations
    7.2. Running a pbulk-style bulk build
    7.2.1. Configuration
    7.3. Requirements of a full bulk build
    7.4. Creating a multiple CD-ROM packages collection
    7.4.1. Example of cdpack
    8. Directory layout of the installed files
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    9. Frequently Asked Questions
    9.1. Are there any mailing lists for pkg-related discussion?
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d890 7 a896 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d902 32 a933 1 Chapter 2. Where to get pkgsrc and how to keep it up-to-date d937 1 a937 1
    2.1. Getting pkgsrc for the first time
    d939 2 a940 2
    2.1.1. As tar archive
    2.1.2. Via anonymous CVS
    d942 1 a942 1
    2.2. Keeping pkgsrc up-to-date
    d944 2 a945 2
    2.2.1. Via tar files
    2.2.2. Via CVS
    d959 1 a959 1 2.1. Getting pkgsrc for the first time d974 1 a974 1 2.1.1. As tar archive d1009 1 a1009 1 2.1.2. Via anonymous CVS d1049 1 a1049 1 2.2. Keeping pkgsrc up-to-date d1056 1 a1056 1 2.2.1. Via tar files d1072 1 a1072 1 variables. See Chapter 5, Configuring pkgsrc for the details.

    d1080 1 a1080 1 2.2.2. Via CVS d1089 1 a1089 1 2.2.2.1. Switching between different pkgsrc branches d1100 1 a1100 1 2.2.2.2. What happens to my changes when updating? d1114 1 a1114 1 Chapter 3. Using pkgsrc on systems other than NetBSD d1118 2 a1119 2
    3.1. Binary distribution
    3.2. Bootstrapping pkgsrc
    d1124 2 a1125 2 3.1. Binary distribution

    See Section 4.1, “Using binary packages”.

    d1129 1 a1129 1 3.2. Bootstrapping pkgsrc d1177 1 a1177 1 Chapter 4. Using pkgsrc d1181 1 a1181 1
    4.1. Using binary packages
    d1183 13 a1195 13
    4.1.1. Finding binary packages
    4.1.2. Installing binary packages
    4.1.3. Deinstalling packages
    4.1.4. Getting information about installed packages
    4.1.5. Checking for security vulnerabilities in installed packages
    4.1.6. Finding if newer versions of your installed packages are in pkgsrc
    4.1.7. Other administrative functions
    4.2. Building packages from source
    4.2.1. Requirements
    4.2.2. Fetching distfiles
    4.2.3. How to build and install
    d1207 1 a1207 1 4.1. Using binary packages d1219 1 a1219 1 have to build the packages yourself, which is explained in Section 3.2, “Bootstrapping pkgsrc”.

    d1222 1 a1222 1 4.1.1. Finding binary packages d1241 1 a1241 1 4.1.2. Installing binary packages d1280 1 a1280 1 4.1.3. Deinstalling packages d1306 1 a1306 1 4.1.4. Getting information about installed packages d1312 1 a1312 1 4.1.5. Checking for security vulnerabilities in installed packages d1375 1 a1375 1 4.1.6. Finding if newer versions of your installed packages are in pkgsrc d1392 1 a1392 1 4.1.7. Other administrative functions d1399 1 a1399 1 4.2. Building packages from source d1417 1 a1417 1 4.2.1. Requirements d1427 1 a1427 1 4.2.2. Fetching distfiles d1477 1 a1477 1 4.2.3. How to build and install d1608 1 a1608 1 Chapter 5. Configuring pkgsrc d1612 8 a1619 8
    5.1. General configuration
    5.2. Variables affecting the build process
    5.3. Variables affecting the installation process
    5.4. Selecting and configuring the compiler
    5.4.1. Selecting the compiler
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d1621 2 a1622 2
    5.5. Developer/advanced settings
    5.6. Selecting Build Options
    d1639 1 a1639 1 5.1. General configuration d1689 1 a1689 1 5.2. Variables affecting the build process d1710 1 a1710 1 See Section 11.3, “patches/* for more d1722 1 a1722 1 5.3. Variables affecting the installation process d1790 1 a1790 1 5.4. Selecting and configuring the compiler d1793 1 a1793 1 5.4.1. Selecting the compiler d1861 1 a1861 1 5.4.2. Additional flags to the compiler (CFLAGS) d1877 1 a1877 1 5.4.3. Additional flags to the linker (LDFLAGS) d1895 1 a1895 1 5.5. Developer/advanced settings d1927 1 a1927 1 5.6. Selecting Build Options d1998 1 a1998 1 Chapter 6. Creating binary packages d2002 2 a2003 2
    6.1. Building a single binary package
    6.2. Settings for creation of binary packages
    d2008 1 a2008 1 6.1. Building a single binary package d2029 1 a2029 1

    See Chapter 21, Submitting and Committing for information on how to submit d2034 2 a2035 2 6.2. Settings for creation of binary packages

    See Section 17.17, “Other helpful targets”.

    d2040 1 a2040 1 Chapter 7. Creating binary packages for everything in pkgsrc (bulk d2045 6 a2050 6
    7.1. Preparations
    7.2. Running a pbulk-style bulk build
    7.2.1. Configuration
    7.3. Requirements of a full bulk build
    7.4. Creating a multiple CD-ROM packages collection
    7.4.1. Example of cdpack
    d2064 1 a2064 1 7.1. Preparations d2089 1 a2089 1 7.2. Running a pbulk-style bulk build d2097 1 a2097 1 7.2.1. Configuration d2158 1 a2158 1 7.3. Requirements of a full bulk build d2174 1 a2174 1 7.4. Creating a multiple CD-ROM packages collection d2185 1 a2185 1 7.4.1. Example of cdpack d2220 1 a2220 1 Chapter 8. Directory layout of the installed files d2224 2 a2225 2
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    d2274 1 a2274 1 8.1. File system layout in ${LOCALBASE} d2340 1 a2340 1 8.2. File system layout in ${VARBASE} d2361 1 a2361 1 Chapter 9. Frequently Asked Questions d2365 10 a2374 10
    9.1. Are there any mailing lists for pkg-related discussion?
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d2376 7 a2382 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2390 1 a2390 1 9.1. Are there any mailing lists for pkg-related discussion? d2421 1 a2421 1 9.2. Utilities for package management (pkgtools) d2497 1 a2497 1 9.3. How to use pkgsrc as non-root d2499 1 a2499 1 pkgsrc as described in Chapter 2, Where to get pkgsrc and how to keep it up-to-date, cd into that d2509 1 a2509 1 9.4. How to resume transfers when fetching distfiles? d2533 1 a2533 1 9.5. How can I install/use modular X.org from pkgsrc? d2544 1 a2544 1 9.6. How to fetch files from behind a firewall d2559 1 a2559 1 9.7. How to fetch files from HTTPS sites d2574 1 a2574 1 9.8. How do I tell make fetch to do passive FTP? d2594 1 a2594 1 9.9. How to fetch all distfiles at once d2626 1 a2626 1 9.10. What does Don't know how to make d2640 1 a2640 1 9.11. What does Could not find bsd.own.mk mean? d2652 1 a2652 1 9.12. Using 'sudo' with pkgsrc d2670 1 a2670 1 9.13. How do I change the location of configuration files? d2692 1 a2692 1 9.14. Automated security checks d2716 1 a2716 1 See Section 4.1.5, “Checking for security vulnerabilities in installed packages” for instructions on how to automate checking and d2723 1 a2723 1 9.15. Why do some packages ignore my CFLAGS? d2745 1 a2745 1 9.16. A package does not build. What shall I do? d2761 1 a2761 1 some work, have a look at Chapter 19, Making your package work.

    d2768 1 a2768 1 9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean? d2793 2 a2794 1
    10. Creating a new pkgsrc package from scratch
    d2796 1 a2796 1
    10.1. Common types of packages
    d2798 2 a2799 2
    10.1.1. Perl modules
    10.1.2. Python modules and programs
    d2801 2 a2802 2
    10.2. Examples
    10.2.1. How the www/nvu package came into pkgsrc
    d2804 1 a2804 1
    11. Package components - files, directories and contents
    d2806 3 a2808 3
    11.1. Makefile
    11.2. distinfo
    11.3. patches/*
    d2810 5 a2814 5
    11.3.1. Structure of a single patch file
    11.3.2. Creating patch files
    11.3.3. Sources where the patch files come from
    11.3.4. Patching guidelines
    11.3.5. Feedback to the author
    d2816 2 a2817 2
    11.4. Other mandatory files
    11.5. Optional files
    d2819 3 a2821 3
    11.5.1. Files affecting the binary package
    11.5.2. Files affecting the build process
    11.5.3. Files affecting nothing at all
    d2823 2 a2824 2
    11.6. work*
    11.7. files/*
    d2826 1 a2826 1
    12. Programming in Makefiles
    d2828 4 a2831 4
    12.1. Caveats
    12.2. Makefile variables
    12.2.1. Naming conventions
    12.3. Code snippets
    d2833 4 a2836 4
    12.3.1. Adding things to a list
    12.3.2. Echoing a string exactly as-is
    12.3.3. Passing CFLAGS to GNU configure scripts
    12.3.4. Handling possibly empty variables
    d2839 1 a2839 1
    13. PLIST issues
    d2841 9 a2849 9
    13.1. RCS ID
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    13.4. Variable substitution in PLIST
    13.5. Man page compression
    13.6. Changing PLIST source with PLIST_SRC
    13.7. Platform-specific and differing PLISTs
    13.8. Build-specific PLISTs
    13.9. Sharing directories between packages
    d2851 1 a2851 1
    14. Buildlink methodology
    d2853 2 a2854 2
    14.1. Converting packages to use buildlink3
    14.2. Writing buildlink3.mk files
    d2856 2 a2857 2
    14.2.1. Anatomy of a buildlink3.mk file
    14.2.2. Updating d2863 1 a2863 1
    14.3. Writing builtin.mk files
    d2865 2 a2866 2
    14.3.1. Anatomy of a builtin.mk file
    14.3.2. Global preferences for native or pkgsrc software
    d2869 1 a2869 1
    15. The pkginstall framework
    d2871 120 a2990 120
    15.1. Files and directories outside the installation prefix
    15.1.1. Directory manipulation
    15.1.2. File manipulation
    15.2. Configuration files
    15.2.1. How PKG_SYSCONFDIR is set
    15.2.2. Telling the software where configuration files are
    15.2.3. Patching installations
    15.2.4. Disabling handling of configuration files
    15.3. System startup scripts
    15.3.1. Disabling handling of system startup scripts
    15.4. System users and groups
    15.5. System shells
    15.5.1. Disabling shell registration
    15.6. Fonts
    15.6.1. Disabling automatic update of the fonts databases
    16. Options handling
    16.1. Global default options
    16.2. Converting packages to use bsd.options.mk
    16.3. Option Names
    16.4. Determining the options of dependencies
    17. The build process
    17.1. Introduction
    17.2. Program location
    17.3. Directories used during the build process
    17.4. Running a phase
    17.5. The fetch phase
    17.5.1. What to fetch and where to get it from
    17.5.2. How are the files fetched?
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    17.16. Cleaning up
    17.17. Other helpful targets
    18. Tools needed for building or running
    18.1. Tools for pkgsrc builds
    18.2. Tools needed by packages
    18.3. Tools provided by platforms
    19. Making your package work
    19.1. General operation
    19.1.1. How to pull in user-settable variables from mk.conf
    19.1.2. User interaction
    19.1.3. Handling licenses
    19.1.4. Restricted packages
    19.1.5. Handling dependencies
    19.1.6. Handling conflicts with other packages
    19.1.7. Packages that cannot or should not be built
    19.1.8. Packages which should not be deleted, once installed
    19.1.9. Handling packages with security problems
    19.1.10. How to handle incrementing versions when fixing an existing package
    19.1.11. Substituting variable text in the package files (the SUBST framework)
    19.2. The fetch phase
    19.2.1. Packages whose distfiles aren't available for plain downloading
    19.2.2. How to handle modified distfiles with the 'old' name
    19.2.3. Packages hosted on github.com
    19.3. The configure phase
    19.3.1. Shared libraries - libtool
    19.3.2. Using libtool on GNU packages that already support libtool
    19.3.3. GNU Autoconf/Automake
    19.4. Programming languages
    19.4.1. C, C++, and Fortran
    19.4.2. Java
    19.4.3. Packages containing perl scripts
    19.4.4. Packages containing shell scripts
    19.4.5. Other programming languages
    19.5. The build phase
    19.5.1. Compiling C and C++ code conditionally
    19.5.2. How to handle compiler bugs
    19.5.3. Undefined reference to ...
    19.5.4. Running out of memory
    19.6. The install phase
    19.6.1. Creating needed directories
    19.6.2. Where to install documentation
    19.6.3. Installing highscore files
    19.6.4. Adding DESTDIR support to packages
    19.6.5. Packages with hardcoded paths to other interpreters
    19.6.6. Packages installing perl modules
    19.6.7. Packages installing info files
    19.6.8. Packages installing man pages
    19.6.9. Packages installing GConf data files
    19.6.10. Packages installing scrollkeeper/rarian data files
    19.6.11. Packages installing X11 fonts
    19.6.12. Packages installing GTK2 modules
    19.6.13. Packages installing SGML or XML data
    19.6.14. Packages installing extensions to the MIME database
    19.6.15. Packages using intltool
    19.6.16. Packages installing startup scripts
    19.6.17. Packages installing TeX modules
    19.6.18. Packages supporting running binaries in d2992 2 a2993 2
    19.6.19. Packages installing hicolor theme icons
    19.6.20. Packages installing desktop files
    d2995 1 a2995 1
    19.7. Marking packages as having problems
    d2997 2 a2998 2
    20. Debugging
    21. Submitting and Committing
    d3000 16 a3015 16
    21.1. Submitting binary packages
    21.2. Submitting source packages (for non-NetBSD-developers)
    21.3. General notes when adding, updating, or removing packages
    21.4. Commit Messages
    21.5. Committing: Adding a package to CVS
    21.6. Updating a package to a newer version
    21.7. Renaming a package in pkgsrc
    21.8. Moving a package in pkgsrc
    22. Frequently Asked Questions
    23. GNOME packaging and porting
    23.1. Meta packages
    23.2. Packaging a GNOME application
    23.3. Updating GNOME to a newer version
    23.4. Patching guidelines
    d3022 32 a3053 1 Chapter 10. Creating a new pkgsrc package from scratch d3057 1 a3057 1
    10.1. Common types of packages
    d3059 2 a3060 2
    10.1.1. Perl modules
    10.1.2. Python modules and programs
    d3062 2 a3063 2
    10.2. Examples
    10.2.1. How the www/nvu package came into pkgsrc
    d3122 1 a3122 1 find instructions for the most common cases in the next section, Section 10.1, “Common types of packages”. After you have followed the instructions d3130 1 a3130 1 the various things that can go wrong in this phase, consult Chapter 19, Making your package work.

    d3153 1 a3153 1 10.1. Common types of packages d3156 1 a3156 1 10.1.1. Perl modules d3162 1 a3162 1 10.1.2. Python modules and programs d3226 1 a3226 1 10.2. Examples d3229 1 a3229 1 10.2.1. How the www/nvu package came into pkgsrc d3232 1 a3232 1 10.2.1.1. The initial package d3298 1 a3298 1 10.2.1.2. Fixing all kinds of problems to make the package work d3434 1 a3434 1 10.2.1.3. Installing the package d3448 1 a3448 1 Chapter 11. Package components - files, directories and contents d3452 16 a3467 16
    11.1. Makefile
    11.2. distinfo
    11.3. patches/*
    11.3.1. Structure of a single patch file
    11.3.2. Creating patch files
    11.3.3. Sources where the patch files come from
    11.3.4. Patching guidelines
    11.3.5. Feedback to the author
    11.4. Other mandatory files
    11.5. Optional files
    11.5.1. Files affecting the binary package
    11.5.2. Files affecting the build process
    11.5.3. Files affecting nothing at all
    d3469 2 a3470 2
    11.6. work*
    11.7. files/*
    d3478 1 a3478 1 11.1. Makefile d3527 1 a3527 1 Section 17.5, “The fetch phase”.

    d3573 1 a3573 1 applicable for the package. See Section 19.1.3, “Handling licenses” for further details.

    d3617 1 a3617 1
  • If the package installs any info files, see Section 19.6.7, “Packages installing info files”.

  • d3622 1 a3622 1 11.2. distinfo d3633 1 a3633 1 patches directory (see Section 11.3, “patches/*). These checksums ensure that patches d3649 1 a3649 1 11.3. patches/* d3660 1 a3660 1 11.3.1. Structure of a single patch file d3688 1 a3688 1 11.3.2. Creating patch files d3707 1 a3707 1 makepatchsum command, see Section 11.2, “distinfo.

    d3724 1 a3724 1 11.3.3. Sources where the patch files come from d3751 1 a3751 1 11.3.4. Patching guidelines d3775 1 a3775 1

    Table 11.1. Patching examples

    d3859 1 a3859 1 11.3.5. Feedback to the author d3882 1 a3882 1 11.4. Other mandatory files d3894 1 a3894 1 inserted files. See Chapter 13, PLIST issues for more d3900 1 a3900 1 11.5. Optional files d3903 1 a3903 1 11.5.1. Files affecting the binary package d3913 1 a3913 1 pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d3977 1 a3977 1 11.5.2. Files affecting the build process d3989 1 a3989 1 for the buildlink3 framework (see Chapter 14, Buildlink methodology).

    d3998 1 a3998 1 package-specific options (see Chapter 16, Options handling) that can be d4006 1 a4006 1 11.5.3. Files affecting nothing at all d4021 1 a4021 1 11.6. work* d4035 1 a4035 1 11.7. files/* d4055 1 a4055 1 Chapter 12. Programming in Makefiles d4059 9 a4067 9
    12.1. Caveats
    12.2. Makefile variables
    12.2.1. Naming conventions
    12.3. Code snippets
    12.3.1. Adding things to a list
    12.3.2. Echoing a string exactly as-is
    12.3.3. Passing CFLAGS to GNU configure scripts
    12.3.4. Handling possibly empty variables
    d4077 1 a4077 1 programming are variables (which are actually macros) and shell d4082 1 a4082 1

    This chapter describes some patterns, that appear quite often in d4087 1 a4087 1 12.1. Caveats d4114 1 a4114 1 ^C. This does not happen d4120 1 a4120 1 12.2. Makefile variables d4122 3 a4124 2 can be processed using the five operators ``='', ``+='', ``?='', ``:='', and ``!='', which are described in the make(1) man d4127 7 a4133 10 Makefile, the hash character ``#'' and the backslash character ``\'' are handled specially. If a backslash is followed by a newline, any whitespace immediately in front of the backslash, the backslash, the newline, and any whitespace immediately behind the newline are replaced with a single space. A backslash character and an immediately following hash character are replaced with a single hash character. Otherwise, the backslash is passed as is. In a variable assignment, any hash character that is not preceded by a backslash starts a comment that continues up to the end of the logical line.

    d4135 2 a4136 2 It happens immediately when the variable occurs on the right-hand side of the ``:='' or the ``!='' operator, in a d4140 3 a4142 24 operate on the words, others operate on the string as a whole. When a string is split into words, it is split like in sh(1).

    There are several types of variables that should be handled differently. Strings and two types of lists.

    • Strings can contain arbitrary characters. Nevertheless, you should restrict yourself to only using printable characters. Examples are PREFIX and COMMENT.

    • Internal lists are lists that are never exported to any shell command. Their elements are separated by whitespace. Therefore, the elements themselves cannot have embedded whitespace. Any other characters are allowed. Internal lists can be used in .for loops. Examples are DEPENDS and BUILD_DEPENDS.

    • External lists are lists that may be exported to a shell command. Their elements can contain any characters, including whitespace. That's why they cannot be used in .for loops. Examples are DISTFILES and MASTER_SITES.

    d4145 1 a4145 1 12.2.1. Naming conventions d4149 1 a4149 2 not be used by package Makefiles.

    d4153 2 a4154 2
  • All list variables should have a ``plural'' name, e.g. PKG_OPTIONS or d4161 1 a4161 1 12.3. Code snippets d4164 1 a4164 1 12.3.1. Adding things to a list d4181 1 a4181 1 12.3.2. Echoing a string exactly as-is d4211 1 a4211 1 12.3.3. Passing CFLAGS to GNU configure scripts d4235 1 a4235 1 12.3.4. Handling possibly empty variables d4268 2 a4269 3

    This variant only works when EGFILES does not contain filenames with spaces, since the .for loop splits on simple whitespace.

    d4277 1 a4277 1 Chapter 13. PLIST issues d4281 9 a4289 9
    13.1. RCS ID
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    13.4. Variable substitution in PLIST
    13.5. Man page compression
    13.6. Changing PLIST source with PLIST_SRC
    13.7. Platform-specific and differing PLISTs
    13.8. Build-specific PLISTs
    13.9. Sharing directories between packages
    d4302 1 a4302 1 13.1. RCS ID d4314 1 a4314 1 13.2. Semi-automatic PLIST generation d4317 1 a4317 1 was extracted. See Section 17.17, “Other helpful targets” for d4322 1 a4322 1 13.3. Tweaking output of make print-PLIST d4337 1 a4337 1 13.4. Variable substitution in PLIST d4383 1 a4383 1 following way, similar to MESSAGE_SUBST (see Section 11.5, “Optional files”):

    d4422 1 a4422 1 13.5. Man page compression d4435 1 a4435 1 13.6. Changing PLIST source with PLIST_SRC d4446 1 a4446 1 13.7. Platform-specific and differing PLISTs d4460 1 a4460 1 13.8. Build-specific PLISTs d4478 1 a4478 1 13.9. Sharing directories between packages d4505 1 a4505 1 Chapter 14. Buildlink methodology d4509 2 a4510 2
    14.1. Converting packages to use buildlink3
    14.2. Writing buildlink3.mk files
    d4512 2 a4513 2
    14.2.1. Anatomy of a buildlink3.mk file
    14.2.2. Updating d4519 1 a4519 1
    14.3. Writing builtin.mk files
    d4521 2 a4522 2
    14.3.1. Anatomy of a builtin.mk file
    14.3.2. Global preferences for native or pkgsrc software
    d4550 1 a4550 1 14.1. Converting packages to use buildlink3 d4637 1 a4637 1 14.2. Writing buildlink3.mk files d4657 1 a4657 1 14.2.1. Anatomy of a buildlink3.mk file d4801 1 a4801 1 14.2.2. Updating d4828 1 a4828 1

    See Section 19.1.5, “Handling dependencies” for d4847 1 a4847 1 14.3. Writing builtin.mk files d4872 1 a4872 1 14.3.1. Anatomy of a builtin.mk file d4959 1 a4959 1 14.3.2. Global preferences for native or pkgsrc software d5001 1 a5001 1 Chapter 15. The pkginstall framework d5005 1 a5005 1

    15.1. Files and directories outside the installation prefix
    d5007 2 a5008 2
    15.1.1. Directory manipulation
    15.1.2. File manipulation
    d5010 1 a5010 1
    15.2. Configuration files
    d5012 12 a5023 12
    15.2.1. How PKG_SYSCONFDIR is set
    15.2.2. Telling the software where configuration files are
    15.2.3. Patching installations
    15.2.4. Disabling handling of configuration files
  • 15.3. System startup scripts
    15.3.1. Disabling handling of system startup scripts
    15.4. System users and groups
    15.5. System shells
    15.5.1. Disabling shell registration
    15.6. Fonts
    15.6.1. Disabling automatic update of the fonts databases
    d5049 1 a5049 1 15.1. Files and directories outside the installation prefix d5082 1 a5082 1 15.1.1. Directory manipulation d5115 1 a5115 1 15.1.2. File manipulation d5156 1 a5156 1 15.2. Configuration files d5168 1 a5168 1 15.2.1. How PKG_SYSCONFDIR is set d5216 1 a5216 1 automatically added to OWN_DIRS. See Section 15.1.1, “Directory manipulation” what this means. This does not apply to d5222 1 a5222 1 15.2.2. Telling the software where configuration files are d5239 1 a5239 1 15.2.3. Patching installations d5256 1 a5256 1 used. Check out Section 15.1.2, “File manipulation” for information d5268 1 a5268 1 15.2.4. Disabling handling of configuration files d5276 1 a5276 1 15.3. System startup scripts d5279 1 a5279 1 installation prefix. Therefore, the same rules described in Section 15.1, “Files and directories outside the installation prefix” apply, and the same solutions d5314 1 a5314 1 15.3.1. Disabling handling of system startup scripts d5324 1 a5324 1 15.4. System users and groups d5362 1 a5362 1 15.5. System shells d5377 1 a5377 1 15.5.1. Disabling shell registration d5385 1 a5385 1 15.6. Fonts d5403 1 a5403 1 15.6.1. Disabling automatic update of the fonts databases d5412 1 a5412 1 Chapter 16. Options handling d5416 4 a5419 4
    16.1. Global default options
    16.2. Converting packages to use bsd.options.mk
    16.3. Option Names
    16.4. Determining the options of dependencies
    d5458 1 a5458 1 16.1. Global default options d5466 1 a5466 1 16.2. Converting packages to use bsd.options.mk d5605 1 a5605 1 16.3. Option Names d5629 1 a5629 1 16.4. Determining the options of dependencies d5653 1 a5653 1 Chapter 17. The build process d5657 21 a5677 21
    17.1. Introduction
    17.2. Program location
    17.3. Directories used during the build process
    17.4. Running a phase
    17.5. The fetch phase
    17.5.1. What to fetch and where to get it from
    17.5.2. How are the files fetched?
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    17.16. Cleaning up
    17.17. Other helpful targets
    d5682 1 a5682 1 17.1. Introduction d5709 1 a5709 1 17.2. Program location d5720 1 a5720 1 these files are encoded. See Section 11.3, “patches/* and Section 19.3.1, “Shared libraries - libtool” for more details.

    d5751 1 a5751 1 17.3. Directories used during the build process d5796 1 a5796 1 17.4. Running a phase d5806 1 a5806 1 17.5. The fetch phase d5813 1 a5813 1 17.5.1. What to fetch and where to get it from d5930 1 a5930 1 17.5.2. How are the files fetched? d5964 1 a5964 1 17.6. The checksum phase d5975 1 a5975 1 17.7. The extract phase d6015 1 a6015 1 17.8. The patch phase d6026 1 a6026 1 PATCH_DIST_ARGS. See Section 11.3, “patches/* for more details.

    d6036 2 a6037 2 17.9. The tools phase

    This is covered in Chapter 18, Tools needed for building or running. d6042 1 a6042 1 17.10. The wrapper phase d6080 1 a6080 1 17.11. The configure phase d6138 1 a6138 1 17.12. The build phase d6173 1 a6173 1 17.13. The test phase d6178 1 a6178 1 17.14. The install phase d6271 1 a6271 1 17.15. The package phase d6286 1 a6286 1 17.16. Cleaning up d6294 1 a6294 1 17.17. Other helpful targets d6618 1 a6618 1

    See Section 13.3, “Tweaking output of make print-PLIST for more d6627 1 a6627 1 properly. See Chapter 7, Creating binary packages for everything in pkgsrc (bulk d6660 1 a6660 1 Chapter 18. Tools needed for building or running d6664 3 a6666 3

    18.1. Tools for pkgsrc builds
    18.2. Tools needed by packages
    18.3. Tools provided by platforms
    d6690 1 a6690 1 18.1. Tools for pkgsrc builds d6703 1 a6703 1 18.2. Tools needed by packages d6723 1 a6723 1 18.3. Tools provided by platforms d6741 1 a6741 1 Chapter 19. Making your package work d6745 1 a6745 1
    19.1. General operation
    d6747 59 a6805 59
    19.1.1. How to pull in user-settable variables from mk.conf
    19.1.2. User interaction
    19.1.3. Handling licenses
    19.1.4. Restricted packages
    19.1.5. Handling dependencies
    19.1.6. Handling conflicts with other packages
    19.1.7. Packages that cannot or should not be built
    19.1.8. Packages which should not be deleted, once installed
    19.1.9. Handling packages with security problems
    19.1.10. How to handle incrementing versions when fixing an existing package
    19.1.11. Substituting variable text in the package files (the SUBST framework)
    19.2. The fetch phase
    19.2.1. Packages whose distfiles aren't available for plain downloading
    19.2.2. How to handle modified distfiles with the 'old' name
    19.2.3. Packages hosted on github.com
    19.3. The configure phase
    19.3.1. Shared libraries - libtool
    19.3.2. Using libtool on GNU packages that already support libtool
    19.3.3. GNU Autoconf/Automake
    19.4. Programming languages
    19.4.1. C, C++, and Fortran
    19.4.2. Java
    19.4.3. Packages containing perl scripts
    19.4.4. Packages containing shell scripts
    19.4.5. Other programming languages
    19.5. The build phase
    19.5.1. Compiling C and C++ code conditionally
    19.5.2. How to handle compiler bugs
    19.5.3. Undefined reference to ...
    19.5.4. Running out of memory
    19.6. The install phase
    19.6.1. Creating needed directories
    19.6.2. Where to install documentation
    19.6.3. Installing highscore files
    19.6.4. Adding DESTDIR support to packages
    19.6.5. Packages with hardcoded paths to other interpreters
    19.6.6. Packages installing perl modules
    19.6.7. Packages installing info files
    19.6.8. Packages installing man pages
    19.6.9. Packages installing GConf data files
    19.6.10. Packages installing scrollkeeper/rarian data files
    19.6.11. Packages installing X11 fonts
    19.6.12. Packages installing GTK2 modules
    19.6.13. Packages installing SGML or XML data
    19.6.14. Packages installing extensions to the MIME database
    19.6.15. Packages using intltool
    19.6.16. Packages installing startup scripts
    19.6.17. Packages installing TeX modules
    19.6.18. Packages supporting running binaries in d6807 2 a6808 2
    19.6.19. Packages installing hicolor theme icons
    19.6.20. Packages installing desktop files
    d6810 1 a6810 1
    19.7. Marking packages as having problems
    d6815 1 a6815 1 19.1. General operation d6823 1 a6823 1 19.1.1. How to pull in user-settable variables from mk.conf d6851 1 a6851 1 19.1.2. User interaction d6876 1 a6876 1 19.1.3. Handling licenses d6939 1 a6939 1 19.1.3.1. Adding a package with a new license d6961 1 a6961 1 19.1.3.2. Change to the license d6975 1 a6975 1 19.1.4. Restricted packages d7044 1 a7044 1 19.1.5. Handling dependencies d7052 1 a7052 1 See Chapter 14, Buildlink methodology for more information.

    d7138 1 a7138 1 vulnerabilities file. See Section 19.1.9, “Handling packages with security problems” for more d7151 1 a7151 1 19.1.6. Handling conflicts with other packages d7184 1 a7184 1 19.1.7. Packages that cannot or should not be built d7223 1 a7223 1 19.1.8. Packages which should not be deleted, once installed d7234 1 a7234 1 19.1.9. Handling packages with security problems d7251 1 a7251 1 19.1.10. How to handle incrementing versions when fixing an existing package d7312 1 a7312 1 19.1.11. Substituting variable text in the package files (the SUBST framework) d7372 1 a7372 1 19.2. The fetch phase d7375 1 a7375 1 19.2.1. Packages whose distfiles aren't available for plain downloading d7396 1 a7396 1 19.2.2. How to handle modified distfiles with the 'old' name d7413 1 a7413 1 subdirectory of the local distfiles directory. (See Section 19.1.10, “How to handle incrementing versions when fixing an existing package” for more details.) In case this d7429 1 a7429 1 19.2.3. Packages hosted on github.com d7434 1 a7434 1 19.2.3.1. Fetch based on a tagged release d7448 1 a7448 1 19.2.3.2. Fetch based on a specific commit d7461 1 a7461 1 19.2.3.3. Fetch based on release d7478 1 a7478 1 19.3. The configure phase d7481 1 a7481 1 19.3.1. Shared libraries - libtool d7606 1 a7606 1 19.3.2. Using libtool on GNU packages that already support libtool d7647 1 a7647 1 19.3.3. GNU Autoconf/Automake d7688 1 a7688 1 19.4. Programming languages d7691 1 a7691 1 19.4.1. C, C++, and Fortran d7695 1 a7695 1 framework, see Chapter 14, Buildlink methodology).

    d7706 1 a7706 1 19.4.2. Java d7735 1 a7735 1 19.4.3. Packages containing perl scripts d7747 1 a7747 1

    See Section 19.6.6, “Packages installing perl modules” for information d7752 1 a7752 1 19.4.4. Packages containing shell scripts d7767 1 a7767 1 19.4.5. Other programming languages d7777 1 a7777 1 19.5. The build phase d7786 1 a7786 1 19.5.1. Compiling C and C++ code conditionally d7806 1 a7806 1 19.5.1.1. C preprocessor macros to identify the operating system d7837 1 a7837 1 19.5.1.2. C preprocessor macros to identify the hardware architecture d7846 1 a7846 1 19.5.1.3. C preprocessor macros to identify the compiler d7857 1 a7857 1 19.5.2. How to handle compiler bugs d7875 1 a7875 1 19.5.3. Undefined reference to ... d7938 1 a7938 1 19.5.3.1. Special issue: The SunPro compiler d7964 1 a7964 1 19.5.4. Running out of memory d7979 1 a7979 1 19.6. The install phase d7982 1 a7982 1 19.6.1. Creating needed directories d7998 1 a7998 1 19.6.2. Where to install documentation d8027 1 a8027 1 19.6.3. Installing highscore files d8071 1 a8071 1 19.6.4. Adding DESTDIR support to packages d8100 1 a8100 1 19.6.5. Packages with hardcoded paths to other interpreters d8122 1 a8122 1 19.6.6. Packages installing perl modules d8162 1 a8162 1 19.6.7. Packages installing info files d8209 1 a8209 1 19.6.8. Packages installing man pages d8241 1 a8241 1

    See Section 13.5, “Man page compression” for d8246 1 a8246 1 19.6.9. Packages installing GConf data files d8266 1 a8266 1 Section 9.13, “How do I change the location of configuration files?” for more information.

    d8280 1 a8280 1 19.6.10. Packages installing scrollkeeper/rarian data files d8301 1 a8301 1 19.6.11. Packages installing X11 fonts d8318 1 a8318 1 19.6.12. Packages installing GTK2 modules d8346 1 a8346 1 19.6.13. Packages installing SGML or XML data d8374 1 a8374 1 19.6.14. Packages installing extensions to the MIME database d8404 1 a8404 1 19.6.15. Packages using intltool d8415 1 a8415 1 19.6.16. Packages installing startup scripts d8426 1 a8426 1 19.6.17. Packages installing TeX modules d8465 1 a8465 1 19.6.18. Packages supporting running binaries in d8482 1 a8482 1 19.6.19. Packages installing hicolor theme icons d8504 1 a8504 1 19.6.20. Packages installing desktop files d8523 1 a8523 1 19.7. Marking packages as having problems d8537 1 a8537 1 Chapter 20. Debugging d8575 1 a8575 1 necessary; see Section 11.1, “Makefile.

    d8614 1 a8614 1
  • Submit (or commit, if you have cvs access); see Chapter 21, Submitting and Committing.

  • d8619 1 a8619 1 Chapter 21. Submitting and Committing d8623 8 a8630 8
    21.1. Submitting binary packages
    21.2. Submitting source packages (for non-NetBSD-developers)
    21.3. General notes when adding, updating, or removing packages
    21.4. Commit Messages
    21.5. Committing: Adding a package to CVS
    21.6. Updating a package to a newer version
    21.7. Renaming a package in pkgsrc
    21.8. Moving a package in pkgsrc
    d8635 1 a8635 1 21.1. Submitting binary packages d8642 1 a8642 1 see Chapter 7, Creating binary packages for everything in pkgsrc (bulk d8647 1 a8647 1 21.2. Submitting source packages (for non-NetBSD-developers) d8649 1 a8649 1 runs well; see Chapter 20, Debugging and the rest of this d8677 1 a8677 1 21.3. General notes when adding, updating, or removing packages d8716 1 a8716 1 21.4. Commit Messages d8757 1 a8757 1 21.5. Committing: Adding a package to CVS d8789 1 a8789 1 21.6. Updating a package to a newer version d8813 1 a8813 1 21.7. Renaming a package in pkgsrc d8831 1 a8831 1 21.8. Moving a package in pkgsrc d8879 1 a8879 1 Chapter 22. Frequently Asked Questions d8886 2 a8887 2
    22.1. What is the difference between d8891 1 a8891 1
    22.2. What is the difference between d8895 1 a8895 1
    22.3. What is the difference between d8899 1 a8899 1
    22.4. What is the difference between d8904 1 a8904 1
    22.5. Why does make show-var d8908 1 a8908 1
    22.6. What does d8913 1 a8913 1
    22.7. Which mailing lists are there for package d8916 1 a8916 1
    22.8. Where is the pkgsrc d8919 1 a8919 1
    22.9. I have a little time to kill. What shall I d8931 1 a8931 1

    22.1.

    d8947 1 a8947 1

    22.2.

    d8965 1 a8965 1

    22.3.

    d8983 1 a8983 1

    22.4.

    d8996 1 a8996 1

    22.5.

    d9012 1 a9012 1

    22.6.

    d9036 1 a9036 1

    22.7.

    d9061 1 a9061 1

    22.8.

    d9109 1 a9109 1

    22.9.

    d9140 1 a9140 1 Chapter 23. GNOME packaging and porting d9144 4 a9147 4
    23.1. Meta packages
    23.2. Packaging a GNOME application
    23.3. Updating GNOME to a newer version
    23.4. Patching guidelines
    d9184 1 a9184 1 23.1. Meta packages d9218 1 a9218 1 23.2. Packaging a GNOME application d9285 1 a9285 1

    Table 23.1. PLIST handling for GNOME packages

    d9298 1 a9298 1 See Section 19.6.10, “Packages installing scrollkeeper/rarian data files”. d9304 1 a9304 1 See Section 19.6.19, “Packages installing hicolor theme icons”. d9309 1 a9309 1 See Section 19.6.14, “Packages installing extensions to the MIME database”. d9315 1 a9315 1 See Section 19.6.20, “Packages installing desktop files”. d9324 1 a9324 1 23.3. Updating GNOME to a newer version d9413 1 a9413 1 23.4. Patching guidelines d9417 1 a9417 1 fixes you do to a GNOME package to the mainstream developers (see Section 11.3.5, “Feedback to the author”). This is the only way to get d9434 1 a9434 1 guidelines (Section 11.3.4, “Patching guidelines”) for more d9451 1 a9451 1
    24. Design of the pkgsrc infrastructure
    d9453 3 a9455 3
    24.1. The meaning of variable definitions
    24.2. Avoiding problems before they arise
    24.3. Variable evaluation
    d9457 2 a9458 2
    24.3.1. At load time
    24.3.2. At runtime
    d9460 2 a9461 2
    24.4. How can variables be specified?
    24.5. Designing interfaces for Makefile fragments
    d9463 2 a9464 2
    24.5.1. Procedures with parameters
    24.5.2. Actions taken on behalf of parameters
    d9466 1 a9466 1
    24.6. The order in which files are loaded
    d9468 2 a9469 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d9472 1 a9472 1
    25. Regression tests
    d9474 2 a9475 2
    25.1. Running the regression tests
    25.2. Adding a new regression test
    d9477 2 a9478 2
    25.2.1. Overridable functions
    25.2.2. Helper functions
    d9481 2 a9482 2
    26. Porting pkgsrc
    26.1. Porting pkgsrc to a new operating system
    d9488 1 a9488 1 Chapter 24. Design of the pkgsrc infrastructure d9492 3 a9494 3
    24.1. The meaning of variable definitions
    24.2. Avoiding problems before they arise
    24.3. Variable evaluation
    d9496 2 a9497 2
    24.3.1. At load time
    24.3.2. At runtime
    d9499 2 a9500 2
    24.4. How can variables be specified?
    24.5. Designing interfaces for Makefile fragments
    d9502 2 a9503 2
    24.5.1. Procedures with parameters
    24.5.2. Actions taken on behalf of parameters
    d9505 1 a9505 1
    24.6. The order in which files are loaded
    d9507 2 a9508 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d9518 1 a9518 1 24.1. The meaning of variable definitions d9549 1 a9549 1 24.2. Avoiding problems before they arise d9573 1 a9573 1 24.3. Variable evaluation d9576 1 a9576 1 24.3.1. At load time d9618 1 a9618 1 24.3.2. At runtime d9626 1 a9626 1 24.4. How can variables be specified? d9635 1 a9635 1 24.5. Designing interfaces for Makefile fragments d9642 1 a9642 1 24.5.1. Procedures with parameters d9676 1 a9676 1 24.5.2. Actions taken on behalf of parameters d9688 1 a9688 1 24.6. The order in which files are loaded d9703 1 a9703 1 24.6.1. The order in bsd.prefs.mk d9728 1 a9728 1 24.6.2. The order in bsd.pkg.mk d9761 1 a9761 1 Chapter 25. Regression tests d9765 2 a9766 2
    25.1. Running the regression tests
    25.2. Adding a new regression test
    d9768 2 a9769 2
    25.2.1. Overridable functions
    25.2.2. Helper functions
    d9783 1 a9783 1 25.1. Running the regression tests d9791 1 a9791 1 25.2. Adding a new regression test d9800 1 a9800 1 25.2.1. Overridable functions d9847 1 a9847 1 25.2.2. Helper functions d9876 1 a9876 1 Chapter 26. Porting pkgsrc d9879 1 a9879 1
    26.1. Porting pkgsrc to a new operating system
    d9887 1 a9887 1 26.1. Porting pkgsrc to a new operating system d10012 1 a10012 1 PLIST (see Chapter 11, Package components - files, directories and contents) d10359 1364 a11722 1 Appendix D. Editing guidelines for the pkgsrc guide d11726 2 a11727 2
    D.1. Make targets
    D.2. Procedure
    d11734 1 a11734 1 D.1. Make targets d11750 1 a11750 1 D.2. Procedure @ 1.265 log @doc/pkgsrc.*: regen @ text @d1811 1 a1811 1
    PYTHON_DEFAULT_VERSION:
    d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    @ 1.264 log @doc/pkgsrc.*: regen @ text @d931 1 a931 1 2018Q4.

    d957 2 a958 2

    The tar file for the stable branch 2018Q4 is in the directory pkgsrc-2018Q4 and is also called pkgsrc.tar.gz.

    d961 1 a961 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2018Q4/pkgsrc.tar.gz
    d976 1 a976 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2018Q4 -P pkgsrc
    d1061 1
    a1061 1
    	-rpkgsrc-2018Q4 option.

    d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    @ 1.263 log @doc/pkgsrc.*: regen @ text @d587 1 a587 1 README.Solaris d592 1 a592 1 README.Linux d599 1 a599 1 README.MacOSX d604 1 a604 1 README.FreeBSD d609 1 a609 1 README.OpenBSD d615 2 a616 2 README.IRIX README.IRIX5.3 d627 1 a627 1 README.AIX d635 1 a635 1 README.Interix d645 1 a645 1 README.OSF1 d650 1 a650 1 README.HPUX d655 1 a655 1 README.Haiku d665 1 a665 1 README.Minix3 d670 1 a670 1 README.Cygwin d675 1 a675 1 README.GNUkFreeBSD d680 1 a680 1 README.Bitrig d941 1 a941 1 http://ftp.NetBSD.org/pub/pkgsrc/ or d947 1 a947 1 current and is called pkgsrc.tar.gz. d951 1 a951 1 pkgsrc.tar.bz2 d953 1 a953 1 pkgsrc.tar.xz d1173 2 a1174 2

    On the ftp.NetBSD.org server and its mirrors, there are collections of binary packages, d1190 1 a1190 1 pkgsrc FTP server in the directory /pub/pkgsrc/packages.

    d1217 1 a1217 1 # PKG_PATH="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/OPSYS/ARCH/VERSIONS/All/" d1282 1 a1282 1 FTP site at ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/vulnerabilities. d1303 1 a1303 1 vulnerabilities d2069 2 a2070 2 # (cd /usr && ftp -o - http://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-) # (cd /usr && fetch -o - http://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-) d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    @ 1.262 log @doc/pkgsrc.*: regen @ text @d1690 1 a1690 1 preserved in PACKAGES/All. Setting d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    @ 1.261 log @doc/pkgsrc.*: regen @ text @d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    d10284 6 d10292 20 a10311 5 file pkgsrc.tar.gz contains the same as the directory, ready to be downloaded as a whole.

    In the directories for the quarterly branches, there is an additional file called pkgsrc-20xxQy.tar.gz, a10312 2

    stable directory points to the latest quarterly branch.

    @ 1.260 log @doc/pkgsrc.*: regen @ text @d440 1 d8844 1 a8844 1
    d8889 1 a8889 1

    22.1.

    d8905 1 a8905 1

    22.2.

    d8923 1 a8923 1

    22.3.

    d8941 1 a8941 1

    22.4.

    d8954 1 a8954 1

    22.5.

    d8970 1 a8970 1

    22.6.

    d8994 1 a8994 1

    22.7.

    d9019 1 a9019 1

    22.8.

    d9067 1 a9067 1

    22.9.

    d10195 1 d10278 1 d10292 2 @ 1.259 log @doc/pkgsrc.*: regen @ text @d7052 1 a7052 1 BUILD_DEPENDS+= scons-[0-9]*:../../devel/scons d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.258 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.32 2018/01/01 01:26:07 jakllsch Exp $

    d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.257 log @doc/pkgsrc.*: regen @ text @d930 1 a930 1 2018Q3.

    d956 2 a957 2

    The tar file for the stable branch 2018Q3 is in the directory pkgsrc-2018Q3 and is also called pkgsrc.tar.gz.

    d960 1 a960 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2018Q3/pkgsrc.tar.gz
    d975 1 a975 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2018Q3 -P pkgsrc
    d1060 1
    a1060 1
    	-rpkgsrc-2018Q3 option.

    d3565 6 a3570 1 patches directory (see Section 11.3, “patches/*).

    d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.256 log @doc/pkgsrc.*: regen @ text @d930 1 a930 1 2018Q2.

    d956 2 a957 2

    The tar file for the stable branch 2018Q2 is in the directory pkgsrc-2018Q2 and is also called pkgsrc.tar.gz.

    d960 1 a960 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2018Q2/pkgsrc.tar.gz
    d975 1 a975 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2018Q2 -P pkgsrc
    d1060 1
    a1060 1
    	-rpkgsrc-2018Q2 option.

    d1305 1 a1305 1 to the root users crontab(5) entry. For example the entry d1334 1 a1334 1 see daily.conf(5) and security.conf(5) for more details. d1525 1 a1525 1

    If you invoke the make(1) command with d1533 1 a1533 1

    If you want to know the value of a certain make(1) d1536 1 a1536 1 target. e.g. to show the expansion of the make(1) d1549 1 a1549 1 install a binary package - if available - via pkg_add(1), d1553 1 a1553 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1592 1 a1592 1 make(1) from the base system, it is in the directory d1734 1 a1734 1 privileges using su(1) d1975 1 a1975 1 another system with pkg_add(1). This saves having to build d2566 1 a2566 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2618 1 a2618 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2692 1 a2692 1 scripts and to make(1). Some package authors ignore the d3476 1 a3476 1 an argument to patch(1) that sets the pathname strip count to d3486 1 a3486 1 this package which have been reported with send-pr(1). d3834 1 a3834 1

    This shell script is invoked twice by pkg_add(1). d3839 2 a3840 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d3860 2 a3861 2 See pkg_delete(1) and pkg_create(1) for more information. d4000 1 a4000 1 the make(1) system as a programming language for a big system d4006 1 a4006 1 like awk(1) programs. To make sure that every shell command runs d4020 1 a4020 1 make(1) for the second time, the file exists and will not be d4038 1 a4038 1

    You might remember that make(1) sometimes removes d4042 1 a4042 1 when one of the commands fails (like false(1) above).

    d4050 1 a4050 1 ``:='', and ``!='', which are described in the make(1) man d4070 1 a4070 1 a string is split into words, it is split like in sh(1).

    d4150 1 a4150 1

    Example 3 can handle arbitrary strings, since printf(1) only d4154 1 a4154 1 skipped by the shell. For printf(1) this doesn't make a difference, d4198 1 a4198 1 ${EGFILES} is replaced with an empty string by make(1). d4248 1 a4248 1 - see the pkg_create(1) man page for a full list. d4392 1 a4392 1 The files are later concatenated using cat(1), and the order of things is d5478 1 a5478 1 make(1) variable that the user can set to override the default d5696 1 a5696 1 install files according to hier(7), with the exception that d5977 1 a5977 1 patch(1) can be handed in d5979 1 a5979 1

    By default patch(1) is given special args to make d6158 1 a6158 1 install(1) command that have the owner, group and d6204 1 a6204 1

    If set to yes, do not run strip(1) d6281 1 a6281 1

    This target does a pkg_delete(1) in the d6287 1 a6287 1

    Add a "-v" to the pkg_delete(1) command.

    d6296 1 a6296 1 -R to the pkg_delete(1) d6448 1 a6448 1

    This target invokes pkg_info(1) for the current d6564 1 a6564 1

    If the package installs files via tar(1) or d6591 1 a6591 1 it will be installed via pkg_add(1). If not, d6596 1 a6596 1 pkg_add(1) if:

    d6781 1 a6781 1 make(1) (for example .if or d7021 1 a7021 1 pkg_info(1).

    d7119 1 a7119 1

    pkg_add(1) is able to detect attempts to install packages d7130 1 a7130 1 exported in pkg_summary(5) files and consumed by binary package d7181 1 a7181 1 not be deleted using pkg_delete(1) unless the d7314 1 a7314 1 sed(1) that specify the actual substitution. Every sed d7513 1 a7513 1 files, i.e. files that are loaded via dlopen(3), NOT d7523 1 a7523 1 the cc(1) or ld(1) line with ${LIBTOOL} d7540 2 a7541 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7549 1 a7549 1 ldconfig(8).

    d8602 1 a8602 1 document. Next, generate an uuencoded gzipped tar(1) d8605 1 a8605 1 either with the send-pr(1) command, or if you don't have d8802 1 a8802 1 search the pkg_summary(5) database for PREV_PKGPATH d8838 1 a8838 1
    d8883 1 a8883 1

    22.1.

    d8892 1 a8892 1 to the pkgsrc-internal invocations of make(1), while d8899 1 a8899 1

    22.2.

    d8908 1 a8908 1 make(1) program that is used in the pkgsrc d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8977 1 a8977 1 which is documented in the make(1) man page and which is d8988 1 a8988 1

    22.7.

    d9006 1 a9006 1 send-pr(1) appear here. Please do not report your bugs here d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    d9922 1 a9922 1 improvements. Why you would want this when Berkeley yacc(1) is part @ 1.255 log @doc/pkgsrc.*: regen @ text @a1681 8
  • DEPENDS_TARGET: By default, dependencies are only installed, and no binary package is created for them. You can set this variable to package-install to automatically create binary packages after installing dependencies. Please note that the PKGSRC_KEEP_BIN_PKGS can be set to yes to preserve binary packages when using the install as well.

  • d1687 4 d8838 1 a8838 1
    d8883 1 a8883 1

    22.1.

    d8899 1 a8899 1

    22.2.

    d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8988 1 a8988 1

    22.7.

    d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    @ 1.254 log @doc/pkgsrc.*: regen @ text @d7112 25 a7136 19

    These cases are handled automatically by the packaging tools at package installation time and do not need to be handled manually.

    In case the conflicts can not be recognized automatically (e.g., packages using the same config file location but no other shared files), you can set CONFLICTS to a space-separated list of packages (including version string) your package conflicts with.

    For example, if both foo/bar and foo/baz use the same config file, you would set in foo/bar/Makefile:

    CONFLICTS=      baz-[0-9]*
    

    and in pkgsrc/foo/baz/Makefile:

    CONFLICTS=      bar-[0-9]*
    
    d8842 1 a8842 1
    d8887 1 a8887 1

    22.1.

    d8903 1 a8903 1

    22.2.

    d8921 1 a8921 1

    22.3.

    d8939 1 a8939 1

    22.4.

    d8952 1 a8952 1

    22.5.

    d8968 1 a8968 1

    22.6.

    d8992 1 a8992 1

    22.7.

    d9017 1 a9017 1

    22.8.

    d9065 1 a9065 1

    22.9.

    @ 1.253 log @doc/pkgsrc.*: regen @ text @d3786 1 a3786 7

    For more information, please read the Making packager-friendly software article (part 1, part 2). It summarizes multiple details on how to make software easier to package; all the suggestions in it were collected from our experience in pkgsrc work, so they are possibly helpful when creating patches too.

    d8836 1 a8836 1
    d8881 1 a8881 1

    22.1.

    d8897 1 a8897 1

    22.2.

    d8915 1 a8915 1

    22.3.

    d8933 1 a8933 1

    22.4.

    d8946 1 a8946 1

    22.5.

    d8962 1 a8962 1

    22.6.

    d8986 1 a8986 1

    22.7.

    d9011 1 a9011 1

    22.8.

    d9059 1 a9059 1

    22.9.

    @ 1.252 log @doc/pkgsrc.*: regen @ text @d8903 1 a8903 1

    22.2.

    d8921 1 a8921 1

    22.3.

    d8939 1 a8939 1

    22.4.

    d8952 1 a8952 1

    22.5.

    d8968 1 a8968 1

    22.6.

    d8992 1 a8992 1

    22.7.

    d9017 1 a9017 1

    22.8.

    d9065 1 a9065 1

    22.9.

    @ 1.251 log @doc/pkgsrc.*: regen @ text @d930 1 a930 1 2018Q1.

    d956 2 a957 2

    The tar file for the stable branch 2018Q1 is in the directory pkgsrc-2018Q1 and is also called pkgsrc.tar.gz.

    d960 1 a960 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2018Q1/pkgsrc.tar.gz
    d975 1 a975 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2018Q1 -P pkgsrc
    d1060 1
    a1060 1
    	-rpkgsrc-2018Q1 option.

    d3355 1 a3355 1 BUILDLINK_TRANSFORM+= -l:IDL:IDL-2 d4161 5 a4165 1 interprets the format string, but not the next argument.

    d8842 1 a8842 1
    d8887 1 a8887 1

    22.1.

    d8903 1 a8903 1

    22.2.

    d8921 1 a8921 1

    22.3.

    d8939 1 a8939 1

    22.4.

    d8952 1 a8952 1

    22.5.

    d8968 1 a8968 1

    22.6.

    d8992 1 a8992 1

    22.7.

    d9017 1 a9017 1

    22.8.

    d9065 1 a9065 1

    22.9.

    @ 1.250 log @doc/pkgsrc.*: regen @ text @d4071 1 a4071 1 not preceded by a backslash starts a comment that continues upto the d8838 1 a8838 1
    d8883 1 a8883 1

    22.1.

    d8899 1 a8899 1

    22.2.

    d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8988 1 a8988 1

    22.7.

    d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    @ 1.249 log @doc/pkgsrc.*: regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.31 2017/07/30 22:07:39 jnemeth Exp $

    d491 1 a491 1
  • www/apache24 - The Apache d493 1 a493 1

  • www/firefox - The Firefox d495 1 a495 1

  • meta-pkgs/gnome - The GNOME d497 1 a497 1

  • meta-pkgs/kde4 - The K d545 1 a545 1 find such bugs: Static analysis tools (pkgtools/pkglint), build-time checks (portability d930 1 a930 1 2017Q3.

    d956 2 a957 2

    The tar file for the stable branch 2017Q3 is in the directory pkgsrc-2017Q3 and is also called pkgsrc.tar.gz.

    d960 1 a960 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2017Q3/pkgsrc.tar.gz
  • d975 1 a975 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2017Q3 -P pkgsrc
    d1060 1
    a1060 1
    	-rpkgsrc-2017Q3 option.

    d1305 1 a1305 1 to the root users crontab(5) entry. For example the entry d1334 1 a1334 1 see daily.conf(5) and security.conf(5) for more details. d1341 1 a1341 1 Install pkgtools/lintpkgsrc and run d1369 1 a1369 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

    d1427 1 a1427 1 meta-pkgs/kde4), the build process may d1525 1 a1525 1

    If you invoke the make(1) command with d1533 1 a1533 1

    If you want to know the value of a certain make(1) d1536 1 a1536 1 target. e.g. to show the expansion of the make(1) d1549 1 a1549 1 install a binary package - if available - via pkg_add(1), d1553 1 a1553 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1592 1 a1592 1 make(1) from the base system, it is in the directory d1738 1 a1738 1 privileges using su(1) d1839 1 a1839 1 at the devel/cpuflags d1979 1 a1979 1 another system with pkg_add(1). This saves having to build d1996 1 a1996 1 continuation of the above misc/figlet example.

    d2146 1 a2146 1 pkgtools/cdpack package provides d2396 1 a2396 1

    Where pkgsrc-20xxQy is the stable branch to be downloaded, for example, pkgsrc-2016Q4.

    d975 1 a975 1
    $ cd /usr && cvs -q -z2 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-20xxQy -P pkgsrc
    a976 2
    

    Where pkgsrc-20xxQy is the stable branch to be checked out, for example, pkgsrc-2016Q4

    d1060 1 a1060 1 -rpkgsrc-2016Q4 option.

    d8838 1 a8838 1
    d8883 1 a8883 1

    22.1.

    d8899 1 a8899 1

    22.2.

    d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8988 1 a8988 1

    22.7.

    d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    @ 1.247 log @regen @ text @d3158 1 a3158 1 PYTHON_VERSIONED_DEPENDENCIES=gobject d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.246 log @regen @ text @d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.245 log @regen @ text @d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.244 log @regen @ text @d163 1 a163 2
    10.1.2. KDE3 & KDE4 applications
    10.1.3. Python modules and programs
    a1232 1 # pkg_add kde-3.5.7 d1432 1 a1432 1 meta-pkgs/kde3), the build process may d2771 1 a2771 2
    10.1.2. KDE3 & KDE4 applications
    10.1.3. Python modules and programs
    d3001 1 a3001 2
    10.1.2. KDE3 & KDE4 applications
    10.1.3. Python modules and programs
    d3103 1 a3103 9 10.1.2. KDE3 & KDE4 applications

    KDE3 applications should always include meta-pkgs/kde3/kde3.mk, which contains numerous settings that are typical of KDE3 packages and KDE4 applications should always include meta-pkgs/kde4/kde4.mk, respectively.

    10.1.3. Python modules and programs

    d8843 1 a8843 1
    d8888 1 a8888 1

    22.1.

    d8904 1 a8904 1

    22.2.

    d8922 1 a8922 1

    22.3.

    d8940 1 a8940 1

    22.4.

    d8953 1 a8953 1

    22.5.

    d8969 1 a8969 1

    22.6.

    d8993 1 a8993 1

    22.7.

    d9018 1 a9018 1

    22.8.

    d9066 1 a9066 1

    22.9.

    @ 1.243 log @regen @ text @d8694 1 a8694 1 big picture in 50 characters or less. When a commit is for one d8855 1 a8855 1
    d8900 1 a8900 1

    22.1.

    d8916 1 a8916 1

    22.2.

    d8934 1 a8934 1

    22.3.

    d8952 1 a8952 1

    22.4.

    d8965 1 a8965 1

    22.5.

    d8981 1 a8981 1

    22.6.

    d9005 1 a9005 1

    22.7.

    d9030 1 a9030 1

    22.8.

    d9078 1 a9078 1

    22.9.

    @ 1.242 log @regen @ text @d368 5 a372 4
    21.4. Committing: Adding a package to CVS
    21.5. Updating a package to a newer version
    21.6. Renaming a package in pkgsrc
    21.7. Moving a package in pkgsrc
    d2978 5 a2982 4
    21.4. Committing: Adding a package to CVS
    21.5. Updating a package to a newer version
    21.6. Renaming a package in pkgsrc
    21.7. Moving a package in pkgsrc
    d8595 5 a8599 4
    21.4. Committing: Adding a package to CVS
    21.5. Updating a package to a newer version
    21.6. Renaming a package in pkgsrc
    21.7. Moving a package in pkgsrc
    d8685 42 a8726 1 21.4. Committing: Adding a package to CVS
    d8758 1 a8758 1 21.5. Updating a package to a newer version d8782 1 a8782 1 21.6. Renaming a package in pkgsrc d8800 1 a8800 1 21.7. Moving a package in pkgsrc d8855 1 a8855 1
    d8900 1 a8900 1

    22.1.

    d8916 1 a8916 1

    22.2.

    d8934 1 a8934 1

    22.3.

    d8952 1 a8952 1

    22.4.

    d8965 1 a8965 1

    22.5.

    d8981 1 a8981 1

    22.6.

    d9005 1 a9005 1

    22.7.

    d9030 1 a9030 1

    22.8.

    d9078 1 a9078 1

    22.9.

    @ 1.241 log @regen @ text @d7082 1 a7082 1 be able to execute the latex binary from the teTeX package d7085 1 a7085 1 DEPENDS+= teTeX-[0-9]*:../../print/teTeX d8811 1 a8811 1
    d8856 1 a8856 1

    22.1.

    d8872 1 a8872 1

    22.2.

    d8890 1 a8890 1

    22.3.

    d8908 1 a8908 1

    22.4.

    d8921 1 a8921 1

    22.5.

    d8937 1 a8937 1

    22.6.

    d8961 1 a8961 1

    22.7.

    d8986 1 a8986 1

    22.8.

    d9034 1 a9034 1

    22.9.

    @ 1.240 log @regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.30 2016/06/11 18:14:42 rillig Exp $

    d8811 1 a8811 1
    d8856 1 a8856 1

    22.1.

    d8872 1 a8872 1

    22.2.

    d8890 1 a8890 1

    22.3.

    d8908 1 a8908 1

    22.4.

    d8921 1 a8921 1

    22.5.

    d8937 1 a8937 1

    22.6.

    d8961 1 a8961 1

    22.7.

    d8986 1 a8986 1

    22.8.

    d9034 1 a9034 1

    22.9.

    @ 1.239 log @regen @ text @d8811 1 a8811 1
    d8856 1 a8856 1

    22.1.

    d8872 1 a8872 1

    22.2.

    d8890 1 a8890 1

    22.3.

    d8908 1 a8908 1

    22.4.

    d8921 1 a8921 1

    22.5.

    d8937 1 a8937 1

    22.6.

    d8961 1 a8961 1

    22.7.

    d8986 1 a8986 1

    22.8.

    d9034 1 a9034 1

    22.9.

    @ 1.238 log @regen @ text @d4577 1 a4577 1 x11/lesstif, x11/motif or x11/openmotif. The user can set d4579 2 a4580 3 lesstif, motif or openmotif to choose which Motif version will be used.

    d8811 1 a8811 1
    d8856 1 a8856 1

    22.1.

    d8872 1 a8872 1

    22.2.

    d8890 1 a8890 1

    22.3.

    d8908 1 a8908 1

    22.4.

    d8921 1 a8921 1

    22.5.

    d8937 1 a8937 1

    22.6.

    d8961 1 a8961 1

    22.7.

    d8986 1 a8986 1

    22.8.

    d9034 1 a9034 1

    22.9.

    @ 1.237 log @regen @ text @d1311 1 a1311 1 to the root users crontab(5) entry. For example the entry d1340 1 a1340 1 see daily.conf(5) and security.conf(5) for more details. d1531 1 a1531 1

    If you invoke the make(1) command with d1539 1 a1539 1

    If you want to know the value of a certain make(1) d1542 1 a1542 1 target. e.g. to show the expansion of the make(1) d1555 1 a1555 1 install a binary package - if available - via pkg_add(1), d1559 1 a1559 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1598 1 a1598 1 make(1) from the base system, it is in the directory d1744 1 a1744 1 privileges using su(1) d1985 1 a1985 1 another system with pkg_add(1). This saves having to build d2576 1 a2576 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2628 1 a2628 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2702 1 a2702 1 scripts and to make(1). Some package authors ignore the d3495 1 a3495 1 an argument to patch(1) that sets the pathname strip count to d3505 1 a3505 1 this package which have been reported with send-pr(1). d3859 1 a3859 1

    This shell script is invoked twice by pkg_add(1). d3864 2 a3865 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d3885 2 a3886 2 See pkg_delete(1) and pkg_create(1) for more information. d4025 1 a4025 1 the make(1) system as a programming language for a big system d4031 1 a4031 1 like awk(1) programs. To make sure that every shell command runs d4045 1 a4045 1 make(1) for the second time, the file exists and will not be d4063 1 a4063 1

    You might remember that make(1) sometimes removes d4067 1 a4067 1 when one of the commands fails (like false(1) above).

    d4075 1 a4075 1 ``:='', and ``!='', which are described in the make(1) man d4095 1 a4095 1 a string is split into words, it is split like in sh(1).

    d4175 1 a4175 1

    Example 3 can handle arbitrary strings, since printf(1) only d4219 1 a4219 1 ${EGFILES} is replaced with an empty string by make(1). d4269 1 a4269 1 - see the pkg_create(1) man page for a full list. d4283 1 a4283 1 adding the RCS ID the space should be ommited.

    d4413 1 a4413 1 The files are later concatenated using cat(1), and the order of things is d5500 1 a5500 1 make(1) variable that the user can set to override the default a5716 28
  • To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format DIRNAME=<package>, and the make(1) variable DIRNAME will be set to the prefix of the installed package <package>, or ${PREFIX} if the package is not installed.

    This is best illustrated by example.

    The following lines are taken from pkgsrc/wm/scwm/Makefile:

    EVAL_PREFIX+=           GTKDIR=gtk+
    CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE:Q}
    CONFIGURE_ARGS+=        --with-gtk-prefix=${GTKDIR:Q}
    CONFIGURE_ARGS+=        --enable-multibyte
    

    Specific defaults can be defined for the packages evaluated using EVAL_PREFIX, by using a definition of the form:

    GTKDIR_DEFAULT= ${LOCALBASE}
    

    where GTKDIR corresponds to the first definition in the EVAL_PREFIX pair.

  • d5718 1 a5718 1 install files according to hier(7), with the exception that d5999 1 a5999 1 patch(1) can be handed in d6001 1 a6001 1

    By default patch(1) is given special args to make d6180 1 a6180 1 install(1) command that have the owner, group and d6226 1 a6226 1

    If set to yes, do not run strip(1) d6303 1 a6303 1

    This target does a pkg_delete(1) in the d6309 1 a6309 1

    Add a "-v" to the pkg_delete(1) command.

    d6318 1 a6318 1 -R to the pkg_delete(1) d6470 1 a6470 1

    This target invokes pkg_info(1) for the current d6586 1 a6586 1

    If the package installs files via tar(1) or d6613 1 a6613 1 it will be installed via pkg_add(1). If not, d6618 1 a6618 1 pkg_add(1) if:

    d6803 1 a6803 1 make(1) (for example .if or d7043 1 a7043 1 pkg_info(1).

    d7197 1 a7197 1 not be deleted using pkg_delete(1) unless the d7330 1 a7330 1 sed(1) that specify the actual substitution. Every sed d7529 1 a7529 1 files, i.e. files that are loaded via dlopen(3), NOT d7539 1 a7539 1 the cc(1) or ld(1) line with ${LIBTOOL} d7556 2 a7557 2

    When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7565 1 a7565 1 ldconfig(8).

    d8617 1 a8617 1 document. Next, generate an uuencoded gzipped tar(1) d8620 1 a8620 1 either with the send-pr(1) command, or if you don't have d8776 1 a8776 1 search the pkg_summary(5) database for PREV_PKGPATH d8812 1 a8812 1
    d8857 1 a8857 1

    22.1.

    d8866 1 a8866 1 to the pkgsrc-internal invocations of make(1), while d8873 1 a8873 1

    22.2.

    d8882 1 a8882 1 make(1) program that is used in the pkgsrc d8891 1 a8891 1

    22.3.

    d8909 1 a8909 1

    22.4.

    d8922 1 a8922 1

    22.5.

    d8938 1 a8938 1

    22.6.

    d8951 1 a8951 1 which is documented in the make(1) man page and which is d8962 1 a8962 1

    22.7.

    d8980 1 a8980 1 send-pr(1) appear here. Please do not report your bugs here d8987 1 a8987 1

    22.8.

    d9035 1 a9035 1

    22.9.

    d9896 1 a9896 1 improvements. Why you would want this when Berkeley yacc(1) is part @ 1.236 log @regen @ text @d3220 1 a3220 1

    On the first line of output above, an artificial space has been added betweeen NetBSD and $, d8840 1 a8840 1

    d8885 1 a8885 1

    22.1.

    d8901 1 a8901 1

    22.2.

    d8919 1 a8919 1

    22.3.

    d8937 1 a8937 1

    22.4.

    d8950 1 a8950 1

    22.5.

    d8966 1 a8966 1

    22.6.

    d8990 1 a8990 1

    22.7.

    d9015 1 a9015 1

    22.8.

    d9063 1 a9063 1

    22.9.

    @ 1.235 log @regen @ text @d716 3 a718 1 /usr/pkgsrc.

    d3168 1 a3168 1 PYTHON_VERSIONED_DEPENDENCIES=dateutil d3220 1 a3220 1

    On the first line of output above, an artificial space has been added between NetBSD and $, d8840 1 a8840 1

    d8885 1 a8885 1

    22.1.

    d8901 1 a8901 1

    22.2.

    d8919 1 a8919 1

    22.3.

    d8937 1 a8937 1

    22.4.

    d8950 1 a8950 1

    22.5.

    d8966 1 a8966 1

    22.6.

    d8990 1 a8990 1

    22.7.

    d9015 1 a9015 1

    22.8.

    d9063 1 a9063 1

    22.9.

    @ 1.234 log @regen @ text @d1331 1 a1331 1 desired (not required), by adding the follwing line to d3218 1 a3218 1

    On the first line of output above, an artificial space has been added betweeen NetBSD and $, d4279 1 a4279 1

    An artificial space has been added betweeen NetBSD and $, this is a d4387 1 a4387 1

    An artificial space has been added betweeen NetBSD and $, this is a d8838 1 a8838 1

    d8883 1 a8883 1

    22.1.

    d8899 1 a8899 1

    22.2.

    d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8988 1 a8988 1

    22.7.

    d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    @ 1.233 log @regen @ text @d3521 2 d8838 1 a8838 1
    d8883 1 a8883 1

    22.1.

    d8899 1 a8899 1

    22.2.

    d8917 1 a8917 1

    22.3.

    d8935 1 a8935 1

    22.4.

    d8948 1 a8948 1

    22.5.

    d8964 1 a8964 1

    22.6.

    d8988 1 a8988 1

    22.7.

    d9013 1 a9013 1

    22.8.

    d9061 1 a9061 1

    22.9.

    @ 1.232 log @regen @ text @d163 1 a163 1
    10.1.2. KDE3 applications
    d1312 1 a1312 1 # download vulnerabilities file d1314 3 a1316 2 # audit the installed packages and email results to root 9 3 * * * /usr/pkg/sbin/pkg_admin auit |mail -s "Installed package audit result" root >/dev/null 2>&1 d2396 1 a2396 1 section attempts only to make the reader aware of the utilities and when d2405 1 a2405 1 Calculates various kinds of checksums (including SHA1).

    a2512 5

    Note

    The DragonFly operating system defaults to using modular X.org from pkgsrc.

    d2687 5 a2691 7

    Use of these tools is strongly recommended! After pkg_install is installed, please read the package's message, which you can get by running pkg_info -D pkg_install.

    If this package is installed, pkgsrc builds will use it to perform a security check before building any package. See Section 5.2, “Variables affecting the build process” for ways to control this check.

    d2770 1 a2770 1
    10.1.2. KDE3 applications
    d3000 1 a3000 1
    10.1.2. KDE3 applications
    d3103 1 a3103 1 10.1.2. KDE3 applications d3106 2 a3107 1 settings that are typical of KDE3 packages.

    d3202 1 a3202 1 # $NetBSD$ d3218 3 d4275 1 a4275 1 @@comment $NetBSD$ d4277 3 d4378 1 a4378 1 @@comment $NetBSD$ d4385 3 d8836 1 a8836 1
    d8881 1 a8881 1

    22.1.

    d8897 1 a8897 1

    22.2.

    d8915 1 a8915 1

    22.3.

    d8933 1 a8933 1

    22.4.

    d8946 1 a8946 1

    22.5.

    d8962 1 a8962 1

    22.6.

    d8986 1 a8986 1

    22.7.

    d9011 1 a9011 1

    22.8.

    d9059 1 a9059 1

    22.9.

    @ 1.231 log @regen @ text @d491 1 a491 1
  • www/apache24 - The Apache d493 1 a493 1

  • www/firefox - The Firefox d495 1 a495 1

  • meta-pkgs/gnome - The GNOME d497 1 a497 1

  • meta-pkgs/kde4 - The K d545 1 a545 1 find such bugs: Static analysis tools (pkgtools/pkglint), build-time checks (portability d1309 1 a1309 1 to the root users crontab(5) entry. For example the entry d1337 1 a1337 1 see daily.conf(5) and security.conf(5) for more details. d1344 1 a1344 1 Install pkgtools/lintpkgsrc and run d1372 1 a1372 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

    d1430 1 a1430 1 meta-pkgs/kde3), the build process may d1528 1 a1528 1

    If you invoke the make(1) command with d1536 1 a1536 1

    If you want to know the value of a certain make(1) d1539 1 a1539 1 target. e.g. to show the expansion of the make(1) d1552 1 a1552 1 install a binary package - if available - via pkg_add(1), d1556 1 a1556 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d1595 1 a1595 1 make(1) from the base system, it is in the directory d1741 1 a1741 1 privileges using su(1) d1842 1 a1842 1 at the devel/cpuflags d1982 1 a1982 1 another system with pkg_add(1). This saves having to build d1999 1 a1999 1 continuation of the above misc/figlet example.

    d2149 1 a2149 1 pkgtools/cdpack package provides d2399 1 a2399 1
    • pkgtools/x11-links: d2403 1 a2403 1

    • pkgtools/digest: d2405 1 a2405 1

    • pkgtools/libnbcompat: d2407 1 a2407 1

    • pkgtools/mtree: Installed on d2409 1 a2409 1

    • pkgtools/pkg_install: d2416 1 a2416 1

    • pkgtools/pkg_tarup: d2420 1 a2420 1

    • pkgtools/dfdisk: d2424 1 a2424 1

    • devel/cpuflags: Determine d2431 1 a2431 1

    • pkgtools/pkgin: A package d2434 1 a2434 1

    • pkgtools/pkg_chk: Reports on d2437 1 a2437 1

    • pkgtools/pkgdep: Makes d2440 3 a2442 3

    • pkgtools/pkgdepgraph: Makes graphs from the output of pkgtools/pkgdep (uses graphviz).

    • pkgtools/pkglint: The d2444 1 a2444 1

    • pkgtools/lintpkgsrc: The lintpkgsrc(1) program d2446 1 a2446 1

    • pkgtools/pkgsurvey: Report what d2451 1 a2451 1

    • pkgtools/pkgdiff: Automate d2454 1 a2454 1

    • pkgtools/url2pkg: Aids in d2460 1 a2460 1

    • pkgtools/pkg_comp: Build d2462 1 a2462 1

    • pkgtools/libkver: Spoof d2578 1 a2578 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d2604 1 a2604 1

      When compiling the pkgtools/pkg_install d2610 1 a2610 1

      In the case of the pkgtools/pkg_install package, you d2630 1 a2630 1 su(1) feature of pkgsrc, it can become annoying to type in the root d2634 1 a2634 1 security/sudo) and then put the d2676 1 a2676 1 pkgtools/pkg_install package):

      d2706 1 a2706 1 scripts and to make(1). Some package authors ignore the d3018 1 a3018 1
    • First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

    • d3377 1 a3377 1 interface. I looked up in www/seamonkey d3495 1 a3495 1 an argument to patch(1) that sets the pathname strip count to d3505 1 a3505 1 this package which have been reported with send-pr(1). d3540 1 a3540 1 lang/tcl and x11/tk for other examples.

      d3586 1 a3586 1 the platform, for example lang/openjdk7. These are kept in the same d3636 1 a3636 1 pkgdiff command from the pkgtools/pkgdiff package to avoid these d3663 1 a3663 1 mkpatches included in pkgtools/pkgdiff takes care of the name d3857 1 a3857 1

      This shell script is invoked twice by pkg_add(1). d3862 2 a3863 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d3883 2 a3884 2 See pkg_delete(1) and pkg_create(1) for more information. d4023 1 a4023 1 the make(1) system as a programming language for a big system d4029 1 a4029 1 like awk(1) programs. To make sure that every shell command runs d4043 1 a4043 1 make(1) for the second time, the file exists and will not be d4061 1 a4061 1

      You might remember that make(1) sometimes removes d4065 1 a4065 1 when one of the commands fails (like false(1) above).

      d4073 1 a4073 1 ``:='', and ``!='', which are described in the make(1) man d4093 1 a4093 1 a string is split into words, it is split like in sh(1).

      d4173 1 a4173 1

      Example 3 can handle arbitrary strings, since printf(1) only d4217 1 a4217 1 ${EGFILES} is replaced with an empty string by make(1). d4267 1 a4267 1 - see the pkg_create(1) man page for a full list. d4405 1 a4405 1 The files are later concatenated using cat(1), and the order of things is d4562 1 a4562 1 to install the devel/ncurses package.

      d4569 1 a4569 1 x11/lesstif, x11/motif or x11/openmotif. The user can set d4576 2 a4577 2 or adds a dependency on devel/readline, devel/editline. The user can set d4592 1 a4592 1 a dependency on devel/pth as needed.

      d4613 1 a4613 1 file for further editing, Rene Hexel's pkgtools/createbuildlink d5151 1 a5151 1 www/apache24, which places its d5224 1 a5224 1 mail/mutt package:

      d5253 1 a5253 1 print/cups package as an example, it has a d5337 1 a5337 1 following example, taken from shells/zsh:

      d5363 1 a5363 1 installation prefix. Consider the following example, taken from fonts/dbz-ttf:

      d5492 1 a5492 1 make(1) variable that the user can set to override the default d5713 1 a5713 1 DIRNAME=<package>, and the make(1) d5738 1 a5738 1 install files according to hier(7), with the exception that d6019 1 a6019 1 patch(1) can be handed in d6021 1 a6021 1

      By default patch(1) is given special args to make d6200 1 a6200 1 install(1) command that have the owner, group and d6246 1 a6246 1

      If set to yes, do not run strip(1) d6323 1 a6323 1

      This target does a pkg_delete(1) in the d6329 1 a6329 1

      Add a "-v" to the pkg_delete(1) command.

      d6338 1 a6338 1 -R to the pkg_delete(1) d6478 1 a6478 1 packages. You will need to install pkgtools/pkg_tarup for this d6490 1 a6490 1

      This target invokes pkg_info(1) for the current d6517 1 a6517 1 viewed using a browser such as www/firefox or www/links. The generated files d6606 1 a6606 1

      If the package installs files via tar(1) or d6633 1 a6633 1 it will be installed via pkg_add(1). If not, d6638 1 a6638 1 pkg_add(1) if:

      d6823 1 a6823 1 make(1) (for example .if or d6901 1 a6901 1 license, e.g. in graphics/xv:

      d7063 1 a7063 1 pkg_info(1).

      d7102 1 a7102 1 print/lyx package needs to d7139 1 a7139 1 automatically. See the print/ghostscript package for an example. d7158 2 a7159 2

      For example, if both foo/bar and foo/baz d7195 1 a7195 1 operating system, e.g. LKMs or sysutils/lsof. Such binary packages are not d7217 1 a7217 1 not be deleted using pkg_delete(1) unless the d7350 1 a7350 1 sed(1) that specify the actual substitution. Every sed d7369 1 a7369 1 it. graphics/ns-cult3d is an d7477 1 a7477 1 devel/libtool pkg d7549 1 a7549 1 files, i.e. files that are loaded via dlopen(3), NOT d7559 1 a7559 1 the cc(1) or ld(1) line with ${LIBTOOL} d7576 2 a7577 2

      When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d7585 1 a7585 1 ldconfig(8).

      d7998 1 a7998 1 generated with the textproc/gtk-doc tools, for use by special d8177 1 a8177 1 devel/gtexinfo package will d8459 1 a8459 1

      The pkgtools/rpm2pkg d8533 1 a8533 1

      Install pkgtools/url2pkg, d8559 1 a8559 1 from the pkgtools/pkgdiff d8598 1 a8598 1

      Run pkglint from pkgtools/pkglint, and fix the problems it d8637 1 a8637 1 document. Next, generate an uuencoded gzipped tar(1) d8640 1 a8640 1 either with the send-pr(1) command, or if you don't have d8645 1 a8645 1 sysutils/gtk-send-pr package is d8796 1 a8796 1 search the pkg_summary(5) database for PREV_PKGPATH d8832 1 a8832 1

      d8877 1 a8877 1

      22.1.

      d8886 1 a8886 1 to the pkgsrc-internal invocations of make(1), while d8893 1 a8893 1

      22.2.

      d8902 1 a8902 1 make(1) program that is used in the pkgsrc d8911 1 a8911 1

      22.3.

      d8929 1 a8929 1

      22.4.

      d8942 1 a8942 1

      22.5.

      d8958 1 a8958 1

      22.6.

      d8971 1 a8971 1 which is documented in the make(1) man page and which is d8982 1 a8982 1

      22.7.

      d9000 1 a9000 1 send-pr(1) appear here. Please do not report your bugs here d9007 1 a9007 1

      22.8.

      d9055 1 a9055 1

      22.9.

      d9067 1 a9067 1 pkgtools/pkg_chk package). It d9133 1 a9133 1
    • meta-pkgs/gnome-base: Provides d9140 1 a9140 1

    • meta-pkgs/gnome: Provides a d9150 2 a9151 2 package "extends" meta-pkgs/gnome-base.

    • meta-pkgs/gnome-devel: d9186 1 a9186 1

      Also use pkgtools/verifypc at d9335 1 a9335 1 GNU Autotools in the meta-pkgs/gnome-devel meta package.

      d9730 1 a9730 1

      You first need to install the pkgtools/pkg_regress package, which d9862 1 a9862 1 lang/perl5, shells/bash.

      d9916 1 a9916 1 improvements. Why you would want this when Berkeley yacc(1) is part d9936 1 a9936 1 pkgtools/pkglint d10316 1 a10316 1 you install the meta-pkgs/pkgsrc-guide-tools package.

    • @ 1.230 log @regen @ text @d2214 1 a2214 1 PKG_DBDIR= /var/db/pkg d2222 1 a2222 1 PKG_DBDIR= ${HOME}/pkg/var/db/pkg d8832 1 a8832 1
      d8877 1 a8877 1

      22.1.

      d8893 1 a8893 1

      22.2.

      d8911 1 a8911 1

      22.3.

      d8929 1 a8929 1

      22.4.

      d8942 1 a8942 1

      22.5.

      d8958 1 a8958 1

      22.6.

      d8982 1 a8982 1

      22.7.

      d9007 1 a9007 1

      22.8.

      d9055 1 a9055 1

      22.9.

      @ 1.229 log @regen @ text @a79 1
      3.3. Platform-specific notes
      d595 1 a595 2 Darwin (Mac OS X) a815 1
      3.3. Platform-specific notes
      d928 1 a928 1 2014Q3.

      d945 1 a945 1 It is autogenerated daily.

      d954 2 a955 2

      The tar file for the stable branch 2014Q3 is in the directory pkgsrc-2014Q3 and is also called pkgsrc.tar.gz.

      d961 1 a961 1 pkgsrc-2014Q3.

      d979 1 a979 1 branch to be checked out, for example, pkgsrc-2014Q3

      d1063 1 a1063 1 -rpkgsrc-2014Q3 option.

      a1086 1
      3.3. Platform-specific notes
      d1113 1 a1113 1 and /var/db/pkg for the package database d1119 1 a1119 1 ~/pkg/var/db/pkg for the package database, a1140 6

      3.3. Platform-specific notes

      For platform-specific notes consult the README files found in the notes column of Table 1.1, “Platforms supported by pkgsrc”

      d1204 1 a1204 2 for managing binary packages) and /var/db/pkg (the database of installed packages).

      d1230 1 a1230 1 # pkg_add openoffice2 d1232 1 a1232 1 # pkg_add ap2-php5-* d1313 3 a1315 1 0 3 * * * /usr/sbin/pkg_admin fetch-pkg-vulnerabilities >/dev/null 2>&1 d1318 2 a1319 2 will update the vulnerability list every day at 3AM. You may wish to do this more often than once a day. d1321 11 a1331 3 In addition, you may wish to run the package audit from the daily security script. This may be accomplished by adding the following line to /etc/security.local: d1334 1 a1334 1 /usr/sbin/pkg_admin audit d1337 1 d1630 1 a1630 1 /var/db/pkg.

      d1639 2 a1640 4 The defaults are ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/${DIST_SUBDIR}/ and ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/.

      d1799 1 a1799 1 IBM's XL C/C++ compiler suite (Darwin/MacOSX)

      d2082 1 a2082 1 # sh pbulk.sh -n # native (NetBSD) d8832 1 a8832 1
      d8877 1 a8877 1

      22.1.

      d8893 1 a8893 1

      22.2.

      d8911 1 a8911 1

      22.3.

      d8929 1 a8929 1

      22.4.

      d8942 1 a8942 1

      22.5.

      d8958 1 a8958 1

      22.6.

      d8982 1 a8982 1

      22.7.

      d9007 1 a9007 1

      22.8.

      d9055 1 a9055 1

      22.9.

      @ 1.228 log @Fix typo. @ text @d4955 9 d8834 1 a8834 1
      d8879 1 a8879 1

      22.1.

      d8895 1 a8895 1

      22.2.

      d8913 1 a8913 1

      22.3.

      d8931 1 a8931 1

      22.4.

      d8944 1 a8944 1

      22.5.

      d8960 1 a8960 1

      22.6.

      d8984 1 a8984 1

      22.7.

      d9009 1 a9009 1

      22.8.

      d9057 1 a9057 1

      22.9.

      @ 1.227 log @regen @ text @d200 1 a200 1
      12.3.2. Echoing a string exacty as-is
      d2814 1 a2814 1
      12.3.2. Echoing a string exacty as-is
      d4017 1 a4017 1
      12.3.2. Echoing a string exacty as-is
      d4157 1 a4157 1 12.3.2. Echoing a string exacty as-is
    @ 1.226 log @regen @ text @d5312 6 a5317 5 stage, then it can set USERGROUP_PHASE to either configure or build to indicate the phase before which the users and groups are created. In this case, the numeric UIDs and GIDs of the created users and groups are automatically hardcoded into the final installation scripts.

    d8825 1 a8825 1
    d8870 1 a8870 1

    22.1.

    d8886 1 a8886 1

    22.2.

    d8904 1 a8904 1

    22.3.

    d8922 1 a8922 1

    22.4.

    d8935 1 a8935 1

    22.5.

    d8951 1 a8951 1

    22.6.

    d8975 1 a8975 1

    22.7.

    d9000 1 a9000 1

    22.8.

    d9048 1 a9048 1

    22.9.

    @ 1.225 log @regen @ text @d790 3 a792 2 # for root's shell prompt, and a % for users' shell prompt, assuming they use the C-shell or tcsh.

    d8824 1 a8824 1
    d8869 1 a8869 1

    22.1.

    d8885 1 a8885 1

    22.2.

    d8903 1 a8903 1

    22.3.

    d8921 1 a8921 1

    22.4.

    d8934 1 a8934 1

    22.5.

    d8950 1 a8950 1

    22.6.

    d8974 1 a8974 1

    22.7.

    d8999 1 a8999 1

    22.8.

    d9047 1 a9047 1

    22.9.

    @ 1.224 log @regen @ text @d1818 11 d7175 1 a7175 1 oopposed to merely broken), a different set of variables should be d8823 1 a8823 1
    d8868 1 a8868 1

    22.1.

    d8884 1 a8884 1

    22.2.

    d8902 1 a8902 1

    22.3.

    d8920 1 a8920 1

    22.4.

    d8933 1 a8933 1

    22.5.

    d8949 1 a8949 1

    22.6.

    d8973 1 a8973 1

    22.7.

    d8998 1 a8998 1

    22.8.

    d9046 1 a9046 1

    22.9.

    @ 1.223 log @regen @ text @d8048 2 a8049 2 set to none, destdir, or user-destdir. By default PKG_DESTDIR_SUPPORT d8812 1 a8812 1
    d8857 1 a8857 1

    22.1.

    d8873 1 a8873 1

    22.2.

    d8891 1 a8891 1

    22.3.

    d8909 1 a8909 1

    22.4.

    d8922 1 a8922 1

    22.5.

    d8938 1 a8938 1

    22.6.

    d8962 1 a8962 1

    22.7.

    d8987 1 a8987 1

    22.8.

    d9035 1 a9035 1

    22.9.

    @ 1.222 log @regen @ text @a1597 4

    During the bootstrap, an example configuration file is created. To use that, you have to create the directory ${PREFIX}/etc and copy the example file there.

    d1602 1 a1602 2 spelling mistakes) takes place, so you have to try it out to see if it works.

    d1606 1 a1606 1

    In this section, you can find some variables that apply to all d1880 2 a1881 2 and their actual execution progress with set -x will be displayed.

  • d1980 3 a1982 3 # cd misc/figlet # make package
    d2021 2 a2022 3 The bulk build system, or pbulk ("p" stands for "parallel). This chapter describes how to set it up so that the packages are most likely to be usable later.

    d2033 1 a2033 1 Note, that all their dependencies will be built, so you don't need to track them manually. d2038 1 a2038 1 Essentially, you should provide fresh system, either a chroot environment d2059 1 a2059 1

    To simplify configuration we provide helper script mk/pbulk/pbulk.sh.

    d2062 1 a2062 1 Create user with name "pbulk".

    d2082 4 a2085 3 PKG_DEVELOPER= yes # perform more checks X11_TYPE= modular # use pkgsrc X11 SKIP_LICENSE_CHECK= yes # accept all licences (useful when building all packages) d2089 1 a2089 1 with your list of packages one per line without empty lines or comments. E.g.:

    d2489 1 a2489 1 FETCH_USING= wget d3780 1 a3780 1 ... d4360 1 a4360 1 PLIST_VARS+= foo d4362 1 a4362 1 PLIST.foo= yes d4620 1 a4620 1 BUILDLINK_TREE+= tiff d4625 3 a4627 3 BUILDLINK_API_DEPENDS.tiff+= tiff>=3.6.1 BUILDLINK_ABI_DEPENDS.tiff+= tiff>=3.7.2nb1 BUILDLINK_PKGSRCDIR.tiff?= ../../graphics/tiff d4633 1 a4633 1 BUILDLINK_TREE+= -tiff d8018 1 a8018 1 USE_GAMESGROUP= yes d8020 1 a8020 1 BUILD_DEFS+= VARBASE d8022 3 a8024 3 OWN_DIRS_PERMS+= ${VARBASE}/games/moon-buggy ${GAMEDIR_PERMS} REQD_FILES_PERMS+= /dev/null ${VARBASE}/games/moon-buggy/mbscore ${GAMEDATA_PERMS} SPECIAL_PERMS+= ${PREFIX}/bin/moon-buggy ${SETGID_GAMES_PERMS} d8812 1 a8812 1
    d8857 1 a8857 1

    22.1.

    d8873 1 a8873 1

    22.2.

    d8891 1 a8891 1

    22.3.

    d8909 1 a8909 1

    22.4.

    d8922 1 a8922 1

    22.5.

    d8938 1 a8938 1

    22.6.

    d8962 1 a8962 1

    22.7.

    d8987 1 a8987 1

    22.8.

    d9035 1 a9035 1

    22.9.

    d9747 1 a9747 1 echo "Example output" d9759 4 a9762 4 exit_status 0 output_require "Example" output_require "^[[:alpha:]+[[:space:]][[:alpha:]]{6}$" output_prohibit "no such file or directory" @ 1.221 log @regen @ text @a80 12
    3.3.1. Cygwin
    3.3.2. Darwin (Mac OS X)
    3.3.3. FreeBSD
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    a817 12
    3.3.1. Cygwin
    3.3.2. Darwin (Mac OS X)
    3.3.3. FreeBSD
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    a1089 12
    3.3.1. Cygwin
    3.3.2. Darwin (Mac OS X)
    3.3.3. FreeBSD
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    d1147 2 a1148 496

    3.3.1. Cygwin

    Cygwin 1.7.x and later are supported.

    You need to install minimal base packages in `Base' category plus any of compiler, gcc, gcc4, and/or clang. For gcc and gcc4, C and C++ compiler will be installed by default, but you can install Fortran compiler additionally because it will be required to use libtool. If it is not installed (or too old), Fortran compiler will be installed with pkgsrc automatically.

    As noted in Cygwin FAQ: `Why doesn't su work?', su(1) command has been in Cygwin distribution, but it has never worked. Unless you bootstrap pkgsrc with the --unprivileged option, workaround is:

    • Right click "Cygwin Terminal" in your Start Menu, then pick "Run as administrator".

    3.3.2. Darwin (Mac OS X)

    Darwin 8.x and up are supported.

    Before you start, you need to download and install the Mac OS X Developer Tools from Apple's Developer Connection. This requires (free) membership. See http://developer.apple.com/macosx/ for details. Also, make sure you install X11 (an optional package included with the Developer Tools) if you intend to build packages that use the X11 Window System. (If you don't want or need the full Xcode GUI, download and install Command Line Tools for Xcode.)

    3.3.3. FreeBSD

    FreeBSD 8.3 and 9.0 have been tested and are supported, other versions may work.

    Care should be taken so that the tools that this kit installs do not conflict with the FreeBSD userland tools. There are several steps:

    1. FreeBSD stores its ports pkg database in /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    2. If you do not intend to use the FreeBSD ports tools, it's probably a good idea to move them out of the way to avoid confusion, e.g.

      # cd /usr/sbin
      # mv pkg_add pkg_add.orig
      # mv pkg_create pkg_create.orig
      # mv pkg_delete pkg_delete.orig
      # mv pkg_info pkg_info.orig
      	  
    3. An example mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script.

    3.3.4. GNU/kFreeBSD

    Debian GNU/kFreeBSD is the only GNU/kFreeBSD distribution now. Debian GNU/kFreeBSD 7.0 or later is tested and supported.

    You should install ncurses (libncurses and libncurses-dev) packages.

    3.3.5. Interix

    Interix is a POSIX-compatible subsystem for the Windows NT kernel, providing a Unix-like environment with a tighter kernel integration than available with Cygwin. It is part of the Windows Services for Unix package, available for free for any licensed copy of Windows 2000, XP (not including XP Home), or 2003. SFU can be downloaded from http://www.microsoft.com/windows/sfu/.

    Services for Unix 3.5 has been tested. 3.0 or 3.1 may work, but are not officially supported. (The main difference in 3.0/3.1 is lack of pthreads, but other parts of libc may also be lacking.)

    Services for Unix Applications (aka SUA) is an integrated component of Windows Server 2003 R2 (5.2), Windows Vista and Windows Server 2008 (6.0), Windows 7 and Windows Server 2008 R2 (6.1). As of this writing, the SUA's Interix 6.0 (32bit) and 6.1 (64bit) subsystems have been tested. Other versions may work as well. The Interix 5.x subsystem has not yet been tested with pkgsrc.

    3.3.5.1. When installing Interix/SFU

    At an absolute minimum, the following packages must be installed from the Windows Services for Unix 3.5 distribution in order to use pkgsrc:

    • Utilities -> Base Utilities

    • Interix GNU Components -> (all)

    • Remote Connectivity

    • Interix SDK

    When using pkgsrc on Interix, DO NOT install the Utilities subcomponent "UNIX Perl". That is Perl 5.6 without shared module support, installed to /usr/local, and will only cause confusion. Instead, install Perl 5.8 from pkgsrc (or from a binary package).

    The Remote Connectivity subcomponent "Windows Remote Shell Service" does not need to be installed, but Remote Connectivity itself should be installed in order to have a working inetd.

    During installation you may be asked whether to enable setuid behavior for Interix programs, and whether to make pathnames default to case-sensitive. Setuid should be enabled, and case-sensitivity MUST be enabled. (Without case-sensitivity, a large number of packages including perl will not build.)

    NOTE: Newer Windows service packs change the way binary execution works (via the Data Execution Prevention feature). In order to use pkgsrc and other gcc-compiled binaries reliably, a hotfix containing POSIX.EXE, PSXDLL.DLL, PSXRUN.EXE, and PSXSS.EXE (899522 or newer) must be installed. Hotfixes are available from Microsoft through a support contract; however, Debian Interix Port has made most Interix hotfixes available for personal use from http://www.debian-interix.net/hotfixes/.

    In addition to the hotfix noted above, it may be necessary to disable Data Execution Prevention entirely to make Interix functional. This may happen only with certain types of CPUs; the cause is not fully understood at this time. If gcc or other applications still segfault repeatedly after installing one of the hotfixes note above, the following option can be added to the appropriate "boot.ini" line on the Windows boot drive: /NoExecute=AlwaysOff (WARNING, this will disable DEP completely, which may be a security risk if applications are often run as a user in the Administrators group!)

    3.3.5.2. What to do if Interix/SFU is already installed

    If SFU is already installed and you wish to alter these settings to work with pkgsrc, note the following things.

    • To uninstall UNIX Perl, use Add/Remove Programs, select Microsoft Windows Services for UNIX, then click Change. In the installer, choose Add or Remove, then uncheck Utilities->UNIX Perl.

    • To enable case-sensitivity for the file system, run REGEDIT.EXE, and change the following registry key:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel

      Set the DWORD value "obcaseinsensitive" to 0; then reboot.

    • To enable setuid binaries (optional), run REGEDIT.EXE, and change the following registry key:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Services for UNIX

      Set the DWORD value "EnableSetuidBinaries" to 1; then reboot.

    3.3.5.3. Important notes for using pkgsrc

    The package manager (either the pkgsrc "su" user, or the user running "pkg_add") must be a member of the local Administrators group. Such a user must also be used to run the bootstrap. This is slightly relaxed from the normal pkgsrc requirement of "root".

    The package manager should use a umask of 002. "make install" will automatically complain if this is not the case. This ensures that directories written in /var/db/pkg are Administrators-group writeable.

    The popular Interix binary packages from http://www.interopsystems.com/ use an older version of pkgsrc's pkg_* tools. Ideally, these should NOT be used in conjunction with pkgsrc. If you choose to use them at the same time as the pkgsrc packages, ensure that you use the proper pkg_* tools for each type of binary package.

    The TERM setting used for DOS-type console windows (including those invoked by the csh and ksh startup shortcuts) is "interix". Most systems don't have a termcap/terminfo entry for it, but the following .termcap entry provides adequate emulation in most cases:

    interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi:
    	

    3.3.5.4. Limitations of the Interix platform

    Though Interix suffices as a familiar and flexible substitute for a full Unix-like platform, it has some drawbacks that should be noted for those desiring to make the most of Interix.

    • X11:

      Interix comes with the standard set of X11R6 client libraries, and can run X11 based applications, but it does not come with an X server. Some options are StarNet X-Win32, Hummingbird Exceed (available in a trimmed version for Interix from Interop Systems as the Interop X Server), and the free X11 server included with Cygwin.

    • X11 acceleration:

      Because Interix runs in a completely different NT subsystem from Win32 applications, it does not currently support various X11 protocol extensions for acceleration (such as MIT-SHM or DGA). Most interactive applications to a local X server will run reasonably fast, but full motion video and other graphics intensive applications may require a faster-than-expected CPU.

    • Audio:

      Interix has no native support for audio output. For audio support, pkgsrc uses the esound client/server audio system on Interix. Unlike on most platforms, the audio/esound package does not contain the esd server component. To output audio via an Interix host, the emulators/cygwin_esound package must also be installed.

    • CD/DVDs, USB, and SCSI:

      Direct device access is not currently supported in Interix, so it is not currently possible to access CD/DVD drives, USB devices, or SCSI devices through non-filesystem means. Among other things, this makes it impossible to use Interix directly for CD/DVD burning.

    • Tape drives:

      Due to the same limitations as for CD-ROMs and SCSI devices, tape drives are also not directly accessible in Interix. However, support is in work to make tape drive access possible by using Cygwin as a bridge (similarly to audio bridged via Cygwin's esound server).

    3.3.5.5. Known issues for pkgsrc on Interix

    It is not necessary, in general, to have a "root" user on the Windows system; any member of the local Administrators group will suffice. However, some packages currently assume that the user named "root" is the privileged user. To accommodate these, you may create such a user; make sure it is in the local group Administrators (or your language equivalent).

    pkg_add creates directories of mode 0755, not 0775, in $PKG_DBDIR. For the time being, install packages as the local Administrator (or your language equivalent), or run the following command after installing a package to work around the issue:

    # chmod -R g+w $PKG_DBDIR
    	

    3.3.6. IRIX

    You will need a working C compiler, either gcc or SGI's MIPS and MIPSpro compiler (cc/c89). Please set the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can download a gcc tardist file from http://freeware.sgi.com/.

    Please note that you will need IRIX 6.5.17 or higher, as this is the earliest version of IRIX providing support for if_indextoname(3), if_nametoindex(3), etc.

    At this point in time, pkgsrc only supports one ABI at a time. That is, you cannot switch between the old 32-bit ABI, the new 32-bit ABI and the 64-bit ABI. If you start out using "abi=n32", that's what all your packages will be built with.

    Therefore, please make sure that you have no conflicting CFLAGS in your environment or the mk.conf. Particularly, make sure that you do not try to link n32 object files with lib64 or vice versa. Check your /etc/compiler.defaults!

    If you have the actual pkgsrc tree mounted via NFS from a different host, please make sure to set WRKOBJDIR to a local directory, as it appears that IRIX linker occasionally runs into issues when trying to link over a network-mounted file system.

    The bootstrapping process should set all the right options for programs such as imake(1), but you may want to set some options depending on your local setup. Please see pkgsrc/mk/defaults/mk.conf and, of course, your compiler's man pages for details.

    If you are using SGI's MIPSPro compiler, please set

    PKGSRC_COMPILER=        mipspro
          

    in mk.conf. Otherwise, pkgsrc will assume you are using gcc and may end up passing invalid flags to the compiler. Note that bootstrap should create an appropriate mk.conf.example by default.

    If you have both the MIPSPro compiler chain installed as well as gcc, but want to make sure that MIPSPro is used, please set your PATH to not include the location of gcc (often /usr/freeware/bin), and (important) pass the '--preserve-path' flag.

    3.3.7. Linux

    Some versions of Linux (for example Debian GNU/Linux) need either libtermcap or libcurses (libncurses). Installing the distributions libncurses-dev package (or equivalent) should fix the problem.

    pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++ Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested.

    To bootstrap using icc, assuming the default icc installation directory:

    env ICCBASE=/opt/intel/cc/10.1.008 ./bootstrap --compiler=icc
          

    Note

    For icc 8.0 you must add `LDFLAGS=-static-libcxa' to this.

    For icc 8.1 you must add `LDFLAGS=-i-static' instead.

    For icc 10.1 neither of these appears to be necessary.

    Use a value for ICCBASE that corresponds to the directory where icc is installed. After bootstrapping, set ICCBASE in mk.conf:

    ICCBASE=                /opt/intel/cc/10.1.008
          

    The pkgsrc default for ICCBASE is /opt/intel_cc_80. This is the default install directory for icc 8.0. If you are using a more recent version, be sure to set the correct path explicitly.

    pkgsrc uses the static linking method of the runtime libraries provided by icc, so binaries can be run on other systems which do not have the shared libraries installed.

    Libtool, however, extracts a list of libraries from the ld(1) command run when linking a C++ shared library and records it, throwing away the -Bstatic and -Bdynamic options interspersed between the libraries. This means that libtool-linked C++ shared libraries will have a runtime dependency on the icc libraries until this is fixed in libtool.

    3.3.8. MirBSD

    pkgsrc has been tested on MirBSD #10-current (2011 and newer). Older versions might also work. Releases before #10 are not supported.

    The package tools of the (older) native ports tree, MirPorts, have the same names as the ones used by pkgsrc. Care should be taken that the right tools are used. When installing packages from source, use the bmake command for pkgsrc and mmake for MirPorts.

    pkgsrc and MirPorts use the same location for the package database, /var/db/pkg. It is strongly recommended to use /usr/pkg/db instead, so that the pkgsrc tree is self-contained. This is also the default setting used in the binary package builds.

    Binary packages for MirBSD/i386 can be found on the pkgsrc ftp server. The bootstrap kit there already contains the pkgin package manager. See the pkgsrc on MirOS page for more details.

    3.3.9. OpenBSD

    OpenBSD 5.1 has been tested and supported, other versions may work.

    Care should be taken so that the tools that this kit installs do not conflict with the OpenBSD userland tools. There are several steps:

    1. OpenBSD stores its ports pkg database in /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    2. If you do not intend to use the OpenBSD ports tools, it's probably a good idea to move them out of the way to avoid confusion, e.g.

      # cd /usr/sbin
      # mv pkg_add pkg_add.orig
      # mv pkg_create pkg_create.orig
      # mv pkg_delete pkg_delete.orig
      # mv pkg_info pkg_info.orig
      	  
    3. An example mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses mk.conf as well. You can work around this by enclosing all the pkgsrc-specific parts of the file with:

      .ifdef BSD_PKG_MK
      # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here
      .else
      # OpenBSD stuff
      .endif
      	  

    3.3.10. Solaris

    Solaris 2.6 through 10 are supported on both x86 and sparc. You will need a working C compiler. Both gcc 4.5.3 and Sun WorkShop 5 have been tested.

    The following packages are required on Solaris 8 for the bootstrap process and to build packages.

    • SUNWsprot

    • SUNWarc

    • SUNWbtool

    • SUNWtoo

    • SUNWlibm

    Please note that the use of GNU binutils on Solaris is not supported, as of June 2006.

    Whichever compiler you use, please ensure the compiler tools and your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} and e.g. /usr/pkg/{bin,sbin}.

    3.3.10.1. If you are using gcc

    It makes life much simpler if you only use the same gcc consistently for building all packages.

    It is recommended that an external gcc be used only for bootstrapping, then either build gcc from lang/gcc46 or install a binary gcc package, then remove gcc used during bootstrapping.

    Binary packages of gcc can be found through http://www.sunfreeware.com/.

    3.3.10.2. If you are using Sun WorkShop

    You will need at least the following packages installed (from WorkShop 5.0)

    • SPROcc - Sun WorkShop Compiler C 5.0

    • SPROcpl - Sun WorkShop Compiler C++ 5.0

    • SPROild - Sun WorkShop Incremental Linker

    • SPROlang - Sun WorkShop Compilers common components

    You should set the following variables in your mk.conf file:

    CC=     cc
    CXX=    CC
    CPP=    cc -E
    CXXCPP= CC -E
    

    Note

    The CPP setting might break some packages that use the C preprocessor for processing things other than C source code.

    3.3.10.3. Building 64-bit binaries with SunPro

    To build 64-bit packages, you just need to have the following lines in your mk.conf file:

    PKGSRC_COMPILER=        sunpro
    ABI=                    64
    

    Note

    This setting has been tested for the SPARC architecture. Intel and AMD machines need some more work.

    3.3.10.4. Common problems

    Sometimes, when using libtool, /bin/ksh crashes with a segmentation fault. The workaround is to use another shell for the configure scripts, for example by installing shells/bash and adding the following lines to your mk.conf:

    CONFIG_SHELL=   ${LOCALBASE}/bin/bash
    WRAPPER_SHELL=  ${LOCALBASE}/bin/bash
          

    Then, rebuild the devel/libtool-base package.

    d4273 1 a4273 1 d4296 1 a4296 1 d4349 1 a4349 1 d4369 1 a4369 1 d4378 1 a4378 1 d4429 2 a4430 2 GENERATE_PLIST+= ${ECHO} bin/${DISTNAME}-`${WRKSRC}/src/xemacs -sd`.dmp ; d4451 2 a4452 1

    d4455 1 a4455 1 d4457 1 d6848 1 a6848 1 d6856 11 a6866 22

    Authors of software can choose the licence under which software can be copied. This is due to copyright law, and reasons for license choices are outside the scope of pkgsrc. The pkgsrc system recognizes that there are a number of licenses which some users may find objectionable or difficult or impossible to comply with. The Free Software Foundation has declared some licenses "Free", and the Open Source Initiative has a definition of "Open Source". The pkgsrc system, as a policy choice, does not label packages which have licenses that are Free or Open Source. However, packages without a license meeting either of those tests are labeled with a license tag denoting the license. Note that a package with no license to copy trivially does not meet either the Free or Open Source test.

    For packages which are not Free or Open Source, pkgsrc will not build the package unless the user has indicated to pkgsrc that packages with that particular license may be built. Note that this documentation avoids the term "accepted the license". The pkgsrc system is merely providing a mechanism to avoid accidentally building a package with a non-free license; judgement and responsibility remain with the user. (Installation of binary packages are not currently subject to this mechanism; this is a bug.)

    d6869 1 a6869 1 default ACCEPTABLE_LICENSES variable. The d6872 3 a6874 42 of "+=". The licenses accepted by default are:

    	apache-1.1 apache-2.0
    	arphic-public
    	artistic artistic-2.0
    	boost-license
    	cc-by-sa-v3.0
    	cc0-1.0-universal
    	cddl-1.0
    	cpl-1.0
    	epl-v1.0
    	gnu-fdl-v1.1 gnu-fdl-v1.2 gnu-fdl-v1.3
    	gnu-gpl-v1
    	gnu-gpl-v2 gnu-lgpl-v2 gnu-lgpl-v2.1
    	gnu-gpl-v3 gnu-lgpl-v3
    	ibm-public-license-1.0
    	ipafont
    	isc
    	lppl-1.3c
    	lucent
    	miros
    	mit
    	mpl-1.0 mpl-1.1 mpl-2.0
    	mplusfont
    	ofl-v1.0 ofl-v1.1
    	original-bsd modified-bsd 2-clause-bsd
    	php
    	png-license
    	postgresql-license
    	public-domain
    	python-software-foundation
    	qpl-v1.0
    	sgi-free-software-b-v2.0
    	sleepycat-public
    	unlicense
    	x11
    	zlib
    	zpl
        

    d6879 1 a6879 1 NO_SRC_ON_FTP, etc.). d6889 1 a6889 1 d6900 1 a6900 1 d6908 11 a6918 1 d6923 7 a6929 1

    Check if the file can avoid the -license filename tag as described above by referencing Various Licenses and Comments about Them and Licenses by Name | Open Source Initiative. If this is the case, additionally add the license filename to:

    a6932 1
  • the ACCEPTABLE_LICENSES list in pkgsrc/doc/guide/files/fixes.xml

  • a6933 1

    with the proper syntax as demonstrated in those files, respectively.

    d6937 4 d6942 1 a6942 1 please make sure that the new license has a different name (e.g., d6949 2 a6950 8 approved by either of two bodies.

    The use of LICENSE=shareware, LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to tell pkgsrc to proceed for a single package without also telling pkgsrc to proceed for all packages with that tag.

    d6956 1 a6956 3 Because a license tag is required unless the package is Free or Open Source, all packages with restrictions should have license tags. By declaring the restrictions, package tools can d6959 1 a6959 1

    There are four restrictions that may be encoded, which are d6964 8 a6971 5 CD-ROM. Pkgsrc uses "FTP" to mean that the source or binary file should not be made available over the Internet at no charge. Pkgsrc uses "CD-ROM" to mean that the source or binary may not be made available on some kind of media, together with other source and binary packages, and which is sold for a distribution charge. d7015 5 a7019 5

    Please note that packages will to be removed from pkgsrc when the distfiles are not distributable and cannot be obtained for a period of one full quarter branch. Packages with manual / interactive fetch must have a maintainer and it is his/her responsibility to ensure this.

    d7045 1 a7045 1 d7056 1 a7056 1 d7064 1 a7064 1 d7075 1 a7075 1 d7092 1 a7092 1 d7109 1 a7109 1 d7149 1 a7149 1 d7153 1 a7153 1 d7235 1 a7235 1 d7246 1 a7246 1 d7299 1 a7299 1 d7365 1 a7365 1 d7430 1 a7430 1 d7445 1 a7445 1 d7487 1 a7487 1 d7517 1 a7517 1 d7553 1 a7553 1 d7557 1 a7557 1 d7567 1 a7567 1 d7635 1 a7635 1 d7647 1 a7647 1 d7963 1 a7963 1 d8030 1 a8030 1 d8085 1 a8085 1 d8115 1 a8115 1 d8817 1 a8817 1
    d8862 1 a8862 1

    22.1.

    d8878 1 a8878 1

    22.2.

    d8896 1 a8896 1

    22.3.

    d8914 1 a8914 1

    22.4.

    d8927 1 a8927 1

    22.5.

    d8943 1 a8943 1

    22.6.

    d8967 1 a8967 1

    22.7.

    d8992 1 a8992 1

    22.8.

    d9040 1 a9040 1

    22.9.

    d9168 3 a9170 1
    USE_TOOLS+=pkg-config
    d9187 3 a9189 1
    CONFIGURE_ARGS+=--disable-gtk-doc
    d9196 3 a9198 1
    CONFIGURE_ARGS+=--with-html-dir=${PREFIX}/share/gtk-doc/...
    d9535 1 a9535 1 @ 1.220 log @regen @ text @d3696 1 a3696 1 PYTHON_VERSIONED_DEPENDENCIES=dateutil dns d9382 1 a9382 1
    d9427 1 a9427 1

    22.1.

    d9443 1 a9443 1

    22.2.

    d9461 1 a9461 1

    22.3.

    d9479 1 a9479 1

    22.4.

    d9492 1 a9492 1

    22.5.

    d9508 1 a9508 1

    22.6.

    d9532 1 a9532 1

    22.7.

    d9557 1 a9557 1

    22.8.

    d9605 1 a9605 1

    22.9.

    @ 1.219 log @regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.29 2016/05/06 17:26:34 jnemeth Exp $

    d212 3 a214 2
    12.3.2. Passing variables to a shell command
    12.3.3. Quoting guideline
    a304 1
    18.4. Questions regarding the tools
    d3337 3 a3339 2
    12.3.2. Passing variables to a shell command
    12.3.3. Quoting guideline
    a3429 1
    18.4. Questions regarding the tools
    d4540 3 a4542 2
    12.3.2. Passing variables to a shell command
    12.3.3. Quoting guideline
    a4660 3

    This section presents you with some code snippets you should use in your own code. If you don't find anything appropriate here, you should test your code and add it here.

    d4664 5 d4670 7 a4676 16 STRING= foo * bar `date` INT_LIST= # empty ANOTHER_INT_LIST= apache-[0-9]*:../../www/apache EXT_LIST= # empty ANOTHER_EXT_LIST= a=b c=d INT_LIST+= ${STRING} # 1 INT_LIST+= ${ANOTHER_INT_LIST} # 2 EXT_LIST+= ${STRING:Q} # 3 EXT_LIST+= ${ANOTHER_EXT_LIST} # 4

    When you add a string to an external list (example 3), it must be quoted. In all other cases, you must not add a quoting level. You must not merge internal and external lists, unless you are sure that all entries are correctly interpreted in both lists.

    d4680 3 a4682 4 12.3.2. Passing variables to a shell command

    Sometimes you may want to print an arbitrary string. There are many ways to get it wrong and only few that can handle every nastiness.

    d4691 1 a4691 1 env ${EXAMPLE_ENV} sh -c 'echo "$$string"; echo "$$x"' # 4 d4693 10 a4702 8

    Example 1 leads to a syntax error in the shell, as the characters are just copied.

    Example 2 can handle all strings, except those starting with a dash or those containing backslashes.

    Example 3 can handle arbitrary strings.

    In example 4, the EXT_LIST does not need to be quoted because the quoting has already been done when adding elements to the list.

    d4706 7 a4712 23 12.3.3. Quoting guideline

    There are many possible sources of wrongly quoted variables. This section lists some of the commonly known ones.

    • Whenever you use the value of a list, think about what happens to leading or trailing whitespace. If the list is a well-formed shell expression, you can apply the :M* modifier to strip leading and trailing whitespace from each word. The :M operator first splits its argument according to the rules of the shell, and then creates a new list consisting of all words that match the shell glob expression *, that is: all. One class of situations where this is needed is when adding a variable like CPPFLAGS to CONFIGURE_ARGS. If the configure script invokes other configure scripts, it strips the leading and trailing whitespace from the variable and then passes it to the other configure scripts. But these configure scripts expect the (child) CPPFLAGS variable to be the same as the parent CPPFLAGS. That's why we better pass the CPPFLAGS value properly trimmed. And here is how we do it:

      d4715 1 a4715 1 CPPFLAGS+= -Wundef -DPREFIX=\"${PREFIX:Q}\" d4722 1 a4722 1 echo x${CONFIGURE_ARGS}x # properly trimmed d4724 27 a4750 22
    • The example above contains one bug: The ${PREFIX} is a properly quoted shell expression, but there is the C compiler after it, which also expects a properly quoted string (this time in C syntax). The version above is therefore only correct if ${PREFIX} does not have embedded backslashes or double quotes. If you want to allow these, you have to add another layer of quoting to each variable that is used as a C string literal. You cannot use the :Q operator for it, as this operator only works for the shell.

    • Whenever a variable can be empty, the :Q operator can have surprising results. Here are two completely different cases which can be solved with the same trick.

      EMPTY=                  # empty
      empty_test:
              for i in a ${EMPTY:Q} c; do \
                  echo "$$i"; \
      d4752 5
      d4758 3
      a4760 4
      for_test:
      .for i in a:\ a:\test.txt
              echo ${i:Q}
              echo "foo"
      d4763 5
      a4767 16
      

      The first example will only print two of the three lines we might have expected. This is because ${EMPTY:Q} expands to the empty string, which the shell cannot see. The workaround is to write ${EMPTY:Q}"". This pattern can be often found as ${TEST} -z ${VAR:Q} or as ${TEST} -f ${FNAME:Q} (both of these are wrong).

      The second example will only print three lines instead of four. The first line looks like a:\ echo foo. This is because the backslash of the value a:\ is interpreted as a line-continuation by make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write ${i:Q}"".

    a7173 1
    18.4. Questions regarding the tools
    a7244 59

    18.4. Questions regarding the tools

    18.4.1. How do I add a new tool?
    18.4.2. How do I get a list of all available tools?
    18.4.3. How can I get a list of all the tools that a package is using while being built? I want to know whether it uses sed or not.

    18.4.1.

    How do I add a new tool?

    TODO

    18.4.2.

    How do I get a list of all available tools?

    TODO

    18.4.3.

    How can I get a list of all the tools that a package is using while being built? I want to know whether it uses sed or not.

    Currently, you can't. (TODO: But I want to be able to do it.)

    d7945 5 a7949 4

    Then, the correct way to work around this is to set DIST_SUBDIR to a unique directory name, usually based on PKGNAME_NOREV. All DISTFILES and d7951 1 a7951 3 subdirectory of the local distfiles directory. (See Section 19.1.10, “How to handle incrementing versions when fixing an existing package” for more details.) In case this d7953 3 a7955 2 including the nbX suffix) or a date stamp can be appended, like ${PKGNAME_NOREV}-YYYYMMDD.

    d9382 1 a9382 1
    d9427 1 a9427 1

    22.1.

    d9443 1 a9443 1

    22.2.

    d9461 1 a9461 1

    22.3.

    d9479 1 a9479 1

    22.4.

    d9492 1 a9492 1

    22.5.

    d9508 1 a9508 1

    22.6.

    d9511 2 a9512 2 ${MASTER_SITE_SOURCEFORGE:=package/} mean? I don't understand the := inside d9517 2 a9518 2

    The := is not really an assignment operator, like you might expect at first sight. d9520 3 a9522 3 ${LIST:old_string=new_string}, which is documented in the make(1) man page and which you may have seen as in ${SRCS:.c=.o}. In the d9526 2 a9527 2 package/. That's where the : and the = fall d9532 1 a9532 1

    22.7.

    d9557 1 a9557 1

    22.8.

    d9605 1 a9605 1

    22.9.

    @ 1.218 log @regen @ text @a104 1
    4.1.8. A word of warning
    d186 1 a186 1
    11.3. patches/*
    d212 2 a213 4
    12.3.2. Converting an internal list into an external list
    12.3.3. Passing variables to a shell command
    12.3.4. Quoting guideline
    12.3.5. Workaround for a bug in BSD Make
    d420 2 a421 3
    25.1. The regression tests framework
    25.2. Running the regression tests
    25.3. Adding a new regression test
    d423 2 a424 2
    25.3.1. Overridable functions
    25.3.2. Helper functions
    d428 1 a428 4
    26.1. Porting pkgsrc to a new operating system
    26.2. Adding support for a new compiler
    d513 1 a513 1

    ...just to name a few.

    a853 1
    4.1.8. A word of warning
    a1182 1

    Here are some platform-specific notes you should be aware of.

    a1695 1
    4.1.8. A word of warning
    a1891 15

    4.1.8. A word of warning

    Please pay very careful attention to the warnings expressed in the pkg_add(1) manual page about the inherent dangers of installing binary packages which you did not create yourself, and the security holes that can be introduced onto your system by indiscriminate adding of such files.

    The same warning of course applies to every package you install from source when you haven't completely read and understood the source code of the package, the compiler that is used to build the package and all the other tools that are involved.

    d2193 1 a2193 1

    XXX d2213 1 a2213 1 See Section 11.3, “patches/*” for more d2994 8 a3001 17

    If you want to use pkgsrc as non-root user, you can set some variables to make pkgsrc work under these conditions. At the very least, you need to set UNPRIVILEGED to yes; this will turn on unprivileged mode and set multiple related variables to allow installation of packages as non-root.

    In case the defaults are not enough, you may want to tune some other variables used. For example, if the automatic user/group detection leads to incorrect values (or not the ones you would like to use), you can change them by setting UNPRIVILEGED_USER and UNPRIVILEGED_GROUP respectively.

    As regards bootstrapping, please note that the bootstrap script will ease non-root configuration when given the --ignore-user-check flag, as it will choose and use multiple default directories under ~/pkg as the installation targets. These directories can be overridden by the --prefix flag provided by the script, as well as some others that allow finer tuning of the tree layout.

    d3311 1 a3311 1
    11.3. patches/*
    d3337 2 a3338 4
    12.3.2. Converting an internal list into an external list
    12.3.3. Passing variables to a shell command
    12.3.4. Quoting guideline
    12.3.5. Workaround for a bug in BSD Make
    d3930 1 a3930 1
    11.3. patches/*
    d4102 3 a4104 3 a security hole. Due to recent rumor about weaknesses of digest algorithms, all distfiles are protected using both SHA1 and RMD160 message digests, as well as the file size.

    d4107 1 a4107 1 patches directory (see Section 11.3, “patches/*”).

    d4109 1 a4109 2 make makedistinfo or make mdi command.

    d4118 5 a4122 4 11.3. patches/*

    Many packages still don't work out-of-the box on the various platforms that are supported by pkgsrc. Therefore, a number of custom patch files are needed to make the package work. These patch files are d4126 1 a4126 2 extracting them, in alphabetic order.

    d4149 1 a4149 1

    In all, the patch should be commented so that any d4540 2 a4541 4

    12.3.2. Converting an internal list into an external list
    12.3.3. Passing variables to a shell command
    12.3.4. Quoting guideline
    12.3.5. Workaround for a bug in BSD Make
    d4610 5 a4614 11

    Note: Because of this parsing algorithm the only way to create a variable consisting of a single backslash is using the ``!='' operator, for example: BACKSLASH!=echo "\\".

    So far for defining variables. The other thing you can do with variables is evaluating them. A variable is evaluated when it is part of the right side of the ``:='' or the ``!='' operator, or directly before executing a shell command which the variable is part of. In all other cases, make(1) performs lazy evaluation, that is, variables are not evaluated until there's no other way. The ``modifiers'' mentioned in the man page also evaluate the variable.

    d4617 1 a4617 5 a string is split into words, it is split as you would expect it from sh(1).

    No rule without exception—the .for loop does not follow the shell quoting rules but splits at sequences of whitespace.

    d4686 1 a4686 16 12.3.2. Converting an internal list into an external list
    EXT_LIST=       # empty
    .for i in ${INT_LIST}
    EXT_LIST+=      ${i:Q}""
    .endfor
    

    This code converts the internal list INT_LIST into the external list EXT_LIST. As the elements of an internal list are unquoted they must be quoted here. The reason for appending "" is explained below.

    12.3.3. Passing variables to a shell command

    d4692 1 a4692 1 EXT_LIST= string=${STRING:Q} x=second\ item d4696 3 a4698 6 echo "${STRING}" # 2 echo "${STRING:Q}" # 3 echo ${STRING:Q} # 4 echo x${STRING:Q} | sed 1s,.,, # 5 printf "%s\\n" ${STRING:Q}"" # 6 env ${EXT_LIST} /bin/sh -c 'echo "$$string"; echo "$$x"' d4702 6 a4707 22

    Example 2 leads to a syntax error too, and if you leave out the last " character from ${STRING}, date(1) will be executed. The $HOME shell variable would be evaluated, too.

    Example 3 outputs each space character preceded by a backslash (or not), depending on the implementation of the echo(1) command.

    Example 4 handles correctly every string that does not start with a dash. In that case, the result depends on the implementation of the echo(1) command. As long as you can guarantee that your input does not start with a dash, this form is appropriate.

    Example 5 handles even the case of a leading dash correctly.

    Example 6 also works with every string and is the light-weight solution, since it does not involve a pipe, which has its own problems.

    The EXT_LIST does not need to be quoted because the quoting has already been done when adding elements to the list.

    As internal lists shall not be passed to the shell, there is no example for it.

    d4711 1 a4711 1 12.3.4. Quoting guideline
    a4791 14

    12.3.5. Workaround for a bug in BSD Make

    The pkgsrc bmake program does not handle the following assignment correctly. In case _othervar_ contains a ``-'' character, one of the closing braces is included in ${VAR} after this code executes.

    VAR:=   ${VAR:N${_othervar_:C/-//}}
    

    For a more complex code snippet and a workaround, see the package regress/make-quoting, testcase bug1.

    d6222 1 a6222 1 these files are encoded. See Section 11.3, “patches/*” and Section 19.3.1, “Shared libraries - libtool” for more details.

    d6556 1 a6556 1 PATCH_DIST_ARGS. See Section 11.3, “patches/*” for more details.

    d7273 1 a7273 1
    d7292 1 a7292 1

    18.4.1.

    d7302 1 a7302 1

    18.4.2.

    d7313 1 a7313 1

    18.4.3.

    d7424 9 a7432 8 after ../../mk/bsd.prefs.mk has been included, as they may contain references to variables that are not yet defined. In shell commands (the lines in Makefile that are indented with a tab) this is no problem, since variables are only expanded when they are used. But in the preprocessor directives mentioned above and in dependency lines (of the form target: dependencies) the variables are expanded at load time.

    d7474 6 a7479 2 Source". Note that a package whose license forbids to copy does not meet either the Free or Open Source test.

    d9465 1 a9465 1
    d9510 1 a9510 1

    22.1.

    d9526 1 a9526 1

    22.2.

    d9544 1 a9544 1

    22.3.

    d9562 1 a9562 1

    22.4.

    d9575 1 a9575 1

    22.5.

    d9591 1 a9591 1

    22.6.

    d9615 1 a9615 1

    22.7.

    d9640 1 a9640 1

    22.8.

    d9688 1 a9688 1

    22.9.

    d10047 2 a10048 3
    25.1. The regression tests framework
    25.2. Running the regression tests
    25.3. Adding a new regression test
    d10050 2 a10051 2
    25.3.1. Overridable functions
    25.3.2. Helper functions
    d10055 1 a10055 4
    26.1. Porting pkgsrc to a new operating system
    26.2. Adding support for a new compiler
    d10338 2 a10339 3
    25.1. The regression tests framework
    25.2. Running the regression tests
    25.3. Adding a new regression test
    d10341 2 a10342 2
    25.3.1. Overridable functions
    25.3.2. Helper functions
    d10356 1 a10356 6 25.1. The regression tests framework

    25.2. Running the regression tests

    d10364 1 a10364 1 25.3. Adding a new regression test
    d10373 1 a10373 1 25.3.1. Overridable functions d10420 1 a10420 1 25.3.2. Helper functions d10433 2 a10434 1 output_require d10452 1 a10452 4
    26.1. Porting pkgsrc to a new operating system
    26.2. Adding support for a new compiler
    a10490 5

    26.2. Adding support for a new compiler

    TODO

    @ 1.217 log @regen @ text @d313 11 a323 12
    19.1.1. Portability of packages
    19.1.2. How to pull in user-settable variables from mk.conf
    19.1.3. User interaction
    19.1.4. Handling licenses
    19.1.5. Restricted packages
    19.1.6. Handling dependencies
    19.1.7. Handling conflicts with other packages
    19.1.8. Packages that cannot or should not be built
    19.1.9. Packages which should not be deleted, once installed
    19.1.10. Handling packages with security problems
    19.1.11. How to handle incrementing versions when fixing an existing package
    19.1.12. Substituting variable text in the package files (the SUBST framework)
    d325 1 a325 1
    19.2. Fixing problems in the fetch phase
    d331 1 a331 1
    19.3. Fixing problems in the configure phase
    d345 1 a345 1
    19.5. Fixing problems in the build phase
    d352 1 a352 1
    19.6. Fixing problems in the install phase
    d3297 2 d3471 11 a3481 12
    19.1.1. Portability of packages
    19.1.2. How to pull in user-settable variables from mk.conf
    19.1.3. User interaction
    19.1.4. Handling licenses
    19.1.5. Restricted packages
    19.1.6. Handling dependencies
    19.1.7. Handling conflicts with other packages
    19.1.8. Packages that cannot or should not be built
    19.1.9. Packages which should not be deleted, once installed
    19.1.10. Handling packages with security problems
    19.1.11. How to handle incrementing versions when fixing an existing package
    19.1.12. Substituting variable text in the package files (the SUBST framework)
    d3483 1 a3483 1
    19.2. Fixing problems in the fetch phase
    d3489 1 a3489 1
    19.3. Fixing problems in the configure phase
    d3503 1 a3503 1
    19.5. Fixing problems in the build phase
    d3510 1 a3510 1
    19.6. Fixing problems in the install phase
    d5437 1 a5437 1

    See Section 19.1.6, “Handling dependencies” for d5686 2 a5687 1

  • MAKE_DIRS and OWN_DIRS d5692 5 a5696 1 not empty), while the former does not.

  • d5705 2 a5706 1 MAKE_DIRS_PERMS+= ${VARBASE}/foo/private ${ROOT_USER} ${ROOT_GROUP} 0700 d5745 2 a5746 1 REQD_FILES_PERMS+= ${PREFIX}/share/somefile ${VARBASE}/somefile ${ROOT_USER} ${ROOT_GROUP} 0700 d7370 1 a7370 1
    d7389 1 a7389 1

    18.4.1.

    d7399 1 a7399 1

    18.4.2.

    d7410 1 a7410 1

    18.4.3.

    d7434 11 a7444 12
    19.1.1. Portability of packages
    19.1.2. How to pull in user-settable variables from mk.conf
    19.1.3. User interaction
    19.1.4. Handling licenses
    19.1.5. Restricted packages
    19.1.6. Handling dependencies
    19.1.7. Handling conflicts with other packages
    19.1.8. Packages that cannot or should not be built
    19.1.9. Packages which should not be deleted, once installed
    19.1.10. Handling packages with security problems
    19.1.11. How to handle incrementing versions when fixing an existing package
    19.1.12. Substituting variable text in the package files (the SUBST framework)
    d7446 1 a7446 1
    19.2. Fixing problems in the fetch phase
    d7452 1 a7452 1
    19.3. Fixing problems in the configure phase
    d7466 1 a7466 1
    19.5. Fixing problems in the build phase
    d7473 1 a7473 1
    19.6. Fixing problems in the install phase
    a7502 3

    19.1.1. Portability of packages

    d7504 4 a7507 5 different platforms. As a result, it is important to ensure, where possible, that packages in pkgsrc are portable. This chapter mentions some particular details you should pay attention to while working on pkgsrc.

    d7510 1 a7510 1 19.1.2. How to pull in user-settable variables from mk.conf d7521 8 a7528 8 after ../../mk/bsd.prefs.mk has been included, as they may contain references to variables that are not yet defined. In shell commands this is no problem, since variables are actually macros, which are only expanded when they are used. But in the preprocessor directives mentioned above and in dependency lines (of the form target: dependencies) the variables are expanded at load time.

    d7531 2 a7532 3

    Currently there is no exhaustive list of all variables that tells you whether they can be used at load time or only at run time, but it is in preparation.

    d7537 1 a7537 1 19.1.3. User interaction d7550 3 a7552 8

    The INTERACTIVE_STAGE definition is provided to notify the pkgsrc mechanism of an interactive stage which will be needed, and this should be set in the package's Makefile, e.g.:

    INTERACTIVE_STAGE=      build
        

    Multiple interactive stages can be specified:

    d7557 2 a7558 1 BATCH variable.

    d7562 1 a7562 1 19.1.4. Handling licenses d7570 2 a7571 6 Source". The pkgsrc system, as a policy choice, does not label packages which have licenses that are Free or Open Source. However, packages without a license meeting either of those tests are labeled with a license tag denoting the license. Note that a package with no license to copy trivially does not meet either the Free or Open Source test.

    d7582 1 a7582 1 or the GPL, and not the other. The free licenses are added to the d7695 1 a7695 1 19.1.5. Restricted packages d7763 1 a7763 1 19.1.6. Handling dependencies d7857 1 a7857 1 vulnerabilities file. See Section 19.1.10, “Handling packages with security problems” for more d7870 1 a7870 1 19.1.7. Handling conflicts with other packages d7897 1 a7897 1 19.1.8. Packages that cannot or should not be built d7936 1 a7936 1 19.1.9. Packages which should not be deleted, once installed d7947 1 a7947 1 19.1.10. Handling packages with security problems d7964 1 a7964 1 19.1.11. How to handle incrementing versions when fixing an existing package d8025 1 a8025 1 19.1.12. Substituting variable text in the package files (the SUBST framework) d8085 1 a8085 1 19.2. Fixing problems in the fetch phase d8126 1 a8126 1 (See Section 19.1.11, “How to handle incrementing versions when fixing an existing package” for more details.) d8191 1 a8191 1 19.3. Fixing problems in the configure phase d8490 1 a8490 1 19.5. Fixing problems in the build phase d8692 1 a8692 1 19.6. Fixing problems in the install phase d9557 1 a9557 1
    d9602 1 a9602 1

    22.1.

    d9618 1 a9618 1

    22.2.

    d9636 1 a9636 1

    22.3.

    d9654 1 a9654 1

    22.4.

    d9667 1 a9667 1

    22.5.

    d9683 1 a9683 1

    22.6.

    d9707 1 a9707 1

    22.7.

    d9732 1 a9732 1

    22.8.

    d9780 1 a9780 1

    22.9.

    d10297 4 a10300 4 variable can be restricted in order to detect bugs and violations of the (mostly unwritten) policies. See the pkglint developer's documentation for further details.

    d10327 1 a10327 1 to other variables wit will be modified after calling the d10476 4 a10479 4

    These functions do not take any parameters. They are all called in set -e mode, so you should be careful to check the exitcodes of any commands you run in the test.

    d10481 1 a10481 1
    do_setup()
    d10484 3 a10486 2
    do_test()

    This function runs the actual test. By default, d10490 13 a10502 3 TEST_OUTFILE.

    check_result()

    This function is run after the test and is d10505 11 a10515 2 the next section.

    do_cleanup()
    d10524 1 a10524 1
    exit_status(expected)
    d10526 1 a10526 1 do_test() function with its first parameter. d10528 4 a10531 3
    output_require(regex...)

    This function checks for each of its parameters if the output from do_test() matches the d10533 5 a10537 1 fail.

    @ 1.216 log @regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.28 2015/01/01 05:19:02 jnemeth Exp $

    d2260 1 a2260 1

    Most packages support installation into a a2270 4

    DESTDIR support is now the default. To switch back to non-DESTDIR, you can set USE_DESTDIR=no; this setting will be deprecated though, so it's preferable to convert a package to DESTDIR instead.

    d7363 1 a7363 1
    d7382 1 a7382 1

    18.4.1.

    d7392 1 a7392 1

    18.4.2.

    d7403 1 a7403 1

    18.4.3.

    d8174 1 a8174 1 MASTER_SITES= ${MASTER_SITE_GITHUB:example/} d9564 1 a9564 1
    d9609 1 a9609 1

    22.1.

    d9625 1 a9625 1

    22.2.

    d9643 1 a9643 1

    22.3.

    d9661 1 a9661 1

    22.4.

    d9674 1 a9674 1

    22.5.

    d9690 1 a9690 1

    22.6.

    d9714 1 a9714 1

    22.7.

    d9739 1 a9739 1

    22.8.

    d9787 1 a9787 1

    22.9.

    @ 1.215 log @regen @ text @d587 1 a587 1
    d4286 1 a4286 1
    d6875 5 d7367 1 a7367 1
    d7386 1 a7386 1

    18.4.1.

    d7396 1 a7396 1

    18.4.2.

    d7407 1 a7407 1

    18.4.3.

    d8605 1 a8605 1
    d9568 1 a9568 1
    d9613 1 a9613 1

    22.1.

    d9629 1 a9629 1

    22.2.

    d9647 1 a9647 1

    22.3.

    d9665 1 a9665 1

    22.4.

    d9678 1 a9678 1

    22.5.

    d9694 1 a9694 1

    22.6.

    d9718 1 a9718 1

    22.7.

    d9743 1 a9743 1

    22.8.

    d9791 1 a9791 1

    22.9.

    d9962 1 a9962 1
    @ 1.214 log @regen @ text @d7362 1 a7362 1
    d7381 1 a7381 1

    18.4.1.

    d7391 1 a7391 1

    18.4.2.

    d7402 1 a7402 1

    18.4.3.

    d9390 1 a9390 1 homepage at http://pkgsrc-wip.sourceforge.net/ d9563 1 a9563 1
    d9608 1 a9608 1

    22.1.

    d9624 1 a9624 1

    22.2.

    d9642 1 a9642 1

    22.3.

    d9660 1 a9660 1

    22.4.

    d9673 1 a9673 1

    22.5.

    d9689 1 a9689 1

    22.6.

    d9713 1 a9713 1

    22.7.

    d9738 1 a9738 1

    22.8.

    d9786 1 a9786 1

    22.9.

    @ 1.213 log @regen @ text @d512 1 a512 1
  • www/apache22 - The Apache d541 4 a544 4

  • Package dependencies, including when performing package updates, are handled automatically. The configuration files of various packages are handled automatically during updates, so local changes are preserved.

  • d698 5 d7362 1 a7362 1
    d7381 1 a7381 1

    18.4.1.

    d7391 1 a7391 1

    18.4.2.

    d7402 1 a7402 1

    18.4.3.

    d9563 1 a9563 1
    d9608 1 a9608 1

    22.1.

    d9624 1 a9624 1

    22.2.

    d9642 1 a9642 1

    22.3.

    d9660 1 a9660 1

    22.4.

    d9673 1 a9673 1

    22.5.

    d9689 1 a9689 1

    22.6.

    d9713 1 a9713 1

    22.7.

    d9738 1 a9738 1

    22.8.

    d9786 1 a9786 1

    22.9.

    @ 1.212 log @regen @ text @d3688 16 a3703 3 If the packaged software is a Python module, include ../../lang/python/extension.mk. In this case, the package directory should be called a3720 12

    Most Python packages use either distutils or easy-setup (eggs). If the software uses distutils, include ../../lang/python/distutils.mk. so pkgsrc will use this framework. distutils uses a script called setup.py, if the distutils driver is not called setup.py, set the PYSETUP variable to the name of the script.

    Otherwise, if the packaged software is egg-aware, you only need to include ../../lang/python/egg.mk.

    d7357 1 a7357 1
    d7376 1 a7376 1

    18.4.1.

    d7386 1 a7386 1

    18.4.2.

    d7397 1 a7397 1

    18.4.3.

    d9558 1 a9558 1
    d9603 1 a9603 1

    22.1.

    d9619 1 a9619 1

    22.2.

    d9637 1 a9637 1

    22.3.

    d9655 1 a9655 1

    22.4.

    d9668 1 a9668 1

    22.5.

    d9684 1 a9684 1

    22.6.

    d9708 1 a9708 1

    22.7.

    d9733 1 a9733 1

    22.8.

    d9781 1 a9781 1

    22.9.

    @ 1.211 log @regen @ text @d512 1 a512 1
  • www/apache - The Apache d518 1 a518 1

  • meta-pkgs/kde3 - The K a697 5

  • d7356 1 a7356 1
    d7375 1 a7375 1

    18.4.1.

    d7385 1 a7385 1

    18.4.2.

    d7396 1 a7396 1

    18.4.3.

    d9557 1 a9557 1
    d9602 1 a9602 1

    22.1.

    d9618 1 a9618 1

    22.2.

    d9636 1 a9636 1

    22.3.

    d9654 1 a9654 1

    22.4.

    d9667 1 a9667 1

    22.5.

    d9683 1 a9683 1

    22.6.

    d9707 1 a9707 1

    22.7.

    d9732 1 a9732 1

    22.8.

    d9780 1 a9780 1

    22.9.

    @ 1.210 log @regen @ text @d698 5 d1215 1 a1215 1

    Darwin 5.x and up are supported.

    d7361 1 a7361 1
    d7380 1 a7380 1

    18.4.1.

    d7390 1 a7390 1

    18.4.2.

    d7401 1 a7401 1

    18.4.3.

    d9562 1 a9562 1
    d9607 1 a9607 1

    22.1.

    d9623 1 a9623 1

    22.2.

    d9641 1 a9641 1

    22.3.

    d9659 1 a9659 1

    22.4.

    d9672 1 a9672 1

    22.5.

    d9688 1 a9688 1

    22.6.

    d9712 1 a9712 1

    22.7.

    d9737 1 a9737 1

    22.8.

    d9785 1 a9785 1

    22.9.

    @ 1.209 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    a697 5
    d814 1 a814 1
    d928 1 a928 1
    d1114 1 a1114 1
    d1691 1 a1691 1
    d2128 1 a2128 1
    d2522 1 a2522 1
    d2565 1 a2565 1
    d2744 1 a2744 1
    d2885 1 a2885 1
    d3327 1 a3327 1
    d3562 1 a3562 1
    d3961 1 a3961 1
    d4568 1 a4568 1
    d4894 1 a4894 1
    d5114 1 a5114 1
    d5602 1 a5602 1
    d6005 1 a6005 1
    d6246 1 a6246 1
    d6844 3 d7276 1 a7276 1
    d7356 1 a7356 1
    d7375 1 a7375 1

    18.4.1.

    d7385 1 a7385 1

    18.4.2.

    d7396 1 a7396 1

    18.4.3.

    d7417 1 a7417 1
    a7859 12
  • If the package depends on either one of two (or more) packages, specify the pre-req-package-name as a comma-separated list between curly braces.

    As an example, take a package that depends on the Perl version module, which has been part of Perl itself since version 5.10.0. This either/or dependency is expressed as:

    DEPENDS+=	{perl>=5.10.0,p5-version-[0-9]*}:../../devel/p5-version
    	
  • d8751 25 a8775 1 GAMEMODE, GAME_USER.

    d8777 4 a8780 3 access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    d9335 1 a9335 1
    d9557 1 a9557 1
    d9602 1 a9602 1

    22.1.

    d9618 1 a9618 1

    22.2.

    d9636 1 a9636 1

    22.3.

    d9654 1 a9654 1

    22.4.

    d9667 1 a9667 1

    22.5.

    d9683 1 a9683 1

    22.6.

    d9707 1 a9707 1

    22.7.

    d9732 1 a9732 1

    22.8.

    d9780 1 a9780 1

    22.9.

    d9814 1 a9814 1
    d10115 1 a10115 1
    d10160 1 a10160 1
    d10433 1 a10433 1
    d10528 1 a10528 1
    d10582 1 a10582 1
    d10773 1 a10773 1
    d10888 1 a10888 1
    d10996 1 a10996 1
    @ 1.208 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    d698 5 d819 1 a819 1
    d933 1 a933 1
    d1119 1 a1119 1
    d1696 1 a1696 1
    d2133 1 a2133 1
    d2527 1 a2527 1
    d2570 1 a2570 1
    d2749 1 a2749 1
    d2890 1 a2890 1
    d3332 1 a3332 1
    d3567 1 a3567 1
    d3966 1 a3966 1
    d4468 1 a4468 2 LOCALBASE, X11PREFIX, X11BASE, d4573 1 a4573 1
    d4899 1 a4899 1
    d5119 1 a5119 1
    d5607 1 a5607 1
    d6010 1 a6010 1
    d6251 1 a6251 1
    d6335 3 d6339 1 a6339 35

    X11-based packages are special in that they may be installed in either X11BASE or LOCALBASE.

    Usually, X11 packages should be installed under LOCALBASE whenever possible. Note that you will need to include ../../mk/x11.buildlink3.mk in them to request the presence of X11 and to get the right compilation flags.

    Even though, there are some packages that cannot be installed under LOCALBASE: those that come with app-defaults files. These packages are special and they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your package.

    Some notes: If you need to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to look in both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge package is enabled by default.

  • X11PREFIX should be used to refer to the installed location of an X11 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is installed.

  • If xpkgwedge is installed, it is possible to have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an d6345 1 a6345 1 ${X11PREFIX} if the package is not d6744 2 a6745 4 yes. (If you only want the package installed in ${X11PREFIX} but xmkmf not being run, set USE_X11BASE instead.) You can add variables to xmkmf's environment by adding them to the d7278 1 a7278 1

    d7358 1 a7358 1
    d7377 1 a7377 1

    18.4.1.

    d7387 1 a7387 1

    18.4.2.

    d7398 1 a7398 1

    18.4.3.

    d7419 1 a7419 1
    d9324 1 a9324 1
    d9546 1 a9546 1
    d9591 1 a9591 1

    22.1.

    d9607 1 a9607 1

    22.2.

    d9625 1 a9625 1

    22.3.

    d9643 1 a9643 1

    22.4.

    d9656 1 a9656 1

    22.5.

    d9672 1 a9672 1

    22.6.

    d9696 1 a9696 1

    22.7.

    d9721 1 a9721 1

    22.8.

    d9769 1 a9769 1

    22.9.

    d9803 1 a9803 1
    d10104 1 a10104 1
    d10149 1 a10149 1
    d10422 1 a10422 1
    d10517 1 a10517 1
    d10571 1 a10571 1
    d10762 1 a10762 1
    d10877 1 a10877 1
    d10985 1 a10985 1
    @ 1.207 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    a697 5
  • d814 1 a814 1
    d928 1 a928 1
    d1114 1 a1114 1
    d1691 1 a1691 1
    d2128 1 a2128 1
    d2522 1 a2522 1
    d2565 1 a2565 1
    d2744 1 a2744 1
    d2885 1 a2885 1
    d3327 1 a3327 1
    d3562 1 a3562 1
    d3961 1 a3961 1
    d4569 1 a4569 1
    d4895 1 a4895 1
    d5115 1 a5115 1
    d5603 1 a5603 1
    d6006 1 a6006 1
    d6247 1 a6247 1
    d6549 1 a6554 1 ${MASTER_SITE_SOURCEFORGE_JP} d7307 1 a7307 1
    d7387 1 a7387 1
    d7406 1 a7406 1

    18.4.1.

    d7416 1 a7416 1

    18.4.2.

    d7427 1 a7427 1

    18.4.3.

    d7448 1 a7448 1
    d9353 1 a9353 1
    d9575 1 a9575 1
    d9620 1 a9620 1

    22.1.

    d9636 1 a9636 1

    22.2.

    d9654 1 a9654 1

    22.3.

    d9672 1 a9672 1

    22.4.

    d9685 1 a9685 1

    22.5.

    d9701 1 a9701 1

    22.6.

    d9725 1 a9725 1

    22.7.

    d9750 1 a9750 1

    22.8.

    d9798 1 a9798 1

    22.9.

    d9832 1 a9832 1
    d10133 1 a10133 1
    d10178 1 a10178 1
    d10451 1 a10451 1
    d10546 1 a10546 1
    d10600 1 a10600 1
    d10791 1 a10791 1
    d10906 1 a10906 1
    d11014 1 a11014 1
    @ 1.206 log @regen @ text @d701 1 a701 1
    d7392 1 a7392 1
    d7411 1 a7411 1

    18.4.1.

    d7421 1 a7421 1

    18.4.2.

    d7432 1 a7432 1

    18.4.3.

    d9580 1 a9580 1
    d9625 1 a9625 1

    22.1.

    d9641 1 a9641 1

    22.2.

    d9659 1 a9659 1

    22.3.

    d9677 1 a9677 1

    22.4.

    d9690 1 a9690 1

    22.5.

    d9706 1 a9706 1

    22.6.

    d9730 1 a9730 1

    22.7.

    d9755 1 a9755 1

    22.8.

    d9803 1 a9803 1

    22.9.

    @ 1.205 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    d698 5 d819 1 a819 1
    d933 1 a933 1
    d1119 1 a1119 1
    d1696 1 a1696 1
    d2133 1 a2133 1
    d2527 1 a2527 1
    d2570 1 a2570 1
    d2749 1 a2749 1
    d2890 1 a2890 1
    d3332 1 a3332 1
    d3567 1 a3567 1
    d3966 1 a3966 1
    d4574 1 a4574 1
    d4900 1 a4900 1
    d5120 1 a5120 1
    d5608 1 a5608 1
    d6011 1 a6011 1
    d6252 1 a6252 1
    d7312 1 a7312 1
    d7392 1 a7392 1
    d7411 1 a7411 1

    18.4.1.

    d7421 1 a7421 1

    18.4.2.

    d7432 1 a7432 1

    18.4.3.

    d7453 1 a7453 1
    d9358 1 a9358 1
    d9580 1 a9580 1
    d9625 1 a9625 1

    22.1.

    d9641 1 a9641 1

    22.2.

    d9659 1 a9659 1

    22.3.

    d9677 1 a9677 1

    22.4.

    d9690 1 a9690 1

    22.5.

    d9706 1 a9706 1

    22.6.

    d9730 1 a9730 1

    22.7.

    d9755 1 a9755 1

    22.8.

    d9803 1 a9803 1

    22.9.

    d9837 1 a9837 1
    d10138 1 a10138 1
    d10183 1 a10183 1
    d10456 1 a10456 1
    d10551 1 a10551 1
    d10605 1 a10605 1
    d10796 1 a10796 1
    d10911 1 a10911 1
    d11019 1 a11019 1
    @ 1.204 log @regen @ text @a4935 8

    If you have used any of the *-dirs packages, as explained in Section 13.9, “Sharing directories between packages”, you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    a4945 6

    And to get all the @@dirrm lines referring to a specific (shared) directory converted to @@comments:

    PRINT_PLIST_AWK+=       /^@@dirrm share\/specific/ { print "@@comment " $$0; next; }
        
    a5026 1 ${PLIST.foo}@@dirrm share/bar d7001 8 d7233 6 d7387 1 a7387 1
    d7406 1 a7406 1

    18.4.1.

    d7416 1 a7416 1

    18.4.2.

    d7427 1 a7427 1

    18.4.3.

    d9575 1 a9575 1
    d9620 1 a9620 1

    22.1.

    d9636 1 a9636 1

    22.2.

    d9654 1 a9654 1

    22.3.

    d9672 1 a9672 1

    22.4.

    d9685 1 a9685 1

    22.5.

    d9701 1 a9701 1

    22.6.

    d9725 1 a9725 1

    22.7.

    d9750 1 a9750 1

    22.8.

    d9798 1 a9798 1

    22.9.

    @ 1.203 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    d814 1 a814 1
    d928 1 a928 1
    d1114 1 a1114 1
    d1691 1 a1691 1
    d2128 1 a2128 1
    d2522 1 a2522 1
    d2565 1 a2565 1
    d2744 1 a2744 1
    d2885 1 a2885 1
    d3327 1 a3327 1
    d3562 1 a3562 1
    d3961 1 a3961 1
    d4569 1 a4569 1
    d4895 1 a4895 1
    d5130 1 a5130 1
    d5618 1 a5618 1
    d6021 1 a6021 1
    d6262 1 a6262 1
    d7308 1 a7308 1
    d7388 1 a7388 1
    d7407 1 a7407 1

    18.4.1.

    d7417 1 a7417 1

    18.4.2.

    d7428 1 a7428 1

    18.4.3.

    d7449 1 a7449 1
    d8725 3 a8727 2 to unlimit the resources. Currently, the allowed values are datasize and stacksize (or both). d9354 1 a9354 1
    d9576 1 a9576 1
    d9621 1 a9621 1

    22.1.

    d9637 1 a9637 1

    22.2.

    d9655 1 a9655 1

    22.3.

    d9673 1 a9673 1

    22.4.

    d9686 1 a9686 1

    22.5.

    d9702 1 a9702 1

    22.6.

    d9726 1 a9726 1

    22.7.

    d9751 1 a9751 1

    22.8.

    d9799 1 a9799 1

    22.9.

    d9833 1 a9833 1
    d10134 1 a10134 1
    d10179 1 a10179 1
    d10452 1 a10452 1
    d10547 1 a10547 1
    d10601 1 a10601 1
    d10792 1 a10792 1
    d10907 1 a10907 1
    d11015 1 a11015 1
    @ 1.202 log @regen @ text @d607 1 a607 1
    d612 1 a612 1 d620 1 a620 1 d625 1 a625 1 d630 1 a630 1 d636 2 a637 2 README.IRIXREADME.IRIX5.3 d648 1 a648 1 d656 1 a656 1 d666 1 a666 1 d671 1 a671 1 d676 1 a676 1 d686 1 a686 1 d691 1 a691 1 d696 1 a696 1 d3685 1 a3685 1 PYTHON_VERSIONS_INCOMPATIBLE= 26 d7388 1 a7388 1
    d7407 1 a7407 1

    18.4.1.

    d7417 1 a7417 1

    18.4.2.

    d7428 1 a7428 1

    18.4.3.

    d9575 1 a9575 1
    d9620 1 a9620 1

    22.1.

    d9636 1 a9636 1

    22.2.

    d9654 1 a9654 1

    22.3.

    d9672 1 a9672 1

    22.4.

    d9685 1 a9685 1

    22.5.

    d9701 1 a9701 1

    22.6.

    d9725 1 a9725 1

    22.7.

    d9750 1 a9750 1

    22.8.

    d9798 1 a9798 1

    22.9.

    @ 1.201 log @regen @ text @d48 1 a48 1
    d487 1 a487 1
    d591 1 d596 1 d602 1 d607 1 d612 1 d620 1 d625 1 d630 1 d635 4 d643 1 d648 1 d656 1 d661 1 d666 1 d671 1 d676 1 d681 1 d686 1 d691 1 d696 1 d814 1 a814 1
    d928 1 a928 1
    d1114 1 a1114 1
    d1691 1 a1691 1
    d2128 1 a2128 1
    d2522 1 a2522 1
    d2565 1 a2565 1
    d2744 1 a2744 1
    d2885 1 a2885 1
    d3327 1 a3327 1
    d3562 1 a3562 1
    d3685 1 a3685 1 PYTHON_VERSIONS_INCOMPATIBLE= 27 d3961 1 a3961 1
    d4569 1 a4569 1
    d4895 1 a4895 1
    d5130 1 a5130 1
    d5618 1 a5618 1
    d6021 1 a6021 1
    d6262 1 a6262 1
    d7308 1 a7308 1
    d7388 1 a7388 1
    d7407 1 a7407 1

    18.4.1.

    d7417 1 a7417 1

    18.4.2.

    d7428 1 a7428 1

    18.4.3.

    d7449 1 a7449 1
    d9353 1 a9353 1
    d9575 1 a9575 1
    d9620 1 a9620 1

    22.1.

    d9636 1 a9636 1

    22.2.

    d9654 1 a9654 1

    22.3.

    d9672 1 a9672 1

    22.4.

    d9685 1 a9685 1

    22.5.

    d9701 1 a9701 1

    22.6.

    d9725 1 a9725 1

    22.7.

    d9750 1 a9750 1

    22.8.

    d9798 1 a9798 1

    22.9.

    d9832 1 a9832 1
    d10133 1 a10133 1
    d10178 1 a10178 1
    d10451 1 a10451 1
    d10546 1 a10546 1
    d10600 1 a10600 1
    d10791 1 a10791 1
    d10906 1 a10906 1
    d11014 1 a11014 1
    @ 1.200 log @regen @ text @d3662 1 a3662 1 PYTHON_VERSIONS_INCOMPATIBLE= 26 d7365 1 a7365 1
    d7384 1 a7384 1

    18.4.1.

    d7394 1 a7394 1

    18.4.2.

    d7405 1 a7405 1

    18.4.3.

    d9552 1 a9552 1
    d9597 1 a9597 1

    22.1.

    d9613 1 a9613 1

    22.2.

    d9631 1 a9631 1

    22.3.

    d9649 1 a9649 1

    22.4.

    d9662 1 a9662 1

    22.5.

    d9678 1 a9678 1

    22.6.

    d9702 1 a9702 1

    22.7.

    d9727 1 a9727 1

    22.8.

    d9775 1 a9775 1

    22.9.

    @ 1.199 log @regen @ text @d7365 1 a7365 1
    d7384 1 a7384 1

    18.4.1.

    d7394 1 a7394 1

    18.4.2.

    d7405 1 a7405 1

    18.4.3.

    d8164 2 a8165 1

    Helper methods exist for packages hosted on github.com. You do not need to specify MASTER_SITE but should instead use one of the three supported methods from below.

    d8174 3 a8176 4 USE_GITHUB= yes GH_ACCOUNT= username #GH_PROJECT= # can be omitted if same as DISTNAME GH_TAGNAME= v1.0 d8188 3 a8190 4 USE_GITHUB= yes #GH_ACCOUNT= # can be omitted if same as DISTNAME #GH_PROJECT= # can be omitted if same as DISTNAME GH_COMMIT= 988881adc9fc3655077dc2d4d757d480b5ea0e11 a8199 1 PKGNAME= ${DISTNAME:S/offensive/proper/} d8201 5 a8205 4 USE_GITHUB= yes GH_ACCOUNT= username GH_PROJECT= exampleproject GH_RELEASE= rel-${PKGVERSION_NOREV} # usually just set this to ${DISTNAME} d9552 1 a9552 1
    d9597 1 a9597 1

    22.1.

    d9613 1 a9613 1

    22.2.

    d9631 1 a9631 1

    22.3.

    d9649 1 a9649 1

    22.4.

    d9662 1 a9662 1

    22.5.

    d9678 1 a9678 1

    22.6.

    d9702 1 a9702 1

    22.7.

    d9727 1 a9727 1

    22.8.

    d9775 1 a9775 1

    22.9.

    @ 1.198 log @regen @ text @d330 1 d3463 1 d4980 4 a4983 3

    For a complete list of values which are replaced by default, please look in bsd.pkg.mk (and search for PLIST_SUBST).

    d7365 1 a7365 1
    d7384 1 a7384 1

    18.4.1.

    d7394 1 a7394 1

    18.4.2.

    d7405 1 a7405 1

    18.4.3.

    d7446 1 d8161 49 d9553 1 a9553 1
    d9598 1 a9598 1

    22.1.

    d9614 1 a9614 1

    22.2.

    d9632 1 a9632 1

    22.3.

    d9650 1 a9650 1

    22.4.

    d9663 1 a9663 1

    22.5.

    d9679 1 a9679 1

    22.6.

    d9703 1 a9703 1

    22.7.

    d9728 1 a9728 1

    22.8.

    d9776 1 a9776 1

    22.9.

    @ 1.197 log @regen @ text @d7362 1 a7362 1
    d7381 1 a7381 1

    18.4.1.

    d7391 1 a7391 1

    18.4.2.

    d7402 1 a7402 1

    18.4.3.

    d8548 6 a8553 3 MACHINE_ARCH and compiler, and documenting it in pkgsrc/doc/HACKS. See that file for a number of examples.

    d9500 1 a9500 1
    d9545 1 a9545 1

    22.1.

    d9561 1 a9561 1

    22.2.

    d9579 1 a9579 1

    22.3.

    d9597 1 a9597 1

    22.4.

    d9610 1 a9610 1

    22.5.

    d9626 1 a9626 1

    22.6.

    d9650 1 a9650 1

    22.7.

    d9675 1 a9675 1

    22.8.

    d9723 1 a9723 1

    22.9.

    @ 1.196 log @regen @ text @d228 2 a229 1
    13.8. Sharing directories between packages
    d3360 2 a3361 1
    13.8. Sharing directories between packages
    d4878 2 a4879 1
    13.8. Sharing directories between packages
    d4912 1 a4912 1 Section 13.8, “Sharing directories between packages”, you may have noticed that d5058 19 a5076 1 13.8. Sharing directories between packages d5094 2 d7362 1 a7362 1
    d7381 1 a7381 1

    18.4.1.

    d7391 1 a7391 1

    18.4.2.

    d7402 1 a7402 1

    18.4.3.

    d9497 1 a9497 1
    d9542 1 a9542 1

    22.1.

    d9558 1 a9558 1

    22.2.

    d9576 1 a9576 1

    22.3.

    d9594 1 a9594 1

    22.4.

    d9607 1 a9607 1

    22.5.

    d9623 1 a9623 1

    22.6.

    d9647 1 a9647 1

    22.7.

    d9672 1 a9672 1

    22.8.

    d9720 1 a9720 1

    22.9.

    @ 1.195 log @regen @ text @d1731 1 a1731 1 subdirectory called All, which contains all the d1740 1 a1740 1 # PKG_PATH="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/OPSYS/ARCH/VERSIONS/All" d7339 1 a7339 1
    d7358 1 a7358 1

    18.4.1.

    d7368 1 a7368 1

    18.4.2.

    d7379 1 a7379 1

    18.4.3.

    d9474 1 a9474 1
    d9519 1 a9519 1

    22.1.

    d9535 1 a9535 1

    22.2.

    d9553 1 a9553 1

    22.3.

    d9571 1 a9571 1

    22.4.

    d9584 1 a9584 1

    22.5.

    d9600 1 a9600 1

    22.6.

    d9624 1 a9624 1

    22.7.

    d9649 1 a9649 1

    22.8.

    d9697 1 a9697 1

    22.9.

    @ 1.194 log @Fix some problems in the "configuring" section of the pkgsrc guide and regenerate html and txt version. From Ray Phillips in PR misc/49367. @ text @d48 1 a48 1
    d485 1 a485 1
    d789 1 a789 1
    d903 1 a903 1
    d1089 1 a1089 1
    d1666 1 a1666 1
    d2103 1 a2103 1
    d2497 1 a2497 1
    d2540 1 a2540 1
    d2719 1 a2719 1
    d2860 1 a2860 1
    d3302 1 a3302 1
    d3535 1 a3535 1
    d3934 1 a3934 1
    d4542 1 a4542 1
    d4868 1 a4868 1
    d5081 1 a5081 1
    d5569 1 a5569 1
    d5972 1 a5972 1
    d6213 1 a6213 1
    d7259 1 a7259 1
    d7339 1 a7339 1
    d7358 1 a7358 1

    18.4.1.

    d7368 1 a7368 1

    18.4.2.

    d7379 1 a7379 1

    18.4.3.

    d7400 1 a7400 1
    d9252 1 a9252 1
    d9474 1 a9474 1
    d9519 1 a9519 1

    22.1.

    d9535 1 a9535 1

    22.2.

    d9553 1 a9553 1

    22.3.

    d9571 1 a9571 1

    22.4.

    d9584 1 a9584 1

    22.5.

    d9600 1 a9600 1

    22.6.

    d9624 1 a9624 1

    22.7.

    d9649 1 a9649 1

    22.8.

    d9697 1 a9697 1

    22.9.

    d9731 1 a9731 1
    d10032 1 a10032 1
    d10077 1 a10077 1
    d10350 1 a10350 1
    d10445 1 a10445 1
    d10499 1 a10499 1
    d10690 1 a10690 1
    d10805 1 a10805 1
    d10913 1 a10913 1
    @ 1.193 log @regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.27 2014/09/19 04:53:09 jnemeth Exp $

    d151 9 a159 10
    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d161 7 a167 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d878 9 a886 10
    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d888 7 a894 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2153 1 a2153 1 /usr/X11R6.

    d2222 1 a2222 1 PKGSRC_KEEP_BIN_PKGScan be set to d2392 1 a2392 1

    XXX d2862 9 a2870 10

    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d2872 7 a2878 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2917 1 a2917 8 9.2. Where's the pkgviews documentation?

    Pkgviews is tightly integrated with buildlink. You can find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    9.3. Utilities for package management (pkgtools)

    d2993 1 a2993 1 9.4. How to use pkgsrc as non-root
    d3014 1 a3014 1 9.5. How to resume transfers when fetching distfiles? d3038 1 a3038 1 9.6. How can I install/use modular X.org from pkgsrc? d3054 1 a3054 1 9.7. How to fetch files from behind a firewall d3069 1 a3069 1 9.8. How to fetch files from HTTPS sites d3084 1 a3084 1 9.9. How do I tell make fetch to do passive FTP? d3104 1 a3104 1 9.10. How to fetch all distfiles at once d3136 1 a3136 1 9.11. What does Don't know how to make d3150 1 a3150 1 9.12. What does Could not find bsd.own.mk mean? d3162 1 a3162 1 9.13. Using 'sudo' with pkgsrc d3180 1 a3180 1 9.14. How do I change the location of configuration files? d3202 1 a3202 1 9.15. Automated security checks d3235 1 a3235 1 9.16. Why do some packages ignore my CFLAGS? d3257 1 a3257 1 9.17. A package does not build. What shall I do? d3278 1 a3278 1 9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean? d5323 1 a5323 1 on stdout. By default for overwrite packages, d5327 1 a5327 3 +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib directories.

    d7339 1 a7339 1
    d7358 1 a7358 1

    18.4.1.

    d7368 1 a7368 1

    18.4.2.

    d7379 1 a7379 1

    18.4.3.

    d8896 1 a8896 1 Section 9.14, “How do I change the location of configuration files?” for more information.

    d9474 1 a9474 1
    d9519 1 a9519 1

    22.1.

    d9535 1 a9535 1

    22.2.

    d9553 1 a9553 1

    22.3.

    d9571 1 a9571 1

    22.4.

    d9584 1 a9584 1

    22.5.

    d9600 1 a9600 1

    22.6.

    d9624 1 a9624 1

    22.7.

    d9649 1 a9649 1

    22.8.

    d9697 1 a9697 1

    22.9.

    @ 1.192 log @regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.28 2015/01/01 05:19:02 jnemeth Exp $

    d151 10 a160 9
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d162 7 a168 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d879 10 a888 9
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d890 7 a896 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2864 10 a2873 9
    9.2. Utilities for package management (pkgtools)
    9.3. How to use pkgsrc as non-root
    9.4. How to resume transfers when fetching distfiles?
    9.5. How can I install/use modular X.org from pkgsrc?
    9.6. How to fetch files from behind a firewall
    9.7. How to fetch files from HTTPS sites
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d2875 7 a2881 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2920 8 a2927 1 9.2. Utilities for package management (pkgtools) d3003 1 a3003 1 9.3. How to use pkgsrc as non-root d3024 1 a3024 1 9.4. How to resume transfers when fetching distfiles? d3048 1 a3048 1 9.5. How can I install/use modular X.org from pkgsrc? d3064 1 a3064 1 9.6. How to fetch files from behind a firewall d3079 1 a3079 1 9.7. How to fetch files from HTTPS sites d3094 1 a3094 1 9.8. How do I tell make fetch to do passive FTP? d3114 1 a3114 1 9.9. How to fetch all distfiles at once d3146 1 a3146 1 9.10. What does Don't know how to make d3160 1 a3160 1 9.11. What does Could not find bsd.own.mk mean? d3172 1 a3172 1 9.12. Using 'sudo' with pkgsrc d3190 1 a3190 1 9.13. How do I change the location of configuration files? d3212 1 a3212 1 9.14. Automated security checks d3245 1 a3245 1 9.15. Why do some packages ignore my CFLAGS? d3267 1 a3267 1 9.16. A package does not build. What shall I do? d3288 1 a3288 1 9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean? d5333 1 a5333 1 on stdout. By default, d5337 3 a5339 1 +CONTENTS.

    d7351 1 a7351 1
    d7370 1 a7370 1

    18.4.1.

    d7380 1 a7380 1

    18.4.2.

    d7391 1 a7391 1

    18.4.3.

    d7907 11 d7919 2 a7920 2 the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. d8498 1 d8908 1 a8908 1 Section 9.13, “How do I change the location of configuration files?” for more information.

    d9486 1 a9486 1
    d9531 1 a9531 1

    22.1.

    d9547 1 a9547 1

    22.2.

    d9565 1 a9565 1

    22.3.

    d9583 1 a9583 1

    22.4.

    d9596 1 a9596 1

    22.5.

    d9612 1 a9612 1

    22.6.

    d9636 1 a9636 1

    22.7.

    d9661 1 a9661 1

    22.8.

    d9709 1 a9709 1

    22.9.

    @ 1.191 log @regen @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.27 2014/09/19 04:53:09 jnemeth Exp $

    d7339 1 a7339 1
    d7358 1 a7358 1

    18.4.1.

    d7368 1 a7368 1

    18.4.2.

    d7379 1 a7379 1

    18.4.3.

    d9462 1 a9462 1
    d9507 1 a9507 1

    22.1.

    d9523 1 a9523 1

    22.2.

    d9541 1 a9541 1

    22.3.

    d9559 1 a9559 1

    22.4.

    d9572 1 a9572 1

    22.5.

    d9588 1 a9588 1

    22.6.

    d9612 1 a9612 1

    22.7.

    d9637 1 a9637 1

    22.8.

    d9685 1 a9685 1

    22.9.

    @ 1.190 log @regen @ text @d151 9 a159 10
    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d161 7 a167 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d878 9 a886 10
    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d888 7 a894 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2862 9 a2870 10
    9.2. Where's the pkgviews documentation?
    9.3. Utilities for package management (pkgtools)
    9.4. How to use pkgsrc as non-root
    9.5. How to resume transfers when fetching distfiles?
    9.6. How can I install/use modular X.org from pkgsrc?
    9.7. How to fetch files from behind a firewall
    9.8. How to fetch files from HTTPS sites
    9.9. How do I tell make fetch to do passive FTP?
    9.10. How to fetch all distfiles at once
    9.11. What does Don't know how to make d2872 7 a2878 7
    9.12. What does Could not find bsd.own.mk mean?
    9.13. Using 'sudo' with pkgsrc
    9.14. How do I change the location of configuration files?
    9.15. Automated security checks
    9.16. Why do some packages ignore my CFLAGS?
    9.17. A package does not build. What shall I do?
    9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d2917 1 a2917 8 9.2. Where's the pkgviews documentation?

    Pkgviews is tightly integrated with buildlink. You can find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    9.3. Utilities for package management (pkgtools)

    d2993 1 a2993 1 9.4. How to use pkgsrc as non-root
    d3014 1 a3014 1 9.5. How to resume transfers when fetching distfiles? d3038 1 a3038 1 9.6. How can I install/use modular X.org from pkgsrc? d3054 1 a3054 1 9.7. How to fetch files from behind a firewall d3069 1 a3069 1 9.8. How to fetch files from HTTPS sites d3084 1 a3084 1 9.9. How do I tell make fetch to do passive FTP? d3104 1 a3104 1 9.10. How to fetch all distfiles at once d3136 1 a3136 1 9.11. What does Don't know how to make d3150 1 a3150 1 9.12. What does Could not find bsd.own.mk mean? d3162 1 a3162 1 9.13. Using 'sudo' with pkgsrc d3180 1 a3180 1 9.14. How do I change the location of configuration files? d3202 1 a3202 1 9.15. Automated security checks d3235 1 a3235 1 9.16. Why do some packages ignore my CFLAGS? d3257 1 a3257 1 9.17. A package does not build. What shall I do? d3278 1 a3278 1 9.18. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean? d5323 1 a5323 1 on stdout. By default for overwrite packages, d5327 1 a5327 3 +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib directories.

    d7339 1 a7339 1
    d7358 1 a7358 1

    18.4.1.

    d7368 1 a7368 1

    18.4.2.

    d7379 1 a7379 1

    18.4.3.

    d8884 1 a8884 1 Section 9.14, “How do I change the location of configuration files?” for more information.

    d9462 1 a9462 1
    d9507 1 a9507 1

    22.1.

    d9523 1 a9523 1

    22.2.

    d9541 1 a9541 1

    22.3.

    d9559 1 a9559 1

    22.4.

    d9572 1 a9572 1

    22.5.

    d9588 1 a9588 1

    22.6.

    d9612 1 a9612 1

    22.7.

    d9637 1 a9637 1

    22.8.

    d9685 1 a9685 1

    22.9.

    @ 1.189 log @regen @ text @d2223 4 a2226 1 packages after installing dependencies.

    d4026 1 a4026 1
  • PATCHFILES: d4035 5 a4039 1 PATCHFILES below) if not found locally.

  • d7351 1 a7351 1
    d7370 1 a7370 1

    18.4.1.

    d7380 1 a7380 1

    18.4.2.

    d7391 1 a7391 1

    18.4.3.

    d7880 7 a7886 2 tree.

    In this case you can set CONFLICTS to a d7889 4 a7892 4

    For example, x11/Xaw3d and x11/Xaw-Xpm install the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d7894 1 a7894 1 CONFLICTS= Xaw-Xpm-[0-9]* d7896 1 a7896 1

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

    d7898 1 a7898 1 CONFLICTS= Xaw3d-[0-9]* a7899 4

    Packages will automatically conflict with other packages with the name prefix and a different version string. Xaw3d-1.5 e.g. will automatically conflict with the older version Xaw3d-1.3.

    d9474 1 a9474 1
    d9519 1 a9519 1

    22.1.

    d9535 1 a9535 1

    22.2.

    d9553 1 a9553 1

    22.3.

    d9571 1 a9571 1

    22.4.

    d9584 1 a9584 1

    22.5.

    d9600 1 a9600 1

    22.6.

    d9624 1 a9624 1

    22.7.

    d9649 1 a9649 1

    22.8.

    d9697 1 a9697 1

    22.9.

    @ 1.188 log @regen @ text @d511 1 a511 1
  • www/apache - The Apache d513 1 a513 1

  • www/firefox - The Firefox d515 1 a515 1

  • meta-pkgs/gnome - The GNOME d517 1 a517 1

  • meta-pkgs/kde3 - The K d565 1 a565 1 find such bugs: Static analysis tools (pkgtools/pkglint), build-time checks (portability d1373 1 a1373 1 audio/esound package does d1376 1 a1376 1 emulators/cygwin_esound package d1424 1 a1424 1 version of IRIX providing support for if_indextoname(3), if_nametoindex(3), d1497 1 a1497 1 ld(1) command run when linking a C++ shared library and d1596 1 a1596 1 lang/gcc46 or install a binary gcc d1652 1 a1652 1 scripts, for example by installing shells/bash and adding the following lines d1658 1 a1658 1

    Then, rebuild the devel/libtool-base package.

    d1832 1 a1832 1 to the root users crontab(5) entry. For example the entry d1856 1 a1856 1 Install pkgtools/lintpkgsrc and run d1879 1 a1879 1 expressed in the pkg_add(1) manual page about the d1899 1 a1899 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

    d1957 1 a1957 1 meta-pkgs/kde3), the build process may d2055 1 a2055 1

    If you invoke the make(1) command with d2063 1 a2063 1

    If you want to know the value of a certain make(1) d2066 1 a2066 1 target. e.g. to show the expansion of the make(1) d2079 1 a2079 1 install a binary package - if available - via pkg_add(1), d2083 1 a2083 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d2122 1 a2122 1 make(1) from the base system, it is in the directory d2276 1 a2276 1 privileges using su(1) d2366 1 a2366 1 at the devel/cpuflags d2506 1 a2506 1 another system with pkg_add(1). This saves having to build d2523 1 a2523 1 continuation of the above misc/figlet example.

    d2673 1 a2673 1 pkgtools/cdpack package provides d2931 1 a2931 1
    • pkgtools/x11-links: d2935 1 a2935 1

    • pkgtools/digest: d2937 1 a2937 1

    • pkgtools/libnbcompat: d2939 1 a2939 1

    • pkgtools/mtree: Installed on d2941 1 a2941 1

    • pkgtools/pkg_install: d2948 1 a2948 1

    • pkgtools/pkg_tarup: d2952 1 a2952 1

    • pkgtools/dfdisk: d2956 1 a2956 1

    • devel/cpuflags: Determine d2963 1 a2963 1

    • pkgtools/pkgin: A package d2966 1 a2966 1

    • pkgtools/pkg_chk: Reports on d2969 1 a2969 1

    • pkgtools/pkgdep: Makes d2972 3 a2974 3

    • pkgtools/pkgdepgraph: Makes graphs from the output of pkgtools/pkgdep (uses graphviz).

    • pkgtools/pkglint: The d2976 1 a2976 1

    • pkgtools/lintpkgsrc: The lintpkgsrc(1) program d2978 1 a2978 1

    • pkgtools/pkgsurvey: Report what d2983 1 a2983 1

    • pkgtools/pkgdiff: Automate d2986 1 a2986 1

    • pkgtools/url2pkg: Aids in d2992 1 a2992 1

    • pkgtools/pkg_comp: Build d2994 1 a2994 1

    • pkgtools/libkver: Spoof d3119 1 a3119 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d3145 1 a3145 1

      When compiling the pkgtools/pkg_install d3151 1 a3151 1

      In the case of the pkgtools/pkg_install package, you d3171 1 a3171 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3175 1 a3175 1 security/sudo) and then put the d3217 1 a3217 1 pkgtools/pkg_install package):

      d3247 1 a3247 1 scripts and to make(1). Some package authors ignore the d3558 1 a3558 1
    • First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

    • d3916 1 a3916 1 interface. I looked up in www/seamonkey d4040 1 a4040 1 this package which have been reported with send-pr(1). d4075 1 a4075 1 lang/tcl and x11/tk for other examples.

      d4122 1 a4122 1 the platform, for example lang/openjdk7. These are kept in the same d4172 1 a4172 1 pkgdiff command from the pkgtools/pkgdiff package to avoid these d4199 1 a4199 1 mkpatches included in pkgtools/pkgdiff takes care of the name d4393 1 a4393 1

      This shell script is invoked twice by pkg_add(1). d4398 2 a4399 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d4419 2 a4420 2 See pkg_delete(1) and pkg_create(1) for more information. d4561 1 a4561 1 the make(1) system as a programming language for a big system d4567 1 a4567 1 like awk(1) programs. To make sure that every shell command runs d4581 1 a4581 1 make(1) for the second time, the file exists and will not be d4599 1 a4599 1

      You might remember that make(1) sometimes removes d4603 1 a4603 1 when one of the commands fails (like false(1) above).

      d4611 1 a4611 1 ``:='', and ``!='', which are described in the make(1) man d4631 1 a4631 1 of. In all other cases, make(1) performs lazy evaluation, that d4638 1 a4638 1 it from sh(1).

      d4746 1 a4746 1 date(1) will be executed. The $HOME shell d4750 1 a4750 1 echo(1) command.

      d4753 1 a4753 1 implementation of the echo(1) command. As long as you can d4844 2 a4845 2 make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write d4861 1 a4861 1 package regress/make-quoting, testcase d4886 1 a4886 1 - see the pkg_create(1) man page for a full list. d5038 1 a5038 1 The files are later concatenated using cat(1), and the order of things is d5173 1 a5173 1 to install the devel/ncurses package.

      d5180 1 a5180 1 x11/lesstif, x11/motif or x11/openmotif. The user can set d5187 2 a5188 2 or adds a dependency on devel/readline, devel/editline. The user can set d5203 1 a5203 1 a dependency on devel/pth as needed.

      d5224 1 a5224 1 file for further editing, Rene Hexel's pkgtools/createbuildlink d5748 1 a5748 1 www/apache24, which places its d5821 1 a5821 1 mail/mutt package:

      d5850 1 a5850 1 print/cups package as an example, it has a d5933 1 a5933 1 following example, taken from shells/zsh:

      d5959 1 a5959 1 installation prefix. Consider the following example, taken from fonts/dbz-ttf:

      d6088 1 a6088 1 make(1) variable that the user can set to override the default d6325 1 a6325 1 pkgtools/xpkgwedge package d6340 1 a6340 1 DIRNAME=<package>, and the make(1) d6365 1 a6365 1 install files according to hier(7), with the exception that d6646 1 a6646 1 patch(1) can be handed in d6648 1 a6648 1

      By default patch(1) is given special args to make d6829 1 a6829 1 install(1) command that have the owner, group and d6944 1 a6944 1

      This target does a pkg_delete(1) in the d6950 1 a6950 1

      Add a "-v" to the pkg_delete(1) command.

      d6959 1 a6959 1 -R to the pkg_delete(1) d7091 1 a7091 1 packages. You will need to install pkgtools/pkg_tarup for this d7103 1 a7103 1

      This target invokes pkg_info(1) for the current d7130 1 a7130 1 viewed using a browser such as www/firefox or www/links. The generated files d7213 1 a7213 1

      If the package installs files via tar(1) or d7240 1 a7240 1 it will be installed via pkg_add(1). If not, d7245 1 a7245 1 pkg_add(1) if:

      d7344 1 a7344 1
      d7363 1 a7363 1

      18.4.1.

      d7373 1 a7373 1

      18.4.2.

      d7384 1 a7384 1

      18.4.3.

      d7494 1 a7494 1 make(1) (for example .if or d7626 1 a7626 1 license, e.g. in graphics/xv:

      d7775 1 a7775 1 pkg_info(1).

      d7814 1 a7814 1 print/lyx package needs to d7863 1 a7863 1 automatically. See the print/ghostscript package for an example. d7877 2 a7878 2

      For example, x11/Xaw3d and x11/Xaw-Xpm d7907 1 a7907 1 operating system, e.g. LKMs or sysutils/lsof. Such binary packages are not d7929 1 a7929 1 not be deleted using pkg_delete(1) unless the d8062 1 a8062 1 sed(1) that specify the actual substitution. Every sed d8081 1 a8081 1 it. graphics/ns-cult3d is an d8141 1 a8141 1 devel/libtool pkg d8213 1 a8213 1 files, i.e. files that are loaded via dlopen(3), NOT d8223 1 a8223 1 the cc(1) or ld(1) line with ${LIBTOOL} d8240 2 a8241 2

      When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8249 1 a8249 1 ldconfig(8).

      d8657 1 a8657 1 generated with the textproc/gtk-doc tools, for use by special d8811 1 a8811 1 devel/gtexinfo package will d9093 1 a9093 1

      The pkgtools/rpm2pkg d9167 1 a9167 1

      Install pkgtools/url2pkg, d9193 1 a9193 1 from the pkgtools/pkgdiff d9232 1 a9232 1

      Run pkglint from pkgtools/pkglint, and fix the problems it d9271 1 a9271 1 document. Next, generate an uuencoded gzipped tar(1) d9274 1 a9274 1 either with the send-pr(1) command, or if you don't have d9279 1 a9279 1 sysutils/gtk-send-pr package is d9430 1 a9430 1 search the pkg_summary(5) database for PREV_PKGPATH d9466 1 a9466 1

      d9511 1 a9511 1

      22.1.

      d9520 1 a9520 1 to the pkgsrc-internal invocations of make(1), while d9527 1 a9527 1

      22.2.

      d9536 1 a9536 1 make(1) program that is used in the pkgsrc d9545 1 a9545 1

      22.3.

      d9563 1 a9563 1

      22.4.

      d9576 1 a9576 1

      22.5.

      d9592 1 a9592 1

      22.6.

      d9605 1 a9605 1 which is documented in the make(1) man page and which you d9616 1 a9616 1

      22.7.

      d9634 1 a9634 1 send-pr(1) appear here. Please do not report your bugs here d9641 1 a9641 1

      22.8.

      d9689 1 a9689 1

      22.9.

      d9701 1 a9701 1 pkgtools/pkg_chk package). It d9767 1 a9767 1
    • meta-pkgs/gnome-base: Provides d9774 1 a9774 1

    • meta-pkgs/gnome: Provides a d9784 2 a9785 2 package "extends" meta-pkgs/gnome-base.

    • meta-pkgs/gnome-devel: d9818 1 a9818 1

      Also use pkgtools/verifypc at d9963 1 a9963 1 GNU Autotools in the meta-pkgs/gnome-devel meta package.

      d10368 1 a10368 1

      You first need to install the pkgtools/pkg_regress package, which d10477 1 a10477 1 lang/perl5, shells/bash.

      d10536 1 a10536 1 improvements. Why you would want this when Berkeley yacc(1) is part d10556 1 a10556 1 pkgtools/pkglint d10936 1 a10936 1 you install the meta-pkgs/pkgsrc-guide-tools package.

    • @ 1.187 log @regen @ text @d511 1 a511 1
    • www/apache - The Apache d513 1 a513 1

    • www/firefox - The Firefox d515 1 a515 1

    • meta-pkgs/gnome - The GNOME d517 1 a517 1

    • meta-pkgs/kde3 - The K d565 1 a565 1 find such bugs: Static analysis tools (pkgtools/pkglint), build-time checks (portability d935 1 a935 1 2009Q1.

      a940 2

      Note also that quarterly branch is not frozen in stone. It receives critical updates.

      d961 2 a962 2

      The tar file for the stable branch 2013Q1 is in the directory pkgsrc-2013Q1 and is also called pkgsrc.tar.gz.

      d968 2 a969 2 pkgsrc-2013Q1.

      You can use fetch it also using "wget", "curl", d972 1 a972 1

      $ tar -xzf pkgsrc-20xxQy.tar.gz -C /usr
      d986 1 a986 1 branch to be checked out, for example, pkgsrc-2009Q1

      d993 1 a993 1

      Refer to the list of available mirrors to choose a faster CVS mirror, if needed.

      d1043 2 a1044 2 before updating. You can also configure pkgsrc to use other than the default directories by setting the d1070 1 a1070 1 -rpkgsrc-2009Q3 option.

      d1373 1 a1373 1 audio/esound package does d1376 1 a1376 1 emulators/cygwin_esound package d1424 1 a1424 1 version of IRIX providing support for if_indextoname(3), if_nametoindex(3), d1497 1 a1497 1 ld(1) command run when linking a C++ shared library and d1596 1 a1596 1 lang/gcc46 or install a binary gcc d1652 1 a1652 1 scripts, for example by installing shells/bash and adding the following lines d1658 1 a1658 1

      Then, rebuild the devel/libtool-base package.

      d1832 1 a1832 1 to the root users crontab(5) entry. For example the entry d1856 1 a1856 1 Install pkgtools/lintpkgsrc and run d1879 1 a1879 1 expressed in the pkg_add(1) manual page about the d1899 1 a1899 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

      d1957 1 a1957 1 meta-pkgs/kde3), the build process may d2055 1 a2055 1

      If you invoke the make(1) command with d2063 1 a2063 1

      If you want to know the value of a certain make(1) d2066 1 a2066 1 target. e.g. to show the expansion of the make(1) d2079 1 a2079 1 install a binary package - if available - via pkg_add(1), d2083 1 a2083 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d2122 1 a2122 1 make(1) from the base system, it is in the directory d2276 1 a2276 1 privileges using su(1) d2366 1 a2366 1 at the devel/cpuflags d2506 1 a2506 1 another system with pkg_add(1). This saves having to build d2523 1 a2523 1 continuation of the above misc/figlet example.

      d2673 1 a2673 1 pkgtools/cdpack package provides d2931 1 a2931 1
      • pkgtools/x11-links: d2935 1 a2935 1

      • pkgtools/digest: d2937 1 a2937 1

      • pkgtools/libnbcompat: d2939 1 a2939 1

      • pkgtools/mtree: Installed on d2941 1 a2941 1

      • pkgtools/pkg_install: d2948 1 a2948 1

      • pkgtools/pkg_tarup: d2952 1 a2952 1

      • pkgtools/dfdisk: d2956 1 a2956 1

      • devel/cpuflags: Determine d2963 1 a2963 1

      • pkgtools/pkgin: A package d2966 1 a2966 1

      • pkgtools/pkg_chk: Reports on d2969 1 a2969 1

      • pkgtools/pkgdep: Makes d2972 3 a2974 3

      • pkgtools/pkgdepgraph: Makes graphs from the output of pkgtools/pkgdep (uses graphviz).

      • pkgtools/pkglint: The d2976 1 a2976 1

      • pkgtools/lintpkgsrc: The lintpkgsrc(1) program d2978 1 a2978 1

      • pkgtools/pkgsurvey: Report what d2983 1 a2983 1

      • pkgtools/pkgdiff: Automate d2986 1 a2986 1

      • pkgtools/url2pkg: Aids in d2992 1 a2992 1

      • pkgtools/pkg_comp: Build d2994 1 a2994 1

      • pkgtools/libkver: Spoof d3119 1 a3119 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d3145 1 a3145 1

        When compiling the pkgtools/pkg_install d3151 1 a3151 1

        In the case of the pkgtools/pkg_install package, you d3171 1 a3171 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3175 1 a3175 1 security/sudo) and then put the d3217 1 a3217 1 pkgtools/pkg_install package):

        d3247 1 a3247 1 scripts and to make(1). Some package authors ignore the d3558 1 a3558 1
      • First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

      • d3916 1 a3916 1 interface. I looked up in www/seamonkey d4040 1 a4040 1 this package which have been reported with send-pr(1). d4075 1 a4075 1 lang/tcl and x11/tk for other examples.

        d4122 1 a4122 1 the platform, for example lang/openjdk7. These are kept in the same d4172 1 a4172 1 pkgdiff command from the pkgtools/pkgdiff package to avoid these d4199 1 a4199 1 mkpatches included in pkgtools/pkgdiff takes care of the name d4393 1 a4393 1

        This shell script is invoked twice by pkg_add(1). d4398 2 a4399 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d4419 2 a4420 2 See pkg_delete(1) and pkg_create(1) for more information. d4561 1 a4561 1 the make(1) system as a programming language for a big system d4567 1 a4567 1 like awk(1) programs. To make sure that every shell command runs d4581 1 a4581 1 make(1) for the second time, the file exists and will not be d4599 1 a4599 1

        You might remember that make(1) sometimes removes d4603 1 a4603 1 when one of the commands fails (like false(1) above).

        d4611 1 a4611 1 ``:='', and ``!='', which are described in the make(1) man d4631 1 a4631 1 of. In all other cases, make(1) performs lazy evaluation, that d4638 1 a4638 1 it from sh(1).

        d4746 1 a4746 1 date(1) will be executed. The $HOME shell d4750 1 a4750 1 echo(1) command.

        d4753 1 a4753 1 implementation of the echo(1) command. As long as you can d4844 2 a4845 2 make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write d4861 1 a4861 1 package regress/make-quoting, testcase d4886 1 a4886 1 - see the pkg_create(1) man page for a full list. d5038 1 a5038 1 The files are later concatenated using cat(1), and the order of things is d5173 1 a5173 1 to install the devel/ncurses package.

        d5180 1 a5180 1 x11/lesstif, x11/motif or x11/openmotif. The user can set d5187 2 a5188 2 or adds a dependency on devel/readline, devel/editline. The user can set d5203 1 a5203 1 a dependency on devel/pth as needed.

        d5224 1 a5224 1 file for further editing, Rene Hexel's pkgtools/createbuildlink d5748 1 a5748 1 www/apache24, which places its d5821 1 a5821 1 mail/mutt package:

        d5850 1 a5850 1 print/cups package as an example, it has a d5933 1 a5933 1 following example, taken from shells/zsh:

        d5959 1 a5959 1 installation prefix. Consider the following example, taken from fonts/dbz-ttf:

        d6088 1 a6088 1 make(1) variable that the user can set to override the default d6325 1 a6325 1 pkgtools/xpkgwedge package d6340 1 a6340 1 DIRNAME=<package>, and the make(1) d6365 1 a6365 1 install files according to hier(7), with the exception that d6646 1 a6646 1 patch(1) can be handed in d6648 1 a6648 1

        By default patch(1) is given special args to make d6829 1 a6829 1 install(1) command that have the owner, group and d6944 1 a6944 1

        This target does a pkg_delete(1) in the d6950 1 a6950 1

        Add a "-v" to the pkg_delete(1) command.

        d6959 1 a6959 1 -R to the pkg_delete(1) d7091 1 a7091 1 packages. You will need to install pkgtools/pkg_tarup for this d7103 1 a7103 1

        This target invokes pkg_info(1) for the current d7130 1 a7130 1 viewed using a browser such as www/firefox or www/links. The generated files d7213 1 a7213 1

        If the package installs files via tar(1) or d7240 1 a7240 1 it will be installed via pkg_add(1). If not, d7245 1 a7245 1 pkg_add(1) if:

        d7344 1 a7344 1
        d7363 1 a7363 1

        18.4.1.

        d7373 1 a7373 1

        18.4.2.

        d7384 1 a7384 1

        18.4.3.

        d7494 1 a7494 1 make(1) (for example .if or d7626 1 a7626 1 license, e.g. in graphics/xv:

        d7775 1 a7775 1 pkg_info(1).

        d7814 1 a7814 1 print/lyx package needs to d7863 1 a7863 1 automatically. See the print/ghostscript package for an example. d7877 2 a7878 2

        For example, x11/Xaw3d and x11/Xaw-Xpm d7907 1 a7907 1 operating system, e.g. LKMs or sysutils/lsof. Such binary packages are not d7929 1 a7929 1 not be deleted using pkg_delete(1) unless the d8062 1 a8062 1 sed(1) that specify the actual substitution. Every sed d8081 1 a8081 1 it. graphics/ns-cult3d is an d8141 1 a8141 1 devel/libtool pkg d8213 1 a8213 1 files, i.e. files that are loaded via dlopen(3), NOT d8223 1 a8223 1 the cc(1) or ld(1) line with ${LIBTOOL} d8240 2 a8241 2

        When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8249 1 a8249 1 ldconfig(8).

        d8657 1 a8657 1 generated with the textproc/gtk-doc tools, for use by special d8811 1 a8811 1 devel/gtexinfo package will d9093 1 a9093 1

        The pkgtools/rpm2pkg d9167 1 a9167 1

        Install pkgtools/url2pkg, d9193 1 a9193 1 from the pkgtools/pkgdiff d9232 1 a9232 1

        Run pkglint from pkgtools/pkglint, and fix the problems it d9271 1 a9271 1 document. Next, generate an uuencoded gzipped tar(1) d9274 1 a9274 1 either with the send-pr(1) command, or if you don't have d9279 1 a9279 1 sysutils/gtk-send-pr package is d9430 1 a9430 1 search the pkg_summary(5) database for PREV_PKGPATH d9466 1 a9466 1

        d9511 1 a9511 1

        22.1.

        d9520 1 a9520 1 to the pkgsrc-internal invocations of make(1), while d9527 1 a9527 1

        22.2.

        d9536 1 a9536 1 make(1) program that is used in the pkgsrc d9545 1 a9545 1

        22.3.

        d9563 1 a9563 1

        22.4.

        d9576 1 a9576 1

        22.5.

        d9592 1 a9592 1

        22.6.

        d9605 1 a9605 1 which is documented in the make(1) man page and which you d9616 1 a9616 1

        22.7.

        d9634 1 a9634 1 send-pr(1) appear here. Please do not report your bugs here d9641 1 a9641 1

        22.8.

        d9689 1 a9689 1

        22.9.

        d9701 1 a9701 1 pkgtools/pkg_chk package). It d9767 1 a9767 1
      • meta-pkgs/gnome-base: Provides d9774 1 a9774 1

      • meta-pkgs/gnome: Provides a d9784 2 a9785 2 package "extends" meta-pkgs/gnome-base.

      • meta-pkgs/gnome-devel: d9818 1 a9818 1

        Also use pkgtools/verifypc at d9963 1 a9963 1 GNU Autotools in the meta-pkgs/gnome-devel meta package.

        d10368 1 a10368 1

        You first need to install the pkgtools/pkg_regress package, which d10477 1 a10477 1 lang/perl5, shells/bash.

        d10536 1 a10536 1 improvements. Why you would want this when Berkeley yacc(1) is part d10556 1 a10556 1 pkgtools/pkglint d10936 1 a10936 1 you install the meta-pkgs/pkgsrc-guide-tools package.

      • @ 1.186 log @Remove SVR4_PKGNAME, per discussion on tech-pkg. @ text @a3996 6 the package file to create if the PKGNAME isn't unique on a SVR4 system. The default is PKGNAME, which may be shortened when you use pkgtools/gensolpkg. Only add does not produce an unique package name on a SVR4 system. characters.

        d7346 1 a7346 1
        d7365 1 a7365 1

        18.4.1.

        d7375 1 a7375 1

        18.4.2.

        d7386 1 a7386 1

        18.4.3.

        d9468 1 a9468 1
        d9513 1 a9513 1

        22.1.

        d9529 1 a9529 1

        22.2.

        d9547 1 a9547 1

        22.3.

        d9565 1 a9565 1

        22.4.

        d9578 1 a9578 1

        22.5.

        d9594 1 a9594 1

        22.6.

        d9618 1 a9618 1

        22.7.

        d9643 1 a9643 1

        22.8.

        d9691 1 a9691 1

        22.9.

        @ 1.185 log @regen @ text @a3996 1
      • SVR4_PKGNAME is the name of a4000 1 SVR4_PKGNAME if PKGNAME a4001 1 The length of SVR4_PKGNAME is limited to 5 @ 1.184 log @regen @ text @d33 2 a34 2

        $NetBSD: pkgsrc.xml,v 1.26 2007/09/18 08:17:21 rillig Exp $

        d7355 1 a7355 1
        d7374 1 a7374 1

        18.4.1.

        d7384 1 a7384 1

        18.4.2.

        d7395 1 a7395 1

        18.4.3.

        d9477 1 a9477 1
        d9522 1 a9522 1

        22.1.

        d9538 1 a9538 1

        22.2.

        d9556 1 a9556 1

        22.3.

        d9574 1 a9574 1

        22.4.

        d9587 1 a9587 1

        22.5.

        d9603 1 a9603 1

        22.6.

        d9627 1 a9627 1

        22.7.

        d9652 1 a9652 1

        22.8.

        d9700 1 a9700 1

        22.9.

        @ 1.183 log @regen @ text @d7355 1 a7355 1
        d7374 1 a7374 1

        18.4.1.

        d7384 1 a7384 1

        18.4.2.

        d7395 1 a7395 1

        18.4.3.

        d9477 1 a9477 1
        d9522 1 a9522 1

        22.1.

        d9538 1 a9538 1

        22.2.

        d9556 1 a9556 1

        22.3.

        d9574 1 a9574 1

        22.4.

        d9587 1 a9587 1

        22.5.

        d9603 1 a9603 1

        22.6.

        d9627 1 a9627 1

        22.7.

        d9652 1 a9652 1

        22.8.

        d9700 1 a9700 1

        22.9.

        @ 1.182 log @regen @ text @d7355 1 a7355 1
        d7374 1 a7374 1

        18.4.1.

        d7384 1 a7384 1

        18.4.2.

        d7395 1 a7395 1

        18.4.3.

        d8404 3 a8406 3 that you want adjusted. Every occurrence of */bin/perl will be replaced with the full path to the perl executable.

        d8421 4 d9477 1 a9477 1
        d9522 1 a9522 1

        22.1.

        d9538 1 a9538 1

        22.2.

        d9556 1 a9556 1

        22.3.

        d9574 1 a9574 1

        22.4.

        d9587 1 a9587 1

        22.5.

        d9603 1 a9603 1

        22.6.

        d9627 1 a9627 1

        22.7.

        d9652 1 a9652 1

        22.8.

        d9700 1 a9700 1

        22.9.

        @ 1.181 log @regen @ text @d7355 1 a7355 1
        d7374 1 a7374 1

        18.4.1.

        d7384 1 a7384 1

        18.4.2.

        d7395 1 a7395 1

        18.4.3.

        d9364 1 a9364 2 $ make CTYPE=Added changes-entry $ make commit-changes-entry d9473 1 a9473 1
        d9518 1 a9518 1

        22.1.

        d9534 1 a9534 1

        22.2.

        d9552 1 a9552 1

        22.3.

        d9570 1 a9570 1

        22.4.

        d9583 1 a9583 1

        22.5.

        d9599 1 a9599 1

        22.6.

        d9623 1 a9623 1

        22.7.

        d9648 1 a9648 1

        22.8.

        d9696 1 a9696 1

        22.9.

        @ 1.180 log @regen @ text @d2602 3 a2604 3 # (cd /usr && ftp -o - http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-) # (cd /usr && fetch -o - http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.gz | tar -zxf-) # (cd /usr && cvs -Q -z3 -d anoncvs@@anoncvs.netbsd.org:/cvsroot get -P pkgsrc) d7355 1 a7355 1
        d7374 1 a7374 1

        18.4.1.

        d7384 1 a7384 1

        18.4.2.

        d7395 1 a7395 1

        18.4.3.

        d9474 1 a9474 1
        d9519 1 a9519 1

        22.1.

        d9535 1 a9535 1

        22.2.

        d9553 1 a9553 1

        22.3.

        d9571 1 a9571 1

        22.4.

        d9584 1 a9584 1

        22.5.

        d9600 1 a9600 1

        22.6.

        d9624 1 a9624 1

        22.7.

        d9649 1 a9649 1

        22.8.

        d9697 1 a9697 1

        22.9.

        @ 1.179 log @regen @ text @d136 4 a139 4
        7.1. Think first, build later
        7.2. Requirements of a bulk build
        7.3. Running a pbulk-style bulk build
        7.3.1. Configuration
        d864 4 a867 4
        7.1. Think first, build later
        7.2. Requirements of a bulk build
        7.3. Running a pbulk-style bulk build
        7.3.1. Configuration
        d2542 4 a2545 4
        7.1. Think first, build later
        7.2. Requirements of a bulk build
        7.3. Running a pbulk-style bulk build
        7.3.1. Configuration
        d2550 7 a2556 3

        When you have multiple machines that should run the same packages, it is wasted time if they all build their packages themselves from source. There is a ways of getting a set of binary packages: d2562 18 a2579 26 7.1. Think first, build later

    Since a bulk build takes several days or even weeks to finish, you should think about the setup before you start everything. Pay attention to at least the following points:

    • If you want to upload the binary packages to ftp.NetBSD.org, make sure the setup complies to the requirements for binary packages:

      • To end up on ftp.NetBSD.org, the packages must be built by a NetBSD developer on a trusted machine (that is, where you and only you have root access).

      • Packages on ftp.NetBSD.org should only be created from the stable branches (like 2009Q1), so that users browsing the available collections can see at a glance how old the packages are.

      • The packages must be built as root, since some packages require set-uid binaries at runtime, and creating those packages as unprivileged user doesn't work well at the moment.

    • Make sure that the bulk build cannot break anything in your system. Most bulk builds run as root, so they should be run at least in a chroot environment or something even more restrictive, depending on what the operating system provides. There have been numerous cases where d2582 2 a2583 5 /etc. Furthermore, the bulk builds install and deinstall packages in /usr/pkg (or whatever LOCALBASE is) during their operation, so be sure that you don't need any package during the build.

    d2587 1 a2587 17 7.2. Requirements of a bulk build

    A complete bulk build requires lots of disk space. Some of the disk space can be read-only, some other must be writable. Some can be on remote filesystems (such as NFS) and some should be local. Some can be temporary filesystems, others must survive a sudden reboot.

    • 40 GB for the distfiles (read-write, remote, temporary)

    • 30 GB for the binary packages (read-write, remote, permanent)

    • 1 GB for the pkgsrc tree (read-only, remote, permanent)

    • 5 GB for LOCALBASE (read-write, local, temporary)

    • 10 GB for the log files (read-write, remote, permanent)

    • 5 GB for temporary files (read-write, local, temporary)

    7.3. Running a pbulk-style bulk build

    d2595 1 a2595 1 7.3.1. Configuration
    d2655 16 d7355 1 a7355 1
    d7374 1 a7374 1

    18.4.1.

    d7384 1 a7384 1

    18.4.2.

    d7395 1 a7395 1

    18.4.3.

    d9474 1 a9474 1
    d9519 1 a9519 1

    22.1.

    d9535 1 a9535 1

    22.2.

    d9553 1 a9553 1

    22.3.

    d9571 1 a9571 1

    22.4.

    d9584 1 a9584 1

    22.5.

    d9600 1 a9600 1

    22.6.

    d9624 1 a9624 1

    22.7.

    d9649 1 a9649 1

    22.8.

    d9697 1 a9697 1

    22.9.

    d9717 1 a9717 1 the pkgsrc-wip review @ 1.178 log @regen @ text @d139 1 a139 4
    7.3.1. Preparation
    7.3.2. Configuration
    d867 1 a867 4
    7.3.1. Preparation
    7.3.2. Configuration
    d2545 1 a2545 4
    7.3.1. Preparation
    7.3.2. Configuration
    d2603 1 a2603 1
  • 5 GB for LOCALBASE (read-write, local, temporary for pbulk, permanent for old-bulk)

  • d2618 1 a2618 26 7.3.1. Preparation

    First, you need to create a pkgsrc installation for the pbulk infrastructure. No matter on which platform you are (even on NetBSD), you should bootstrap into its own directory. Let's take the directory /usr/pbulk or $HOME/pbulk for it. This installation will be bootstrapped and all the tools that are required for the bulk build will be installed there.

    $ cd /usr/pkgsrc
    $ ./bootstrap/bootstrap --prefix=/usr/pbulk --varbase=/usr/pbulk/var --workdir=/tmp/pbulk-bootstrap
    $ rm -rf /tmp/pbulk-bootstrap
    

    Now the basic environment for the pbulk infrastructure is installed. The specific tools are still missing. This is a good time to edit the pkgsrc configuration file /usr/pbulk/etc/mk.conf to fit your needs. Typical things you might set now are:

    • PKG_DEVELOPER=yes, to enable many consistency checks,

    • WRKOBJDIR=/tmp/pbulk-outer, to keep /usr/pkgsrc free from any modifications,

    • DISTDIR=/distfiles, to have only one directory in which all distfiles (for the infrastructure and for the actual packages) are downloaded,

    • ACCEPTABLE_LICENSES+=..., to select some licenses additional to the usual Free/Open Source licenses that are acceptable to you,

    • SKIP_LICENSE_CHECK=yes, to bypass the license checks.

    Now you are ready to build the rest of the pbulk infrastructure.

    $ cd pkgtools/pbulk
    $ /usr/pbulk/bin/bmake install
    $ rm -rf /tmp/pbulk-outer
    

    Now the pbulk infrastructure is built and installed. It still needs to be configured, and after some more preparation, we will be able to start the real bulk build.

    7.3.2. Configuration

    d2654 2 d7362 1 a7362 1
    d7381 1 a7381 1

    18.4.1.

    d7391 1 a7391 1

    18.4.2.

    d7402 1 a7402 1

    18.4.3.

    d9481 1 a9481 1
    d9526 1 a9526 1

    22.1.

    d9542 1 a9542 1

    22.2.

    d9560 1 a9560 1

    22.3.

    d9578 1 a9578 1

    22.4.

    d9591 1 a9591 1

    22.5.

    d9607 1 a9607 1

    22.6.

    d9631 1 a9631 1

    22.7.

    d9656 1 a9656 1

    22.8.

    d9704 1 a9704 1

    22.9.

    @ 1.177 log @Also update link. @ text @d2653 53 a2705 2

    TODO; see pkgsrc/doc/HOWTO-pbulk for more information.

    TODO: continue writing

    d7394 1 a7394 1
    d7413 1 a7413 1

    18.4.1.

    d7423 1 a7423 1

    18.4.2.

    d7434 1 a7434 1

    18.4.3.

    d9513 1 a9513 1
    d9558 1 a9558 1

    22.1.

    d9574 1 a9574 1

    22.2.

    d9592 1 a9592 1

    22.3.

    d9610 1 a9610 1

    22.4.

    d9623 1 a9623 1

    22.5.

    d9639 1 a9639 1

    22.6.

    d9663 1 a9663 1

    22.7.

    d9688 1 a9688 1

    22.8.

    d9736 1 a9736 1

    22.9.

    @ 1.176 log @Use www/apache24 as example. @ text @d5747 1 a5747 1 www/apache24, which places its @ 1.175 log @regen @ text @d5747 1 a5747 1 www/apache2, which places its @ 1.174 log @regen @ text @d5960 1 a5960 1 FONTS_DIRS.ttf= ${PREFIX}/lib/X11/fonts/TTF d7343 1 a7343 1
    d7362 1 a7362 1

    18.4.1.

    d7372 1 a7372 1

    18.4.2.

    d7383 1 a7383 1

    18.4.3.

    d9462 1 a9462 1
    d9507 1 a9507 1

    22.1.

    d9523 1 a9523 1

    22.2.

    d9541 1 a9541 1

    22.3.

    d9559 1 a9559 1

    22.4.

    d9572 1 a9572 1

    22.5.

    d9588 1 a9588 1

    22.6.

    d9612 1 a9612 1

    22.7.

    d9637 1 a9637 1

    22.8.

    d9685 1 a9685 1

    22.9.

    @ 1.173 log @regen @ text @d138 1 a138 1
    7.3. Running an old-style bulk build
    d140 2 a141 8
    7.3.1. Configuration
    7.3.2. Other environmental considerations
    7.3.3. Operation
    7.3.4. What it does
    7.3.5. Disk space requirements
    7.3.6. Setting up a sandbox for chrooted builds
    7.3.7. Building a partial set of packages
    7.3.8. Uploading results of a bulk build
    d143 2 a144 7
    7.4. Running a pbulk-style bulk build
    7.4.1. Preparation
    7.4.2. Configuration
    7.5. Creating a multiple CD-ROM packages collection
    7.5.1. Example of cdpack
    d181 1 a181 1
    10.1.2. KDE applications
    d869 1 a869 12
    7.3. Running an old-style bulk build
    7.3.1. Configuration
    7.3.2. Other environmental considerations
    7.3.3. Operation
    7.3.4. What it does
    7.3.5. Disk space requirements
    7.3.6. Setting up a sandbox for chrooted builds
    7.3.7. Building a partial set of packages
    7.3.8. Uploading results of a bulk build
    7.4. Running a pbulk-style bulk build
    d871 2 a872 2
    7.4.1. Preparation
    7.4.2. Configuration
    d874 2 a875 2
    7.5. Creating a multiple CD-ROM packages collection
    7.5.1. Example of cdpack
    d2230 1 a2230 1 package to automatically create binary a2251 8

    DESTDIR support changes the behaviour of various targets slightly. To install a package after building it, use package-install. package and install don't do that any longer. package-install can be used as DEPENDS_TARGET. bin-install will ask for the root password to install the package and fail, package-install will ask again.

    d2271 1 a2271 1 $ make USE_DESTDIR=yes install d2279 1 a2279 1 $ make USE_DESTDIR=yes PACKAGES=$HOME/packages package d2288 1 a2288 1 $ make USE_DESTDIR=yes PACKAGES=$HOME/packages package-install d2317 6 d2325 6 a2330 2
  • ccache: compiler cache (chainable)

  • d2333 2 d2337 1 a2337 1
  • mipspro: d2341 2 d2550 1 a2550 1

    7.3. Running an old-style bulk build
    d2552 2 a2553 8
    7.3.1. Configuration
    7.3.2. Other environmental considerations
    7.3.3. Operation
    7.3.4. What it does
    7.3.5. Disk space requirements
    7.3.6. Setting up a sandbox for chrooted builds
    7.3.7. Building a partial set of packages
    7.3.8. Uploading results of a bulk build
    d2555 2 a2556 7
    7.4. Running a pbulk-style bulk build
    7.4.1. Preparation
    7.4.2. Configuration
    7.5. Creating a multiple CD-ROM packages collection
    7.5.1. Example of cdpack
    d2561 3 a2563 3 source. There are two ways of getting a set of binary packages: The old bulk build system, or the new (as of 2007) parallel bulk build (pbulk) system. This chapter describes how to set them up so that the packages d2619 1 a2619 398 7.3. Running an old-style bulk build
  • Note

    There are two ways of doing a bulk build. The old-style one and the new-style pbulk. The latter is the recommended way.

    7.3.1. Configuration

    7.3.1.1. build.conf

    The build.conf file is the main configuration file for bulk builds. You can configure how your copy of pkgsrc is kept up to date, how the distfiles are downloaded, how the packages are built and how the report is generated. You can find an annotated example file in pkgsrc/mk/bulk/build.conf-example. To use it, copy build.conf-example to build.conf and edit it, following the comments in that file.

    7.3.1.2. mk.conf

    You may want to set variables in mk.conf. Look at pkgsrc/mk/defaults/mk.conf for details of the default settings. You will want to ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, SKIP_LICENSE_CHECK=yes completely bypasses the license check.

    PACKAGES?=      ${_PKGSRCDIR}/packages/${MACHINE_ARCH}
    WRKOBJDIR?=     /usr/tmp/pkgsrc   # build here instead of in pkgsrc
    BSDSRCDIR=      /usr/src
    BSDXSRCDIR=     /usr/xsrc         # for x11/xservers
    OBJHOSTNAME?=   yes               # use work.`hostname`
    FAILOVER_FETCH= yes               # insist on the correct checksum
    PKG_DEVELOPER?= yes
    SKIP_LICENSE_CHECK=    yes
    

    Some options that are especially useful for bulk builds can be found at the top lines of the file mk/bulk/bsd.bulk-pkg.mk. The most useful options of these are briefly described here.

    • If you are on a slow machine, you may want to set USE_BULK_BROKEN_CHECK to no.

    • If you are doing bulk builds from a read-only copy of pkgsrc, you have to set BULKFILESDIR to the directory where all log files are created. Otherwise the log files are created in the pkgsrc directory.

    • Another important variable is BULK_PREREQ, which is a list of packages that should be always available while building other packages.

    Some other options are scattered in the pkgsrc infrastructure:

    • ALLOW_VULNERABLE_PACKAGES should be set to yes. The purpose of the bulk builds is creating binary packages, no matter if they are vulnerable or not. Leaving this variable unset would prevent the bulk build system from even trying to build them, so possible building errors would not show up.

    • CHECK_FILES (pkgsrc/mk/check/check-files.mk) can be set to yes to check that the installed set of files matches the PLIST.

    • CHECK_INTERPRETER (pkgsrc/mk/check/check-interpreter.mk) can be set to yes to check that the installed #!-scripts will find their interpreter.

    • PKGSRC_RUN_TEST can be set to yes to run each package's self-test before installing it. Note that some packages make heavy use of good random numbers, so you need to assure that the machine on which you are doing the bulk builds is not completely idle. Otherwise some test programs will seem to hang, while they are just waiting for new random data to be available.

    7.3.1.3. pre-build.local

    It is possible to configure the bulk build to perform certain site-specific tasks at the end of the pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk, it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    echo "I do not have enough disk space to build this pig." \
    	> misc/openoffice/$BROKENF

    to prevent the system from trying to build a particular package which requires nearly 3 GB of disk space.

    7.3.2. Other environmental considerations

    As /usr/pkg will be completely deleted at the start of bulk builds, make sure your login shell is placed somewhere else. Either drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via pkg_add(1) from /etc/rc.local, so you can login after a reboot (remember that your current process won't die if the package is removed, you just can't start any new instances of the shell any more). Also, if you use NetBSD earlier than 1.5, or you still want to use the pkgsrc version of ssh for some reason, be sure to install ssh before starting it from rc.local:

    (cd /usr/pkgsrc/security/ssh && make bulk-install)
    if [ -f /usr/pkg/etc/rc.d/sshd ]; then
      /usr/pkg/etc/rc.d/sshd
    fi
    

    Not doing so will result in you being not able to log in via ssh after the bulk build is finished or if the machine gets rebooted or crashes. You have been warned! :)

    7.3.3. Operation

    Make sure you don't need any of the packages still installed.

    Warning

    During the bulk build, all packages, their configuration files and some more files from /var, /home and possibly other locations will be removed! So don't run a bulk build with privileges that might harm your system.

    Be sure to remove all other things that might interfere with builds, like some libs installed in /usr/local, etc. then become root and type:

    # cd /usr/pkgsrc
    # sh mk/bulk/build
          

    If for some reason your last build didn't complete (power failure, system panic, ...), you can continue it by running:

    # sh mk/bulk/build restart

    At the end of the bulk build, you will get a summary via mail, and find build logs in the directory specified by FTP in the build.conf file.

    7.3.4. What it does

    The bulk builds consist of three steps:

    1. pre-build

    The script updates your pkgsrc tree via (anon)cvs, then cleans out any broken distfiles, and removes all packages installed.

    2. the bulk build

    This is basically make bulk-package with an optimised order in which packages will be built. Packages that don't require other packages will be built first, and packages with many dependencies will be built later.

    3. post-build

    Generates a report that's placed in the directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    During the build, a list of broken packages will be compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    7.3.5. Disk space requirements

    Currently, roughly the following requirements are valid for NetBSD 6.99/amd64:

    • 40 GB - distfiles (NFS ok)

    • 30 GB - full set of all binaries (NFS ok)

    • 5 GB - temp space for compiling (local disk recommended)

    Note that all pkgs will be de-installed as soon as they are turned into a binary package, and that sources are removed, so there is no excessively huge demand to disk space. Afterwards, if the package is needed again, it will be installed via pkg_add(1) instead of building again, so there are no cycles wasted by recompiling.

    7.3.6. Setting up a sandbox for chrooted builds

    If you don't want all the packages nuked from a machine (rendering it useless for anything but pkg compiling), there is the possibility of doing the package bulk build inside a chroot environment.

    The first step is to set up a chroot sandbox, e.g. /usr/sandbox. This can be done by using null mounts, or manually.

    There is a shell script called mksandbox installed by the pkgtools/mksandbox package, which will set up the sandbox environment using null mounts. It will also create a script called sandbox in the root of the sandbox environment, which will allow the null mounts to be activated using the sandbox mount command and deactivated using the sandbox umount command.

    To set up a sandbox environment by hand, after extracting all the sets from a NetBSD installation or doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following items are present and properly configured:

    1. Kernel

      # cp /netbsd /usr/sandbox
    2. /dev/*

      # cd /usr/sandbox/dev ; sh MAKEDEV all
    3. /etc/resolv.conf (for security/smtpd and mail):

      # cp /etc/resolv.conf /usr/sandbox/etc
    4. Working(!) mail config (hostname, sendmail.cf):

      # cp /etc/mail/sendmail.cf /usr/sandbox/etc/mail
    5. /etc/localtime (for security/smtpd):

      # ln -sf /usr/share/zoneinfo/UTC /usr/sandbox/etc/localtime
    6. /usr/src (system sources, rarely used by packages if at all:

      # ln -s ../disk1/cvs .
      	  # ln -s cvs/src-2.0 src
    7. Create /var/db/pkg (not part of default install):

      # mkdir /usr/sandbox/var/db/pkg
    8. Create /usr/pkg (not part of default install):

      # mkdir /usr/sandbox/usr/pkg
    9. Checkout pkgsrc via cvs into /usr/sandbox/usr/pkgsrc:

      # cd /usr/sandbox/usr
      # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc
      	  

      Do not mount/link this to the copy of your pkgsrc tree you do development in, as this will likely cause problems!

    10. Make /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    11. Edit mk.conf, see Section 7.3.1.2, “mk.conf.

    12. Adjust mk/bulk/build.conf to suit your needs.

    When the chroot sandbox is set up, you can start the build with the following steps:

    # cd /usr/sandbox/usr/pkgsrc
    # sh mk/bulk/do-sandbox-build
          

    This will just jump inside the sandbox and start building. At the end of the build, mail will be sent with the results of the build. Created binary pkgs will be in /usr/sandbox/usr/pkgsrc/packages (wherever that points/mounts to/from).

    7.3.7. Building a partial set of packages

    In addition to building a complete set of all packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting SPECIFIC_PKGS in mk.conf, the variables

    • SITE_SPECIFIC_PKGS

    • HOST_SPECIFIC_PKGS

    • GROUP_SPECIFIC_PKGS

    • USER_SPECIFIC_PKGS

    will define the set of packages which should be built. The bulk build code will also include any packages which are needed as dependencies for the explicitly listed packages.

    One use of this is to do a bulk build with SPECIFIC_PKGS in a chroot sandbox periodically to have a complete set of the binary packages needed for your site available without the overhead of building extra packages that are not needed.

    7.3.8. Uploading results of a bulk build

    This section describes how pkgsrc developers can upload binary pkgs built by bulk builds to ftp.NetBSD.org.

    If you would like to automatically create checksum files for the binary packages you intend to upload, remember to set MKSUMS=yes in your mk/bulk/build.conf.

    If you would like to PGP sign the checksum files (highly recommended!), remember to set SIGN_AS=username@@NetBSD.org in your mk/bulk/build.conf. This will prompt you for your GPG password to sign the files before uploading everything.

    Then, make sure that you have RSYNC_DST set properly in your mk/bulk/build.conf file, i.e. adjust it to something like one of the following:

    RSYNC_DST=ftp.NetBSD.org:/pub/pkgsrc/packages/NetBSD/arch/a.b.c-20xxQy/upload

    Please use appropriate values for "20xxQy" (the branch), "a.b.c" (the OS version) and "arch" here. If your login on ftp.NetBSD.org is different from your local login, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use:

    RSYNC_DST=hubertf@@ftp.NetBSD.org:/pub/pkgsrc/packages/NetBSD/arch/a.b.c-20xxQy/upload

    A separate upload directory is used here to allow "closing" the directory during upload. To do so, run the following command on ftp.NetBSD.org next:

    nbftp% mkdir -p -m 750 /pub/pkgsrc/packages/NetBSD/arch/a.b.c-20xxQy/upload

    Before uploading the binary pkgs, ssh authentication needs to be set up. This example shows how to set up temporary keys for the root account inside the sandbox (assuming that no keys should be present there usually):

    # chroot /usr/sandbox
    chroot-# rm $HOME/.ssh/id-dsa*
    chroot-# ssh-keygen -t rsa
    chroot-# cat $HOME/.ssh/id-rsa.pub
          

    Now take the output of id-rsa.pub and append it to your ~/.ssh/authorized_keys file on ftp.NetBSD.org. You should remove the key after the upload is done!

    Next, test if your ssh connection really works:

    chroot-# ssh ftp.NetBSD.org date 

    Use "-l yourNetBSDlogin" here as appropriate!

    Now after all this works, you can exit the sandbox and start the upload:

    chroot-# exit
    # cd /usr/sandbox/usr/pkgsrc
    # sh mk/bulk/do-sandbox-upload
          

    The upload process may take quite some time. Use ls(1) or du(1) on the FTP server to monitor progress of the upload. The upload script will take care of not uploading restricted packages.

    After the upload has ended, first thing is to revoke ssh access:

    nbftp% vi ~/.ssh/authorized_keys
          Gdd:x! 

    Use whatever is needed to remove the key you've entered before! Last, move the uploaded packages out of the upload directory to have them accessible to everyone:

    nbftp% cd /pub/pkgsrc/packages/NetBSD/arch/a.b.c-20xxQy
    nbftp% mv upload/* .
    nbftp% rmdir upload
    nbftp% chgrp -R netbsd .
    nbftp% find . -type d | xargs chmod 775
          

    7.4. Running a pbulk-style bulk build

    d2627 1 a2627 1 7.4.1. Preparation
    d2652 1 a2652 1 7.4.2. Configuration d2659 1 a2659 1 7.5. Creating a multiple CD-ROM packages collection d2670 1 a2670 1 7.5.1. Example of cdpack d3305 1 a3305 1
    10.1.2. KDE applications
    d3536 1 a3536 1
    10.1.2. KDE applications
    d3581 1 a3581 1 BUILD_DEPENDS+= lua>=5.0:../../lang/lua d3639 2 a3640 2 10.1.2. KDE applications

    KDE applications should always include d3642 1 a3642 1 settings that are typical of KDE packages.

    d3976 1 a3976 1 package, as used by pkgsrc. You only need to provide it if d3978 2 a3979 1 name for the package in pkgsrc. Usually it is the pkgsrc d4449 10 a4458 2

    FIXME: There is no documentation on the alternatives framework.

    d6441 2 a6442 1 defaults to ${DISTNAME}${EXTRACT_SUFX}, d6451 1 a6451 1 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} additional-files.tar.gz d6482 13 a6494 2 In that case the URL is taken as is, fetched and the result stored under the name of the distfile.

    d6510 1 d6514 2 d6517 1 d6521 1 d6530 1 d7227 2 a7228 1 properly. See Section 7.3.1, “Configuration”). d7343 1 a7343 1
    d7362 1 a7362 1

    18.4.1.

    d7372 1 a7372 1

    18.4.2.

    d7383 1 a7383 1

    18.4.3.

    d9258 2 a9259 1 see Section 7.3.8, “Uploading results of a bulk build”.

    d9324 1 a9324 1 the changes, e.g. by using make changes-entry-commit! d9351 3 d9462 1 a9462 1
    d9507 1 a9507 1

    22.1.

    d9523 1 a9523 1

    22.2.

    d9541 1 a9541 1

    22.3.

    d9559 1 a9559 1

    22.4.

    d9572 1 a9572 1

    22.5.

    d9588 1 a9588 1

    22.6.

    d9612 1 a9612 1

    22.7.

    d9637 1 a9637 1

    22.8.

    d9685 1 a9685 1

    22.9.

    a10465 17
    mk/platform/MyOS.pkg.dist

    This file contains a list of directories, together with their permission bits and ownership. These directories will be created automatically with every package that explicitly sets USE_MTREE. This feature will be removed.

    mk/platform/MyOS.x11.dist

    Just copy one of the pre-existing x11.dist files to your MyOS.x11.dist.

    mk/tools/bootstrap.mk

    On some operating systems, the tools that are provided with the base system are not good enough for pkgsrc. For example, there are many versions of sed(1) that have a narrow limit on the line length they can process. Therefore pkgsrc brings its own tools, which can be enabled here.

    @ 1.172 log @regen @ text @d171 4 a174 3
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d176 7 a182 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d913 4 a916 3
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d918 7 a924 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    d3281 4 a3284 3
    9.8. How do I tell make fetch to do passive FTP?
    9.9. How to fetch all distfiles at once
    9.10. What does Don't know how to make d3286 7 a3292 7
    9.11. What does Could not find bsd.own.mk mean?
    9.12. Using 'sudo' with pkgsrc
    9.13. How do I change the location of configuration files?
    9.14. Automated security checks
    9.15. Why do some packages ignore my CFLAGS?
    9.16. A package does not build. What shall I do?
    9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
    a3369 2
  • pkgtools/xpkgwedge: Put X11 packages someplace else (enabled by default).

  • d3377 3 d3400 1 a3400 2
  • pkgtools/rpm2pkg, pkgtools/url2pkg: Aids in a3401 2

  • pkgtools/gensolpkg: Convert pkgsrc to a Solaris package.

  • d3490 16 a3505 1 9.8. How do I tell make fetch to do passive FTP? d3525 1 a3525 1 9.9. How to fetch all distfiles at once d3557 1 a3557 1 9.10. What does Don't know how to make d3571 1 a3571 1 9.11. What does Could not find bsd.own.mk mean? d3583 1 a3583 1 9.12. Using 'sudo' with pkgsrc d3601 1 a3601 1 9.13. How do I change the location of configuration files? d3623 1 a3623 1 9.14. Automated security checks d3656 1 a3656 1 9.15. Why do some packages ignore my CFLAGS? d3678 1 a3678 1 9.16. A package does not build. What shall I do? d3699 1 a3699 1 9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean? d7739 1 a7739 1
    d7758 1 a7758 1

    18.4.1.

    d7768 1 a7768 1

    18.4.2.

    d7779 1 a7779 1

    18.4.3.

    d9279 1 a9279 1 Section 9.13, “How do I change the location of configuration files?” for more information.

  • d9854 1 a9854 1
    d9899 1 a9899 1

    22.1.

    d9915 1 a9915 1

    22.2.

    d9933 1 a9933 1

    22.3.

    d9951 1 a9951 1

    22.4.

    d9964 1 a9964 1

    22.5.

    d9980 1 a9980 1

    22.6.

    d10004 1 a10004 1

    22.7.

    d10029 1 a10029 1

    22.8.

    d10077 1 a10077 1

    22.9.

    @ 1.171 log @regen @ text @d4063 1 a4063 1 PYTHON_VERSIONS_ACCEPTED= 26 d7723 1 a7723 1
    d7742 1 a7742 1

    18.4.1.

    d7752 1 a7752 1

    18.4.2.

    d7763 1 a7763 1

    18.4.3.

    d9838 1 a9838 1
    d9883 1 a9883 1

    22.1.

    d9899 1 a9899 1

    22.2.

    d9917 1 a9917 1

    22.3.

    d9935 1 a9935 1

    22.4.

    d9948 1 a9948 1

    22.5.

    d9964 1 a9964 1

    22.6.

    d9988 1 a9988 1

    22.7.

    d10013 1 a10013 1

    22.8.

    d10061 1 a10061 1

    22.9.

    @ 1.170 log @PYTHON_VERSIONS_ACCEPTED cleanup. @ text @a4056 9

    Most Python packages use either distutils or easy-setup (eggs). If the software uses distutils, set the PYDISTUTILSPKG variable to yes so pkgsrc will make use of this framework. distutils uses a script called setup.py, if the distutils driver is not called setup.py, set the PYSETUP variable to the name of the script.

    d4058 3 a4060 4 If the default Python versions are not supported by the software, set the PYTHON_VERSIONS_ACCEPTED variable to the Python versions the software is known to work with, from the most recent to the older one, e.g. d4063 1 a4063 1 PYTHON_VERSIONS_ACCEPTED= 33 27 26 d4076 3 a4078 7

    If it is an application, also include ../../lang/python/application.mk before extension.mk.

    If the packaged software, either it is an application or a module, is egg-aware, you only need to include ../../lang/python/egg.mk.

    In order to correctly set the path to the Python interpreter, use the d4081 1 a4081 1 For example : d4086 27 d7723 1 a7723 1

    d7742 1 a7742 1

    18.4.1.

    d7752 1 a7752 1

    18.4.2.

    d7763 1 a7763 1

    18.4.3.

    d9838 1 a9838 1
    d9883 1 a9883 1

    22.1.

    d9899 1 a9899 1

    22.2.

    d9917 1 a9917 1

    22.3.

    d9935 1 a9935 1

    22.4.

    d9948 1 a9948 1

    22.5.

    d9964 1 a9964 1

    22.6.

    d9988 1 a9988 1

    22.7.

    d10013 1 a10013 1

    22.8.

    d10061 1 a10061 1

    22.9.

    @ 1.169 log @regen @ text @d4073 1 a4073 1 PYTHON_VERSIONS_ACCEPTED= 31 27 26 @ 1.168 log @regen @ text @d2634 3 a2636 3
  • 10 GB for the distfiles (read-write, remote, temporary)

  • 10 GB for the binary packages (read-write, remote, permanent)

  • 400 MB for the pkgsrc tree (read-only, remote, permanent)

  • d2638 1 a2638 1
  • 5 GB for the log files (read-write, remote, permanent)

  • d2844 1 a2844 1 NetBSD 2.0/i386:

    d2846 2 a2847 2
  • 10 GB - distfiles (NFS ok)

  • 8 GB - full set of all binaries (NFS ok)

  • d7710 1 a7710 1
    d7729 1 a7729 1

    18.4.1.

    d7739 1 a7739 1

    18.4.2.

    d7750 1 a7750 1

    18.4.3.

    d9825 1 a9825 1
    d9870 1 a9870 1

    22.1.

    d9886 1 a9886 1

    22.2.

    d9904 1 a9904 1

    22.3.

    d9922 1 a9922 1

    22.4.

    d9935 1 a9935 1

    22.5.

    d9951 1 a9951 1

    22.6.

    d9975 1 a9975 1

    22.7.

    d10000 1 a10000 1

    22.8.

    d10048 1 a10048 1

    22.9.

    @ 1.167 log @regen @ text @d2903 1 a2903 1 e. g. for sysutils/aperture):

    d3441 1 a3441 1 use a different program than the default ftp(1) by changing the d7710 1 a7710 1
    d7729 1 a7729 1

    18.4.1.

    d7739 1 a7739 1

    18.4.2.

    d7750 1 a7750 1

    18.4.3.

    d9825 1 a9825 1
    d9870 1 a9870 1

    22.1.

    d9886 1 a9886 1

    22.2.

    d9904 1 a9904 1

    22.3.

    d9922 1 a9922 1

    22.4.

    d9935 1 a9935 1

    22.5.

    d9951 1 a9951 1

    22.6.

    d9975 1 a9975 1

    22.7.

    d10000 1 a10000 1

    22.8.

    d10048 1 a10048 1

    22.9.

    @ 1.166 log @regen @ text @d1153 1 a1153 1 # env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc d7710 1 a7710 1
    d7729 1 a7729 1

    18.4.1.

    d7739 1 a7739 1

    18.4.2.

    d7750 1 a7750 1

    18.4.3.

    d9825 1 a9825 1
    d9870 1 a9870 1

    22.1.

    d9886 1 a9886 1

    22.2.

    d9904 1 a9904 1

    22.3.

    d9922 1 a9922 1

    22.4.

    d9935 1 a9935 1

    22.5.

    d9951 1 a9951 1

    22.6.

    d9975 1 a9975 1

    22.7.

    d10000 1 a10000 1

    22.8.

    d10048 1 a10048 1

    22.9.

    @ 1.165 log @Regenerate the guide after fixing PR/26464. @ text @d85 7 a91 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d683 4 d826 7 a832 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d989 2 a990 2

    The tar file for the stable branch 2009Q1 is in the directory pkgsrc-2009Q1 and is also called pkgsrc-2009Q1.tar.gz.

    d993 1 a993 1 $ ftp ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-20xxQy/pkgsrc-20xxQy.tar.gz d996 1 a996 1 pkgsrc-2009Q1.

    d1127 7 a1133 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d1257 9 a1265 1 3.3.4. Interix d1283 1 a1283 1 3.3.4.1. When installing Interix/SFU d1324 1 a1324 1 3.3.4.2. What to do if Interix/SFU is already installed d1347 1 a1347 1 3.3.4.3. Important notes for using pkgsrc d1370 1 a1370 1 3.3.4.4. Limitations of the Interix platform d1427 1 a1427 1 3.3.4.5. Known issues for pkgsrc on Interix d1446 1 a1446 1 3.3.5. IRIX d1491 1 a1491 1 3.3.6. Linux d1534 1 a1534 1 3.3.7. MirBSD d1557 1 a1557 1 3.3.8. OpenBSD d1598 1 a1598 1 3.3.9. Solaris d1619 1 a1619 1 3.3.9.1. If you are using gcc d1630 1 a1630 1 3.3.9.2. If you are using Sun WorkShop d1660 1 a1660 1 3.3.9.3. Building 64-bit binaries with SunPro d1676 1 a1676 1 3.3.9.4. Common problems d4269 1 a4269 1 cc -o xpidl.o -c -DOSTYPE=\"NetBSD3\" -DOSARCH=\"NetBSD\" -I../../../dist/include/xpcom -I../../../dist/include -I/tmp/roland/pkgsrc/www/nvu/work.bacc/mozilla/dist/include/nspr -I/usr/X11R6/include -fPIC -DPIC -I/home/roland/pkg/include -I/usr/include -I/usr/X11R6/include -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -pedantic -O2 -I/home/roland/pkg/include -I/usr/include -Dunix -pthread -pipe -DDEBUG -D_DEBUG -DDEBUG_roland -DTRACING -g -I/home/roland/pkg/include/glib/glib-1.2 -I/home/roland/pkg/lib/glib/include -I/usr/pkg/include/orbit-1.0 -I/home/roland/pkg/include -I/usr/include -I/usr/X11R6/include -include ../../../mozilla-config.h -DMOZILLA_CLIENT -Wp,-MD,.deps/xpidl.pp xpidl.c d7710 1 a7710 1
    d7729 1 a7729 1

    18.4.1.

    d7739 1 a7739 1

    18.4.2.

    d7750 1 a7750 1

    18.4.3.

    d9825 1 a9825 1
    d9870 1 a9870 1

    22.1.

    d9886 1 a9886 1

    22.2.

    d9904 1 a9904 1

    22.3.

    d9922 1 a9922 1

    22.4.

    d9935 1 a9935 1

    22.5.

    d9951 1 a9951 1

    22.6.

    d9975 1 a9975 1

    22.7.

    d10000 1 a10000 1

    22.8.

    d10048 1 a10048 1

    22.9.

    @ 1.164 log @regen @ text @d85 6 a90 7
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    a681 4
    d821 6 a826 7
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    d1121 6 a1126 7
    3.3.4. GNU/kFreeBSD
    3.3.5. Interix
    3.3.6. IRIX
    3.3.7. Linux
    3.3.8. MirBSD
    3.3.9. OpenBSD
    3.3.10. Solaris
    d1250 1 a1250 9 3.3.4. GNU/kFreeBSD

    Debian GNU/kFreeBSD is the only GNU/kFreeBSD distribution now. Debian GNU/kFreeBSD 7.0 or later is tested and supported.

    You should install ncurses (libncurses and libncurses-dev) packages.

    3.3.5. Interix

    d1268 1 a1268 1 3.3.5.1. When installing Interix/SFU
    d1309 1 a1309 1 3.3.5.2. What to do if Interix/SFU is already installed d1332 1 a1332 1 3.3.5.3. Important notes for using pkgsrc d1355 1 a1355 1 3.3.5.4. Limitations of the Interix platform d1412 1 a1412 1 3.3.5.5. Known issues for pkgsrc on Interix d1431 1 a1431 1 3.3.6. IRIX d1476 1 a1476 1 3.3.7. Linux d1519 1 a1519 1 3.3.8. MirBSD d1542 1 a1542 1 3.3.9. OpenBSD d1583 1 a1583 1 3.3.10. Solaris d1604 1 a1604 1 3.3.10.1. If you are using gcc d1615 1 a1615 1 3.3.10.2. If you are using Sun WorkShop d1645 1 a1645 1 3.3.10.3. Building 64-bit binaries with SunPro d1661 1 a1661 1 3.3.10.4. Common problems d7695 1 a7695 1
    d7714 1 a7714 1

    18.4.1.

    d7724 1 a7724 1

    18.4.2.

    d7735 1 a7735 1

    18.4.3.

    d8198 12 d9810 1 a9810 1
    d9855 1 a9855 1

    22.1.

    d9871 1 a9871 1

    22.2.

    d9889 1 a9889 1

    22.3.

    d9907 1 a9907 1

    22.4.

    d9920 1 a9920 1

    22.5.

    d9936 1 a9936 1

    22.6.

    d9960 1 a9960 1

    22.7.

    d9985 1 a9985 1

    22.8.

    d10033 1 a10033 1

    22.9.

    @ 1.163 log @Regenerate text and HTML versions after my recent changes. @ text @d85 7 a91 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d683 4 d826 7 a832 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d1127 7 a1133 6
    3.3.4. Interix
    3.3.5. IRIX
    3.3.6. Linux
    3.3.7. MirBSD
    3.3.8. OpenBSD
    3.3.9. Solaris
    d1257 9 a1265 1 3.3.4. Interix d1283 1 a1283 1 3.3.4.1. When installing Interix/SFU d1324 1 a1324 1 3.3.4.2. What to do if Interix/SFU is already installed d1347 1 a1347 1 3.3.4.3. Important notes for using pkgsrc d1370 1 a1370 1 3.3.4.4. Limitations of the Interix platform d1427 1 a1427 1 3.3.4.5. Known issues for pkgsrc on Interix d1446 1 a1446 1 3.3.5. IRIX d1491 1 a1491 1 3.3.6. Linux d1534 1 a1534 1 3.3.7. MirBSD d1557 1 a1557 1 3.3.8. OpenBSD d1598 1 a1598 1 3.3.9. Solaris d1619 1 a1619 1 3.3.9.1. If you are using gcc d1630 1 a1630 1 3.3.9.2. If you are using Sun WorkShop d1660 1 a1660 1 3.3.9.3. Building 64-bit binaries with SunPro d1676 1 a1676 1 3.3.9.4. Common problems d7710 1 a7710 1
    d7729 1 a7729 1

    18.4.1.

    d7739 1 a7739 1

    18.4.2.

    d7750 1 a7750 1

    18.4.3.

    d9813 1 a9813 1
    d9858 1 a9858 1

    22.1.

    d9874 1 a9874 1

    22.2.

    d9892 1 a9892 1

    22.3.

    d9910 1 a9910 1

    22.4.

    d9923 1 a9923 1

    22.5.

    d9939 1 a9939 1

    22.6.

    d9963 1 a9963 1

    22.7.

    d9988 1 a9988 1

    22.8.

    d10036 1 a10036 1

    22.9.

    @ 1.162 log @regen @ text @d88 3 a90 2
    3.3.7. OpenBSD
    3.3.8. Solaris
    d672 1 a672 1
    d824 3 a826 2
    3.3.7. OpenBSD
    3.3.8. Solaris
    d1124 3 a1126 2
    3.3.7. OpenBSD
    3.3.8. Solaris
    d1519 24 a1542 1 3.3.7. OpenBSD d1583 1 a1583 1 3.3.8. Solaris d1604 1 a1604 1 3.3.8.1. If you are using gcc d1615 1 a1615 1 3.3.8.2. If you are using Sun WorkShop d1645 1 a1645 1 3.3.8.3. Building 64-bit binaries with SunPro d1661 1 a1661 1 3.3.8.4. Common problems d7695 1 a7695 1
    d7714 1 a7714 1

    18.4.1.

    d7724 1 a7724 1

    18.4.2.

    d7735 1 a7735 1

    18.4.3.

    d9798 1 a9798 1
    d9843 1 a9843 1

    22.1.

    d9859 1 a9859 1

    22.2.

    d9877 1 a9877 1

    22.3.

    d9895 1 a9895 1

    22.4.

    d9908 1 a9908 1

    22.5.

    d9924 1 a9924 1

    22.6.

    d9948 1 a9948 1

    22.7.

    d9973 1 a9973 1

    22.8.

    d10021 1 a10021 1

    22.9.

    @ 1.161 log @regen @ text @d5530 1 a5530 1 system-provided GNU readline or ediline (libedit) installation, d7669 1 a7669 1
    d7688 1 a7688 1

    18.4.1.

    d7698 1 a7698 1

    18.4.2.

    d7709 1 a7709 1

    18.4.3.

    d9772 1 a9772 1
    d9817 1 a9817 1

    22.1.

    d9833 1 a9833 1

    22.2.

    d9851 1 a9851 1

    22.3.

    d9869 1 a9869 1

    22.4.

    d9882 1 a9882 1

    22.5.

    d9898 1 a9898 1

    22.6.

    d9922 1 a9922 1

    22.7.

    d9947 1 a9947 1

    22.8.

    d9995 1 a9995 1

    22.9.

    @ 1.160 log @regen @ text @d5529 8 d7669 1 a7669 1
    d7688 1 a7688 1

    18.4.1.

    d7698 1 a7698 1

    18.4.2.

    d7709 1 a7709 1

    18.4.3.

    d7906 1 d9772 1 a9772 1
    d9817 1 a9817 1

    22.1.

    d9833 1 a9833 1

    22.2.

    d9851 1 a9851 1

    22.3.

    d9869 1 a9869 1

    22.4.

    d9882 1 a9882 1

    22.5.

    d9898 1 a9898 1

    22.6.

    d9922 1 a9922 1

    22.7.

    d9947 1 a9947 1

    22.8.

    d9995 1 a9995 1

    22.9.

    @ 1.159 log @regen @ text @d7661 1 a7661 1
    d7680 1 a7680 1

    18.4.1.

    d7690 1 a7690 1

    18.4.2.

    d7701 1 a7701 1

    18.4.3.

    d8095 1 a8095 1 libraries to build or run, and if that package has a d8102 12 d9763 1 a9763 1
    d9808 1 a9808 1

    22.1.

    d9824 1 a9824 1

    22.2.

    d9842 1 a9842 1

    22.3.

    d9860 1 a9860 1

    22.4.

    d9873 1 a9873 1

    22.5.

    d9889 1 a9889 1

    22.6.

    d9913 1 a9913 1

    22.7.

    d9938 1 a9938 1

    22.8.

    d9986 1 a9986 1

    22.9.

    @ 1.158 log @regen @ text @d7661 1 a7661 1
    d7680 1 a7680 1

    18.4.1.

    d7690 1 a7690 1

    18.4.2.

    d7701 1 a7701 1

    18.4.3.

    d8398 2 a8399 2 in your commit message. Then, the correct way to work around this is to d8409 3 a8411 2 can be appended, like ${PKGNAME_NOREV}-YYYYMMDD. Do not forget regenerating the distinfo file d8414 1 a8414 1 Also increase the PKGREVISION if the installed package is different. d9417 2 a9418 2 MIME information, you need to take extra steps to ensure that they are registered into the MIME database:

    d9751 1 a9751 1
    d9796 1 a9796 1

    22.1.

    d9812 1 a9812 1

    22.2.

    d9830 1 a9830 1

    22.3.

    d9848 1 a9848 1

    22.4.

    d9861 1 a9861 1

    22.5.

    d9877 1 a9877 1

    22.6.

    d9901 1 a9901 1

    22.7.

    d9926 1 a9926 1

    22.8.

    d9974 1 a9974 1

    22.9.

    @ 1.157 log @regen @ text @d7661 1 a7661 1
    d7680 1 a7680 1

    18.4.1.

    d7690 1 a7690 1

    18.4.2.

    d7701 1 a7701 1

    18.4.3.

    d7922 1 d7973 1 d9750 1 a9750 1
    d9795 1 a9795 1

    22.1.

    d9811 1 a9811 1

    22.2.

    d9829 1 a9829 1

    22.3.

    d9847 1 a9847 1

    22.4.

    d9860 1 a9860 1

    22.5.

    d9876 1 a9876 1

    22.6.

    d9900 1 a9900 1

    22.7.

    d9925 1 a9925 1

    22.8.

    d9973 1 a9973 1

    22.9.

    @ 1.156 log @regen @ text @d67 1 a67 1
    2.1.1. As tar file
    d802 1 a802 1
    2.1.1. As tar file
    d926 1 a926 1
    2.1.1. As tar file
    d957 4 d963 1 a963 1 2.1.1. As tar file d965 7 a971 5 ftp://ftp.NetBSD.org/pub/pkgsrc/. There are a number of subdirectories for different purposes, which are described in detail in Appendix C, Directory layout of the pkgsrc FTP server.

    The tar file for the current branch is in the directory current and is called pkgsrc.tar.gz. d973 8 d989 2 d7661 1 a7661 1

    d7680 1 a7680 1

    18.4.1.

    d7690 1 a7690 1

    18.4.2.

    d7701 1 a7701 1

    18.4.3.

    d9748 1 a9748 1
    d9793 1 a9793 1

    22.1.

    d9809 1 a9809 1

    22.2.

    d9827 1 a9827 1

    22.3.

    d9845 1 a9845 1

    22.4.

    d9858 1 a9858 1

    22.5.

    d9874 1 a9874 1

    22.6.

    d9898 1 a9898 1

    22.7.

    d9923 1 a9923 1

    22.8.

    d9971 1 a9971 1

    22.9.

    @ 1.155 log @regen @ text @d5672 1 a5672 1 please only add necessary ones. I.e. those whose libraries or d5692 1 a5692 1 X) it won't. lddoutput can thus only be d7645 1 a7645 1
    d7664 1 a7664 1

    18.4.1.

    d7674 1 a7674 1

    18.4.2.

    d7685 1 a7685 1

    18.4.3.

    d9732 1 a9732 1
    d9777 1 a9777 1

    22.1.

    d9793 1 a9793 1

    22.2.

    d9811 1 a9811 1

    22.3.

    d9829 1 a9829 1

    22.4.

    d9842 1 a9842 1

    22.5.

    d9858 1 a9858 1

    22.6.

    d9882 1 a9882 1

    22.7.

    d9907 1 a9907 1

    22.8.

    d9955 1 a9955 1

    22.9.

    @ 1.154 log @regen @ text @a5682 4
  • Run ldd on all installed libraries and look against what other libraries they link. The packages providing these must be buildlinked.

  • d5686 8 d7645 1 a7645 1
    d7664 1 a7664 1

    18.4.1.

    d7674 1 a7674 1

    18.4.2.

    d7685 1 a7685 1

    18.4.3.

    d9732 1 a9732 1
    d9777 1 a9777 1

    22.1.

    d9793 1 a9793 1

    22.2.

    d9811 1 a9811 1

    22.3.

    d9829 1 a9829 1

    22.4.

    d9842 1 a9842 1

    22.5.

    d9858 1 a9858 1

    22.6.

    d9882 1 a9882 1

    22.7.

    d9907 1 a9907 1

    22.8.

    d9955 1 a9955 1

    22.9.

    @ 1.153 log @regen @ text @d7641 1 a7641 1
    d7660 1 a7660 1

    18.4.1.

    d7670 1 a7670 1

    18.4.2.

    d7681 1 a7681 1

    18.4.3.

    d7873 34 a7906 28 public-domain unlicense gnu-fdl-v1.1 gnu-fdl-v1.2 gnu-fdl-v1.3 gnu-gpl-v1 gnu-gpl-v2 gnu-lgpl-v2 gnu-lgpl-v2.1 gnu-gpl-v3 gnu-lgpl-v3 original-bsd modified-bsd 2-clause-bsd x11 mit miros apache-1.1 apache-2.0 artistic artistic-2.0 cddl-1.0 cpl-1.0 open-font-license mpl-1.0 mpl-1.1 mpl-2.0 php png-license postgresql-license zlib zpl python-software-foundation ipafont ibm-public-license-1.0 isc boost-license mplusfont cc-by-sa-v3.0 lppl-1.3c lucent epl-v1.0 info-zip d7944 13 a7956 4

    When adding a package with a new license, the license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory.

    d9728 1 a9728 1
    d9773 1 a9773 1

    22.1.

    d9789 1 a9789 1

    22.2.

    d9807 1 a9807 1

    22.3.

    d9825 1 a9825 1

    22.4.

    d9838 1 a9838 1

    22.5.

    d9854 1 a9854 1

    22.6.

    d9878 1 a9878 1

    22.7.

    d9903 1 a9903 1

    22.8.

    d9951 1 a9951 1

    22.9.

    @ 1.152 log @regen @ text @d5670 23 d7641 1 a7641 1
    d7660 1 a7660 1

    18.4.1.

    d7670 1 a7670 1

    18.4.2.

    d7681 1 a7681 1

    18.4.3.

    d9009 3 a9011 1 paths to packlist files, e.g.:

    d9013 1 a9013 1 PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist d9015 16 a9030 7

    The variables PERL5_SITELIB, PERL5_SITEARCH, and PERL5_ARCHLIB represent the three locations in which perl5 modules may be installed, and may be used by perl5 packages that don't have a packlist. These three variables are also substituted for in the PLIST.

    d9713 1 a9713 1
    d9758 1 a9758 1

    22.1.

    d9774 1 a9774 1

    22.2.

    d9792 1 a9792 1

    22.3.

    d9810 1 a9810 1

    22.4.

    d9823 1 a9823 1

    22.5.

    d9839 1 a9839 1

    22.6.

    d9863 1 a9863 1

    22.7.

    d9888 1 a9888 1

    22.8.

    d9936 1 a9936 1

    22.9.

    @ 1.151 log @regen @ text @d7618 1 a7618 1
    d7637 1 a7637 1

    18.4.1.

    d7647 1 a7647 1

    18.4.2.

    d7658 1 a7658 1

    18.4.3.

    d9679 1 a9679 1
    d9724 1 a9724 1

    22.1.

    d9740 1 a9740 1

    22.2.

    d9758 1 a9758 1

    22.3.

    d9776 1 a9776 1

    22.4.

    d9789 1 a9789 1

    22.5.

    d9805 1 a9805 1

    22.6.

    d9829 1 a9829 1

    22.7.

    d9854 1 a9854 1

    22.8.

    d9902 1 a9902 1

    22.9.

    d10756 1 a10756 1 INFO_FILES= bison.info @ 1.150 log @regen @ text @d82 8 a89 7
    3.3.1. Darwin (Mac OS X)
    3.3.2. FreeBSD
    3.3.3. Interix
    3.3.4. IRIX
    3.3.5. Linux
    3.3.6. OpenBSD
    3.3.7. Solaris
    d669 12 d817 8 a824 7
    3.3.1. Darwin (Mac OS X)
    3.3.2. FreeBSD
    3.3.3. Interix
    3.3.4. IRIX
    3.3.5. Linux
    3.3.6. OpenBSD
    3.3.7. Solaris
    d1100 8 a1107 7
    3.3.1. Darwin (Mac OS X)
    3.3.2. FreeBSD
    3.3.3. Interix
    3.3.4. IRIX
    3.3.5. Linux
    3.3.6. OpenBSD
    3.3.7. Solaris
    d1169 20 a1188 1 3.3.1. Darwin (Mac OS X) d1202 1 a1202 1 3.3.2. FreeBSD d1231 1 a1231 1 3.3.3. Interix d1249 1 a1249 1 3.3.3.1. When installing Interix/SFU d1290 1 a1290 1 3.3.3.2. What to do if Interix/SFU is already installed d1313 1 a1313 1 3.3.3.3. Important notes for using pkgsrc d1336 1 a1336 1 3.3.3.4. Limitations of the Interix platform d1393 1 a1393 1 3.3.3.5. Known issues for pkgsrc on Interix d1412 1 a1412 1 3.3.4. IRIX d1457 1 a1457 1 3.3.5. Linux d1500 1 a1500 1 3.3.6. OpenBSD d1541 1 a1541 1 3.3.7. Solaris d1562 1 a1562 1 3.3.7.1. If you are using gcc d1573 1 a1573 1 3.3.7.2. If you are using Sun WorkShop d1603 1 a1603 1 3.3.7.3. Building 64-bit binaries with SunPro d1619 1 a1619 1 3.3.7.4. Common problems d5508 1 a5508 1 x11/lesstif or x11/openmotif. The user can set d5510 2 a5511 1 lesstif, or openmotif to choose d7618 1 a7618 1
    d7637 1 a7637 1

    18.4.1.

    d7647 1 a7647 1

    18.4.2.

    d7658 1 a7658 1

    18.4.3.

    d8699 2 d8702 1 a8702 1 DragonFly __DragonFly__ d8706 2 d9679 1 a9679 1
    d9724 1 a9724 1

    22.1.

    d9740 1 a9740 1

    22.2.

    d9758 1 a9758 1

    22.3.

    d9776 1 a9776 1

    22.4.

    d9789 1 a9789 1

    22.5.

    d9805 1 a9805 1

    22.6.

    d9829 1 a9829 1

    22.7.

    d9854 1 a9854 1

    22.8.

    d9902 1 a9902 1

    22.9.

    d11165 2 a11166 5 documentation) installed. These are meta-pkgs/netbsd-doc for creating the ASCII and HTML versions, and meta-pkgs/netbsd-doc-print for the PostScript and PDF versions. You will need both packages installed, to make sure documentation is consistent across all formats.

    @ 1.149 log @regen @ text @d1106 1 a1106 1 to privileged one all programs are install under one particular user d7583 1 a7583 1
    d7602 1 a7602 1

    18.4.1.

    d7612 1 a7612 1

    18.4.2.

    d7623 1 a7623 1

    18.4.3.

    d9640 1 a9640 1
    d9685 1 a9685 1

    22.1.

    d9701 1 a9701 1

    22.2.

    d9719 1 a9719 1

    22.3.

    d9737 1 a9737 1

    22.4.

    d9750 1 a9750 1

    22.5.

    d9766 1 a9766 1

    22.6.

    d9790 1 a9790 1

    22.7.

    d9815 1 a9815 1

    22.8.

    d9863 1 a9863 1

    22.9.

    @ 1.148 log @regen @ text @d1104 6 d1116 4 a1119 5

    See Chapter 2, Where to get pkgsrc and how to keep it up-to-date for other ways to get pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, d1121 11 a1131 3 directory where pkgsrc will do its internal bookkeeping. However, these can also be set using command-line arguments.

    d1139 8 d7583 1 a7583 1
    d7602 1 a7602 1

    18.4.1.

    d7612 1 a7612 1

    18.4.2.

    d7623 1 a7623 1

    18.4.3.

    d9640 1 a9640 1
    d9685 1 a9685 1

    22.1.

    d9701 1 a9701 1

    22.2.

    d9719 1 a9719 1

    22.3.

    d9737 1 a9737 1

    22.4.

    d9750 1 a9750 1

    22.5.

    d9766 1 a9766 1

    22.6.

    d9790 1 a9790 1

    22.7.

    d9815 1 a9815 1

    22.8.

    d9863 1 a9863 1

    22.9.

    @ 1.147 log @regen @ text @d10 1 a10 1
    d35 1 a35 1
    d491 3 a493 3

    Chapter 1. What is pkgsrc?

    d508 1 a508 1
    d520 1 a520 1
      d534 1 a534 1
      d540 1 a540 1
        d570 1 a570 1
          d584 1 a584 1
          d674 1 a674 1
          d691 1 a691 1
          d697 1 a697 1
          d741 1 a741 1
          d744 1 a744 1
          d769 1 a769 1
          d779 1 a779 1
          d904 1 a904 1
          d930 1 a930 1
          d943 1 a943 1
          d969 1 a969 1
          d1011 1 a1011 1
          d1018 1 a1018 1
          d1021 1 a1021 1
          d1042 1 a1042 1
          d1051 1 a1051 1
          d1062 1 a1062 1
          d1076 1 a1076 1
          d1096 1 a1096 1
          d1101 1 a1101 1
          d1119 1 a1119 1
          d1127 1 a1127 1
          d1131 1 a1131 1
          d1134 4 a1137 3

          Darwin 5.x and up are supported. Before you start, you will need to download and install the Mac OS X Developer Tools from Apple's Developer Connection. See d1139 5 a1143 3 for details. Also, make sure you install X11 (an optional package included with the Developer Tools) if you intend to build packages that use the X11 Window System.

          d1145 1 a1145 1
          d1174 1 a1174 1
          d1192 1 a1192 1
          d1197 1 a1197 1
            d1233 1 a1233 1
            d1238 1 a1238 1
              d1256 1 a1256 1
              d1279 1 a1279 1
              d1285 1 a1285 1
                d1336 1 a1336 1
                d1355 1 a1355 1
                d1400 1 a1400 1
                d1415 1 a1415 1
                d1443 1 a1443 1
                d1484 1 a1484 1
                d1492 1 a1492 1
                  d1505 1 a1505 1
                  d1516 1 a1516 1
                  d1521 1 a1521 1
                    d1539 1 a1539 1
                    d1546 1 a1546 1
                    d1555 1 a1555 1
                    d1562 1 a1562 1
                    d1579 1 a1579 1
                    d1610 1 a1610 1
                    d1617 1 a1617 1
                      d1625 1 a1625 1
                      d1645 1 a1645 1
                      d1685 1 a1685 1
                      d1711 1 a1711 1
                      d1717 1 a1717 1
                      d1768 1 a1768 1
                      d1785 1 a1785 1
                      d1791 1 a1791 1
                      d1807 1 a1807 1
                      d1825 1 a1825 1
                      d1835 1 a1835 1
                      d1885 1 a1885 1
                      d1894 1 a1894 1
                      d2016 1 a2016 1
                      d2052 1 a2052 1
                      d2060 1 a2060 1
                        d2104 1 a2104 1
                        d2109 1 a2109 1
                          d2142 1 a2142 1
                          d2149 1 a2149 1
                            d2218 1 a2218 1
                            d2221 1 a2221 1
                            d2226 1 a2226 1
                            d2232 1 a2232 1
                              d2264 1 a2264 1
                              d2280 1 a2280 1
                              d2298 1 a2298 1
                              d2303 1 a2303 1
                                d2308 1 a2308 1
                                  d2330 1 a2330 1
                                  d2401 1 a2401 1
                                  d2411 1 a2411 1
                                  d2437 1 a2437 1
                                  d2443 1 a2443 1
                                  d2478 1 a2478 1
                                  d2484 1 a2484 1
                                    d2489 1 a2489 1
                                      d2514 1 a2514 1
                                      d2521 1 a2521 1
                                        d2530 1 a2530 1
                                        d2533 1 a2533 1
                                        d2539 1 a2539 1
                                        d2542 1 a2542 1
                                        d2556 1 a2556 1
                                        d2580 1 a2580 1
                                          d2595 1 a2595 1
                                            d2623 1 a2623 1
                                            d2641 1 a2641 1
                                            d2666 1 a2666 1
                                            d2671 1 a2671 1
                                            d2696 1 a2696 1
                                            d2700 1 a2700 1
                                            d2728 1 a2728 1
                                            d2733 1 a2733 1
                                              d2745 1 a2745 1
                                              d2769 1 a2769 1
                                            • d2773 1 a2773 1
                                            • d2777 1 a2777 1
                                            • d2781 1 a2781 1
                                            • d2785 1 a2785 1
                                            • d2789 1 a2789 1
                                            • d2795 1 a2795 1
                                            • d2799 1 a2799 1
                                            • d2803 1 a2803 1
                                            • d2813 1 a2813 1
                                            • Make d2817 2 a2818 2

                                            • Edit mk.conf, see Section 7.3.1.2, “mk.conf.

                                            • Adjust mk/bulk/build.conf to suit your needs.

                                            • d2832 1 a2832 1
                                              d2840 1 a2840 1
                                                d2855 1 a2855 1
                                                d2927 1 a2927 1
                                                d2931 1 a2931 1
                                                  d2935 1 a2935 1
                                                  d2945 1 a2945 1
                                                    d2960 1 a2960 1
                                                    d2967 1 a2967 1
                                                    d2978 1 a2978 1
                                                    d3013 1 a3013 1
                                                    d3050 1 a3050 1
                                                      d3067 1 a3067 1
                                                      d3073 1 a3073 1
                                                      d3133 1 a3133 1
                                                      d3137 1 a3137 1
                                                      d3154 1 a3154 1
                                                      d3183 1 a3183 1
                                                      d3187 1 a3187 1
                                                        d3214 1 a3214 1
                                                        d3221 1 a3221 1
                                                        d3230 1 a3230 1
                                                        • pkgtools/x11-links: d3233 1 a3233 1

                                                            d3246 1 a3246 1
                                                              d3263 1 a3263 1
                                                                d3280 1 a3280 1
                                                                  d3292 1 a3292 1
                                                                    d3299 1 a3299 1
                                                                    d3320 1 a3320 1
                                                                    d3344 1 a3344 1
                                                                    d3354 1 a3354 1
                                                                    d3360 1 a3360 1
                                                                    d3375 1 a3375 1
                                                                    d3381 1 a3381 1
                                                                      d3395 1 a3395 1
                                                                      d3427 1 a3427 1
                                                                      d3441 1 a3441 1
                                                                      d3453 1 a3453 1
                                                                      d3471 1 a3471 1
                                                                      d3493 1 a3493 1
                                                                      d3526 1 a3526 1
                                                                      d3548 1 a3548 1
                                                                      d3552 1 a3552 1
                                                                    • Make sure that your copy of pkgsrc is consistent. A d3558 1 a3558 1

                                                                    • Make sure that you don't have any CVS conflicts. d3562 1 a3562 1

                                                                    • Make sure that you don't have old copies of the packages d3565 1 a3565 1

                                                                    • If the problem still exists, write a mail to the d3569 1 a3569 1

                                                                      d3584 1 a3584 1
                                                                      d3587 1 a3587 1
                                                                      d3823 1 a3823 1
                                                                      d3844 2 a3845 2
                                                                    • First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

                                                                    • Then, choose one of the top-level directories as the d3850 1 a3850 1

                                                                    • Run the program url2pkg, which will ask d3857 1 a3857 1

                                                                    • d3888 1 a3888 1
                                                                    • Run pkglint to see what things still need d3894 1 a3894 1

                                                                    • In many cases the package is not yet ready to build. You can d3897 1 a3897 1

                                                                    • Run bmake clean to clean the working d3902 1 a3902 1

                                                                    • Now, run bmake to build the package. For d3904 1 a3904 1

                                                                    • When the package builds fine, the next step is to install d3907 1 a3907 1

                                                                    • Up to now, the file PLIST, which d3913 1 a3913 1

                                                                    • Run pkglint again to see if the generated d3915 1 a3915 1

                                                                    • When you ran bmake install, the package d3921 1 a3921 1

                                                                    • Run bmake package to create a binary d3924 1 a3924 1

                                                                      d3927 1 a3927 1
                                                                      d3933 1 a3933 1
                                                                      d3940 1 a3940 1
                                                                      d3990 1 a3990 1
                                                                      d3993 1 a3993 1
                                                                      d3996 1 a3996 1
                                                                      d4059 1 a4059 1
                                                                      d4195 1 a4195 1
                                                                      d4209 1 a4209 1
                                                                      d4239 1 a4239 1
                                                                      d4254 1 a4254 1
                                                                        d4303 1 a4303 1
                                                                          d4317 1 a4317 1
                                                                            d4342 1 a4342 1
                                                                            • d4374 1 a4374 1
                                                                                d4385 1 a4385 1
                                                                                d4408 1 a4408 1
                                                                                d4419 1 a4419 1
                                                                                d4434 1 a4434 1
                                                                                  d4447 1 a4447 1
                                                                                  d4483 1 a4483 1
                                                                                  d4510 1 a4510 1
                                                                                  d4624 1 a4624 1
                                                                                  d4647 1 a4647 1
                                                                                  d4650 1 a4650 1
                                                                                  d4665 1 a4665 1
                                                                                  d4668 1 a4668 1
                                                                                  d4671 1 a4671 1
                                                                                  d4735 1 a4735 1
                                                                                  d4738 1 a4738 1
                                                                                  d4764 1 a4764 1
                                                                                  d4767 1 a4767 1
                                                                                  d4779 1 a4779 1
                                                                                  d4793 1 a4793 1
                                                                                  d4813 1 a4813 1
                                                                                  d4846 1 a4846 1
                                                                                  d4849 1 a4849 1
                                                                                  • d4879 1 a4879 1
                                                                                    d4917 1 a4917 1
                                                                                      d4937 1 a4937 1
                                                                                      d4940 1 a4940 1
                                                                                        d4954 1 a4954 1
                                                                                        d4960 1 a4960 1
                                                                                        d4981 1 a4981 1
                                                                                        d4996 1 a4996 1
                                                                                        d5040 1 a5040 1
                                                                                        d5045 1 a5045 1
                                                                                          d5123 1 a5123 1
                                                                                          d5139 1 a5139 1
                                                                                          d5163 1 a5163 1
                                                                                          d5172 1 a5172 1
                                                                                          d5180 1 a5180 1
                                                                                          d5209 1 a5209 1
                                                                                          d5215 1 a5215 1
                                                                                          d5229 1 a5229 1
                                                                                          d5244 1 a5244 1
                                                                                            d5291 1 a5291 1
                                                                                            d5304 1 a5304 1
                                                                                            d5315 1 a5315 1
                                                                                            d5321 1 a5321 1
                                                                                              d5329 1 a5329 1
                                                                                              d5352 1 a5352 1
                                                                                              d5397 1 a5397 1
                                                                                              d5439 1 a5439 1
                                                                                                d5476 1 a5476 1
                                                                                                d5496 1 a5496 1
                                                                                                d5527 1 a5527 1
                                                                                                  d5569 1 a5569 1
                                                                                                    d5615 1 a5615 1
                                                                                                    d5661 1 a5661 1
                                                                                                    d5686 1 a5686 1
                                                                                                    d5773 1 a5773 1
                                                                                                    d5806 1 a5806 1
                                                                                                    d5835 1 a5835 1
                                                                                                      d5854 1 a5854 1
                                                                                                      d5887 1 a5887 1
                                                                                                      d5892 1 a5892 1
                                                                                                        d5914 1 a5914 1
                                                                                                        d5926 1 a5926 1
                                                                                                          d5954 1 a5954 1
                                                                                                          d5966 1 a5966 1
                                                                                                          d5972 1 a5972 1
                                                                                                            d6020 1 a6020 1
                                                                                                            d6037 1 a6037 1
                                                                                                            d6066 1 a6066 1
                                                                                                            d6074 1 a6074 1
                                                                                                            d6112 1 a6112 1
                                                                                                            d6122 1 a6122 1
                                                                                                            d6159 1 a6159 1
                                                                                                            d6174 1 a6174 1
                                                                                                            d6182 1 a6182 1
                                                                                                            d6200 1 a6200 1
                                                                                                            d6209 1 a6209 1
                                                                                                            d6255 1 a6255 1
                                                                                                            d6263 1 a6263 1
                                                                                                            d6402 1 a6402 1
                                                                                                            d6426 1 a6426 1
                                                                                                            d6450 1 a6450 1
                                                                                                            d6479 1 a6479 1
                                                                                                            d6506 1 a6506 1
                                                                                                            d6522 1 a6522 1
                                                                                                              d6607 1 a6607 1
                                                                                                              d6618 1 a6618 1
                                                                                                              d6652 1 a6652 1
                                                                                                              d6662 1 a6662 1
                                                                                                              d6669 1 a6669 1
                                                                                                              d6768 1 a6768 1
                                                                                                              d6802 1 a6802 1
                                                                                                              d6813 1 a6813 1
                                                                                                              d6828 1 a6828 1
                                                                                                              d6853 1 a6853 1
                                                                                                              d6874 1 a6874 1
                                                                                                              d6880 1 a6880 1
                                                                                                              d6886 1 a6886 1
                                                                                                              d6918 1 a6918 1
                                                                                                              d6978 1 a6978 1
                                                                                                              d7013 1 a7013 1
                                                                                                              d7018 1 a7018 1
                                                                                                              d7052 1 a7052 1
                                                                                                              d7089 1 a7089 1
                                                                                                              d7103 1 a7103 1
                                                                                                              d7118 1 a7118 1
                                                                                                              d7126 1 a7126 1
                                                                                                              d7129 1 a7129 1
                                                                                                              d7167 1 a7167 1
                                                                                                              d7222 1 a7222 1
                                                                                                              d7293 1 a7293 1
                                                                                                              d7464 1 a7464 1
                                                                                                                d7477 1 a7477 1
                                                                                                                d7508 1 a7508 1
                                                                                                                d7521 1 a7521 1
                                                                                                                d7541 1 a7541 1
                                                                                                                d7558 1 a7558 1
                                                                                                                d7561 2 a7562 2
                                                                                                                d7573 2 a7574 1
    Bitrig Jun 2014 README.Bitrig
    Bitrig Jun 2014 README.Bitrig
    Bitrig Jun 2014 README.Bitrig
    README.BitrigREADME.SolarisREADME.LinuxREADME.MacOSXREADME.FreeBSDREADME.OpenBSD README.AIXREADME.InterixREADME.OSF1README.HPUXREADME.HaikuREADME.Minix3README.CygwinREADME.GNUkFreeBSD
    GNU/kFreeBSD Jul 2013
    Aug 2011
    d7577 1 d7579 1 a7579 1 d7581 1 a7581 1

    18.4.1.

    d7589 1 a7589 1 d7591 1 a7591 1

    18.4.2.

    d7600 1 a7600 1 d7602 1 a7602 1

    18.4.3.

    d7618 1 a7618 1
    d7692 1 a7692 1
    d7695 1 a7695 1
    d7704 1 a7704 1
    d7725 1 a7725 1
    d7732 1 a7732 1
    d7737 1 a7737 1
      d7761 1 a7761 1
      d7880 1 a7880 1
      d7903 1 a7903 1
        d7948 1 a7948 1
        d8043 1 a8043 1
        d8069 1 a8069 1
        d8097 1 a8097 1
        d8108 1 a8108 1
        d8125 1 a8125 1
        d8161 1 a8161 1
          d8174 1 a8174 1
            d8186 1 a8186 1
            d8246 1 a8246 1
            d8249 1 a8249 1
            d8270 1 a8270 1
            d8303 1 a8303 1
            d8306 1 a8306 1
            d8431 1 a8431 1
            d8454 1 a8454 1
              d8472 1 a8472 1
              d8513 1 a8513 1
              d8516 1 a8516 1
              d8531 1 a8531 1
              d8538 1 a8538 1
                d8560 1 a8560 1
                d8577 1 a8577 1
                d8588 1 a8588 1
                d8598 1 a8598 1
                d8607 1 a8607 1
                d8627 1 a8627 1
                d8653 1 a8653 1
                d8662 1 a8662 1
                d8673 1 a8673 1
                d8688 1 a8688 1
                d8751 1 a8751 1
                d8777 1 a8777 1
                d8791 1 a8791 1
                d8794 1 a8794 1
                d8810 1 a8810 1
                d8839 1 a8839 1
                d8858 1 a8858 1
                d8867 1 a8867 1
                  d8887 1 a8887 1
                  d8902 1 a8902 1
                  d8909 1 a8909 1
                  d8938 1 a8938 1
                  d8985 1 a8985 1
                  d8996 1 a8996 1
                  d9022 1 a9022 1
                  d9056 1 a9056 1
                  d9077 1 a9077 1
                  d9094 1 a9094 1
                  d9112 1 a9112 1
                    d9122 1 a9122 1
                    d9150 1 a9150 1
                    d9180 1 a9180 1
                    d9191 1 a9191 1
                    d9202 1 a9202 1
                    d9208 1 a9208 1
                    d9241 1 a9241 1
                    d9258 1 a9258 1
                    d9280 1 a9280 1
                    d9299 1 a9299 1
                    d9313 1 a9313 1
                    d9320 1 a9320 1
                      d9395 1 a9395 1
                      d9410 1 a9410 1
                      d9421 1 a9421 1
                      d9451 1 a9451 1
                      d9490 1 a9490 1
                      d9520 1 a9520 1
                      d9526 1 a9526 1
                        d9544 1 a9544 1
                        d9562 1 a9562 1
                        d9610 1 a9610 1
                        d9618 2 a9619 2
                        d9656 2 a9657 1
    d9660 1 d9662 1 a9662 1 d9664 1 a9664 1

    22.1.

    d9678 1 a9678 1 d9680 1 a9680 1

    22.2.

    d9696 1 a9696 1 d9698 1 a9698 1

    22.3.

    d9714 1 a9714 1 d9716 1 a9716 1

    22.4.

    d9727 1 a9727 1 d9729 1 a9729 1

    22.5.

    d9743 1 a9743 1 d9745 1 a9745 1

    22.6.

    d9767 1 a9767 1 d9769 1 a9769 1

    22.7.

    d9776 1 a9776 1 d9794 1 a9794 1

    22.8.

    d9804 1 a9804 1
      d9840 1 a9840 1
    d9842 1 a9842 1

    22.9.

    d9852 1 a9852 1
      d9871 1 a9871 1
      d9906 1 a9906 1
      d9915 1 a9915 1
      d9919 1 a9919 1
        d9949 1 a9949 1
        d9956 1 a9956 1
          d10049 1 a10049 1
          d10054 1 a10054 1
          d10138 1 a10138 1
          d10166 1 a10166 1
          d10169 1 a10169 1
          d10217 1 a10217 1
          d10247 1 a10247 1
          d10271 1 a10271 1
          d10278 1 a10278 1
          d10302 1 a10302 1
          d10305 1 a10305 1
          d10311 1 a10311 1
            d10347 1 a10347 1
            d10355 1 a10355 1
            d10364 1 a10364 1
            d10371 1 a10371 1
            d10405 1 a10405 1
            d10417 1 a10417 1
            d10432 1 a10432 1
            d10457 1 a10457 1
            d10490 1 a10490 1
            d10513 1 a10513 1
            d10518 1 a10518 1
            d10526 1 a10526 1
            d10535 1 a10535 1
            d10542 1 a10542 1
            d10562 1 a10562 1
            d10565 1 a10565 1
            d10585 1 a10585 1
            d10599 1 a10599 1
            d10605 1 a10605 1
            d10649 1 a10649 1
            d10656 3 a10658 3

            Appendix A. A simple example package: bison

            d10677 1 a10677 1
            d10680 1 a10680 1
            d10701 1 a10701 1
            d10710 1 a10710 1
            d10721 1 a10721 1
            d10738 1 a10738 1
            d10847 3 a10849 3

            Appendix B. Build logs

            d10857 1 a10857 1
            d10949 1 a10949 1
            d10962 3 a10964 3

            Appendix C. Directory layout of the pkgsrc FTP server

            d10985 1 a10985 1
            d10995 1 a10995 1
            d11001 1 a11001 1
            d11007 1 a11007 1
              d11045 1 a11045 1
              d11052 1 a11052 1
              d11070 3 a11072 3

              Appendix D. Editing guidelines for the pkgsrc guide

              d11082 1 a11082 1
              d11088 1 a11088 1
                d11098 1 a11098 1
                d11103 1 a11103 1
              • Make sure you have the packages needed to d11110 1 a11110 1

              • Run cd doc/guide to get to the d11113 1 a11113 1

              • Edit the XML file(s) in d11115 1 a11115 1

              • Run bmake to check the pkgsrc d11120 1 a11120 1

              • (cd files && cvs d11122 1 a11122 1

              • Run bmake clean && bmake to d11125 1 a11125 1

              • d11129 1 a11129 1
                @ 1.146 log @regen @ text @d352 2 a353 1
                19.4.4. Other programming languages
                d3762 2 a3763 1
                19.4.4. Other programming languages
                d4633 1 a4633 1 added to pkgsrc are quick hacks), filling bug reports in the d7559 1 a7559 1
                d7576 1 a7576 1

                18.4.1.

                d7586 1 a7586 1

                18.4.2.

                d7597 1 a7597 1

                18.4.3.

                d7650 2 a7651 1
                19.4.4. Other programming languages
                d8572 1 a8572 1
                d8574 12 a8585 1 19.4.4. Other programming languages
              • d9614 1 a9614 1
                d9657 1 a9657 1

                22.1.

                d9673 1 a9673 1

                22.2.

                d9691 1 a9691 1

                22.3.

                d9709 1 a9709 1

                22.4.

                d9722 1 a9722 1

                22.5.

                d9738 1 a9738 1

                22.6.

                d9762 1 a9762 1

                22.7.

                d9787 1 a9787 1

                22.8.

                d9835 1 a9835 1

                22.9.

                @ 1.145 log @regen @ text @d972 1 a972 1
                $ cd /usr && cvs -q -z3 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-20xxQy -P pkgsrc
                d980 1
                a980 1
                
                $ cd /usr && cvs -q -z3 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc
                d984 1
                a984 1
                
                $ cd /usr && env CVS_RSH=ssh cvs -q -z3 -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc
                d1001 1
                a1001 1
                cvs -q -z3
                d3956 1
                a3956 1
                PYTHON_VERSIONS_ACCEPTED=       25 24
                d7557 1
                a7557 1
                
                d7574 1 a7574 1

                18.4.1.

                d7584 1 a7584 1

                18.4.2.

                d7595 1 a7595 1

                18.4.3.

                d9600 1 a9600 1
                d9643 1 a9643 1

                22.1.

                d9659 1 a9659 1

                22.2.

                d9677 1 a9677 1

                22.3.

                d9695 1 a9695 1

                22.4.

                d9708 1 a9708 1

                22.5.

                d9724 1 a9724 1

                22.6.

                d9748 1 a9748 1

                22.7.

                d9773 1 a9773 1

                22.8.

                d9821 1 a9821 1

                22.9.

                @ 1.144 log @regen @ text @d8850 4 a8853 2 set to destdir or user-destdir. If bsd.prefs.mk is included in the Makefile, d9600 1 a9600 1
                d9643 1 a9643 1

                22.1.

                d9659 1 a9659 1

                22.2.

                d9677 1 a9677 1

                22.3.

                d9695 1 a9695 1

                22.4.

                d9708 1 a9708 1

                22.5.

                d9724 1 a9724 1

                22.6.

                d9748 1 a9748 1

                22.7.

                d9773 1 a9773 1

                22.8.

                d9821 1 a9821 1

                22.9.

                @ 1.143 log @regen @ text @d6947 6 d7557 1 a7557 1
                d7574 1 a7574 1

                18.4.1.

                d7584 1 a7584 1

                18.4.2.

                d7595 1 a7595 1

                18.4.3.

                d9598 1 a9598 1
                d9641 1 a9641 1

                22.1.

                d9657 1 a9657 1

                22.2.

                d9675 1 a9675 1

                22.3.

                d9693 1 a9693 1

                22.4.

                d9706 1 a9706 1

                22.5.

                d9722 1 a9722 1

                22.6.

                d9746 1 a9746 1

                22.7.

                d9771 1 a9771 1

                22.8.

                d9819 1 a9819 1

                22.9.

                @ 1.142 log @regen @ text @d2752 1 a2752 1 pkgsrc/mk/bulk/mksandbox which will set d7551 1 a7551 1
                d7568 1 a7568 1

                18.4.1.

                d7578 1 a7578 1

                18.4.2.

                d7589 1 a7589 1

                18.4.3.

                d9592 1 a9592 1
                d9635 1 a9635 1

                22.1.

                d9651 1 a9651 1

                22.2.

                d9669 1 a9669 1

                22.3.

                d9687 1 a9687 1

                22.4.

                d9700 1 a9700 1

                22.5.

                d9716 1 a9716 1

                22.6.

                d9740 1 a9740 1

                22.7.

                d9765 1 a9765 1

                22.8.

                d9813 1 a9813 1

                22.9.

                @ 1.141 log @regen @ text @d1483 2 a1484 2

                Solaris 2.6 through 9 are supported on both x86 and sparc. You will need a working C compiler. Both gcc 2.95.3 and d1508 1 a1508 1 lang/gcc or install a binary gcc d3977 2 a3978 1 that must be corrected. For example : d3981 1 a3981 1 REPLACE_PYTHON= ${WRKSRC}/*.py d5456 3 a5458 1 either Postgres 8.0, 8.1, or 8.2, whichever is found installed. See d7551 1 a7551 1

                d7568 1 a7568 1

                18.4.1.

                d7578 1 a7578 1

                18.4.2.

                d7589 1 a7589 1

                18.4.3.

                d8821 2 a8822 1 group and/or owner (traditionally the "games" user/group). The d8825 3 a8827 6 behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

                Note that per default, setgid installation of games is disabled; setting SETGIDGAME=YES will set all the other variables accordingly.

                d9592 1 a9592 1
                d9635 1 a9635 1

                22.1.

                d9651 1 a9651 1

                22.2.

                d9669 1 a9669 1

                22.3.

                d9687 1 a9687 1

                22.4.

                d9700 1 a9700 1

                22.5.

                d9716 1 a9716 1

                22.6.

                d9740 1 a9740 1

                22.7.

                d9765 1 a9765 1

                22.8.

                d9813 1 a9813 1

                22.9.

                @ 1.140 log @regen @ text @d7548 1 a7548 1
                d7565 1 a7565 1

                18.4.1.

                d7575 1 a7575 1

                18.4.2.

                d7586 1 a7586 1

                18.4.3.

                d9479 1 d9482 1 a9482 1 $ cvs commit Makefile pkgname d9591 1 a9591 1
                d9634 1 a9634 1

                22.1.

                d9650 1 a9650 1

                22.2.

                d9668 1 a9668 1

                22.3.

                d9686 1 a9686 1

                22.4.

                d9699 1 a9699 1

                22.5.

                d9715 1 a9715 1

                22.6.

                d9739 1 a9739 1

                22.7.

                d9764 1 a9764 1

                22.8.

                d9812 1 a9812 1

                22.9.

                @ 1.139 log @regen @ text @d393 1 a393 1
                21.4. Committing: Importing a package into CVS
                d3802 1 a3802 1
                21.4. Committing: Importing a package into CVS
                d7548 1 a7548 1
                d7565 1 a7565 1

                18.4.1.

                d7575 1 a7575 1

                18.4.2.

                d7586 1 a7586 1

                18.4.3.

                d9376 1 a9376 1
                21.4. Committing: Importing a package into CVS
                d9462 1 a9462 1
                d9464 1 a9464 1 21.4. Committing: Importing a package into CVS
              d9466 17 a9482 15 access to the pkgsrc repository. Please remember that cvs imports files relative to the current working directory, and that the pathname that you give the cvs import command is so that it knows where to place the files in the repository. Newly created packages should be imported with a vendor tag of TNF and a release tag of pkgsrc-base, e.g:

              $ cd .../pkgsrc/category/pkgname
              $ cvs import pkgsrc/category/pkgname TNF pkgsrc-base
              

              Remember to move the directory from which you imported out of the way, or cvs will complain the next time you cvs update your source tree. Also don't forget to add the new package to the category's Makefile.

              d9486 4 a9489 3

              For new packages, cvs import is preferred to cvs add because the former gets everything with a single command, and provides a consistent tag.

              d9590 1 a9590 1
              d9633 1 a9633 1

              22.1.

              d9649 1 a9649 1

              22.2.

              d9667 1 a9667 1

              22.3.

              d9685 1 a9685 1

              22.4.

              d9698 1 a9698 1

              22.5.

              d9714 1 a9714 1

              22.6.

              d9738 1 a9738 1

              22.7.

              d9763 1 a9763 1

              22.8.

              d9811 1 a9811 1

              22.9.

              @ 1.138 log @regen @ text @d7548 1 a7548 1
              d7565 1 a7565 1

              18.4.1.

              d7575 1 a7575 1

              18.4.2.

              d7586 1 a7586 1

              18.4.3.

              d7777 28 a7804 8 public-domain gnu-gpl-v2 gnu-lgpl-v2 gnu-gpl-v3 gnu-lgpl-v3 original-bsd modified-bsd x11 apache-2.0 cddl-1.0 open-font-license d7925 5 d9587 1 a9587 1
              d9630 1 a9630 1

              22.1.

              d9646 1 a9646 1

              22.2.

              d9664 1 a9664 1

              22.3.

              d9682 1 a9682 1

              22.4.

              d9695 1 a9695 1

              22.5.

              d9711 1 a9711 1

              22.6.

              d9735 1 a9735 1

              22.7.

              d9760 1 a9760 1

              22.8.

              d9808 1 a9808 1

              22.9.

              @ 1.137 log @regen @ text @d1409 1 a1409 2 env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ ac_cv___attribute__=yes ./bootstrap d1413 7 a1419 10

              icc 8.1 needs the `-i-static' argument instead of -static-libcxa.

              icc supports __attribute__, but the GNU configure test uses a nested function, which icc does not support. #undef'ing __attribute__ has the unfortunate side-effect of breaking many of the Linux header files, which cannot be compiled properly without __attribute__. The test must be overridden so that __attribute__ is assumed supported by the compiler.

              After bootstrapping, you should set PKGSRC_COMPILER in mk.conf:

              d1421 1 a1421 9 PKGSRC_COMPILER= icc

              The default installation directory for icc is /opt/intel_cc_80, which is also the pkgsrc default. If you have installed it into a different directory, set ICCBASE in mk.conf:

              ICCBASE=                /opt/icc
              d1423 5
              d7548 1
              a7548 1
              
              d7565 1 a7565 1

              18.4.1.

              d7575 1 a7575 1

              18.4.2.

              d7586 1 a7586 1

              18.4.3.

              d8071 2 a8072 2 and after committing that file, use make upload in the same directory to update the file on ftp.NetBSD.org.

              d8074 4 a8077 3 PKGREVISION should be increased (this is of course not necessary if the problem is fixed by using a newer release of the software).

              d9562 1 a9562 1
              d9605 1 a9605 1

              22.1.

              d9621 1 a9621 1

              22.2.

              d9639 1 a9639 1

              22.3.

              d9657 1 a9657 1

              22.4.

              d9670 1 a9670 1

              22.5.

              d9686 1 a9686 1

              22.6.

              d9710 1 a9710 1

              22.7.

              d9735 1 a9735 1

              22.8.

              d9783 1 a9783 1

              22.9.

              @ 1.136 log @regen @ text @d1409 2 a1410 1 env ICCBASE=/opt/intel/cc/10.1.008 ./bootstrap --compiler=icc d1414 18 a1431 7

              For icc 8.0 you must add `LDFLAGS=-static-libcxa' to this.

              For icc 8.1 you must add `LDFLAGS=-i-static' instead.

              For icc 10.1 neither of these appears to be necessary.

              Use a value for ICCBASE that corresponds to the directory where icc is installed. After bootstrapping, set ICCBASE in mk.conf:

              d1433 1 a1433 1 ICCBASE= /opt/intel/cc/10.1.008 a1434 5

              The pkgsrc default for ICCBASE is /opt/intel_cc_80. This is the default install directory for icc 8.0. If you are using a more recent version, be sure to set the correct path explicitly.

              d5928 1 a5928 1 SUPPORT_FILES are pairs of master and target files. d5940 1 a5940 1 SUPPORT_FILES_PERMS contain tuples describing master d5945 1 a5945 1 SUPPORT_FILES_PERMS+= ${PREFIX}/share/somefile ${VARBASE}/somefile ${ROOT_USER} ${ROOT_GROUP} 0700 d7555 1 a7555 1
              d7572 1 a7572 1

              18.4.1.

              d7582 1 a7582 1

              18.4.2.

              d7593 1 a7593 1

              18.4.3.

              d9568 1 a9568 1
              d9611 1 a9611 1

              22.1.

              d9627 1 a9627 1

              22.2.

              d9645 1 a9645 1

              22.3.

              d9663 1 a9663 1

              22.4.

              d9676 1 a9676 1

              22.5.

              d9692 1 a9692 1

              22.6.

              d9716 1 a9716 1

              22.7.

              d9741 1 a9741 1

              22.8.

              d9789 1 a9789 1

              22.9.

              @ 1.135 log @regen @ text @d982 1 a982 1

              Refer to list of available CVS mirrors to choose faster one.

              d1144 1 a1144 1

              FreeBSD 4.7 and 5.0 have been tested and are supported, d1359 1 a1359 1 version of IRIX providing support for if_indextoname(3), if_nametoindex(3), d1409 1 a1409 2 env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ ac_cv___attribute__=yes ./bootstrap d1413 7 a1419 10

              icc 8.1 needs the `-i-static' argument instead of -static-libcxa.

              icc supports __attribute__, but the GNU configure test uses a nested function, which icc does not support. #undef'ing __attribute__ has the unfortunate side-effect of breaking many of the Linux header files, which cannot be compiled properly without __attribute__. The test must be overridden so that __attribute__ is assumed supported by the compiler.

              After bootstrapping, you should set PKGSRC_COMPILER in mk.conf:

              d1421 1 a1421 9 PKGSRC_COMPILER= icc

              The default installation directory for icc is /opt/intel_cc_80, which is also the pkgsrc default. If you have installed it into a different directory, set ICCBASE in mk.conf:

              ICCBASE=                /opt/icc
              d1423 5
              d1432 1
              a1432 1
                    ld(1) command run when linking a C++ shared library and
              d1442 2
              a1443 1
              

              OpenBSD 3.0 and 3.2 are tested and supported.

              d1744 1 a1744 1 to the root users crontab(5) entry. For example the entry d1791 1 a1791 1 expressed in the pkg_add(1) manual page about the d1967 1 a1967 1

              If you invoke the make(1) command with d1975 1 a1975 1

              If you want to know the value of a certain make(1) d1978 1 a1978 1 target. e.g. to show the expansion of the make(1) d1991 1 a1991 1 install a binary package - if available - via pkg_add(1), d1995 1 a1995 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d2034 1 a2034 1 make(1) from the base system, it is in the directory d2196 1 a2196 1 privileges using su(1) d2412 1 a2412 1 another system with pkg_add(1). This saves having to build d2628 1 a2628 1 (as a sh(1) script) at the end of the usual pre-build d2645 1 a2645 1 pkg_add(1) from /etc/rc.local, so d2738 1 a2738 1 be installed via pkg_add(1) instead of building again, so d2903 2 a2904 2

              The upload process may take quite some time. Use ls(1) or du(1) on the FTP server to monitor progress of the d3325 1 a3325 1 use a different program than the default ftp(1) by changing the d3401 1 a3401 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d3453 1 a3453 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3529 1 a3529 1 scripts and to make(1). Some package authors ignore the d4315 1 a4315 1 this package which have been reported with send-pr(1). d4668 1 a4668 1

              This shell script is invoked twice by pkg_add(1). d4673 2 a4674 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”. d4694 2 a4695 2 See pkg_delete(1) and pkg_create(1) for more information. d4828 1 a4828 1 the make(1) system as a programming language for a big system d4834 1 a4834 1 like awk(1) programs. To make sure that every shell command runs d4848 1 a4848 1 make(1) for the second time, the file exists and will not be d4866 1 a4866 1

              You might remember that make(1) sometimes removes d4870 1 a4870 1 when one of the commands fails (like false(1) above).

              d4878 1 a4878 1 ``:='', and ``!='', which are described in the make(1) man d4898 1 a4898 1 of. In all other cases, make(1) performs lazy evaluation, that d4905 1 a4905 1 it from sh(1).

              d5013 1 a5013 1 date(1) will be executed. The $HOME shell d5017 1 a5017 1 echo(1) command.

              d5020 1 a5020 1 implementation of the echo(1) command. As long as you can d5111 2 a5112 2 make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write d5153 1 a5153 1 - see the pkg_create(1) man page for a full list. d5305 1 a5305 1 The files are later concatenated using cat(1), and the order of things is d6317 1 a6317 1 make(1) variable that the user can set to override the default d6569 1 a6569 1 DIRNAME=<package>, and the make(1) d6594 1 a6594 1 install files according to hier(7), with the exception that d6857 1 a6857 1 patch(1) can be handed in d6859 1 a6859 1

              By default patch(1) is given special args to make d7034 1 a7034 1 install(1) command that have the owner, group and d7149 1 a7149 1

              This target does a pkg_delete(1) in the d7155 1 a7155 1

              Add a "-v" to the pkg_delete(1) command.

              d7164 1 a7164 1 -R to the pkg_delete(1) d7308 1 a7308 1

              This target invokes pkg_info(1) for the current d7418 1 a7418 1

              If the package installs files via tar(1) or d7444 1 a7444 1 it will be installed via pkg_add(1). If not, d7449 1 a7449 1 pkg_add(1) if:

              d7548 1 a7548 1
              d7565 1 a7565 1

              18.4.1.

              d7575 1 a7575 1

              18.4.2.

              d7586 1 a7586 1

              18.4.3.

              d7695 1 a7695 1 make(1) (for example .if or d7933 1 a7933 1 pkg_info(1).

              d8063 1 a8063 1 not be deleted using pkg_delete(1) unless the d8195 1 a8195 1 sed(1) that specify the actual substitution. Every sed d8345 1 a8345 1 files, i.e. files that are loaded via dlopen(3), NOT d8355 1 a8355 1 the cc(1) or ld(1) line with ${LIBTOOL} d8372 2 a8373 2

              When installing libraries, preface the install(1) or cp(1) command with ${LIBTOOL} d8381 1 a8381 1 ldconfig(8).

              d9174 1 a9174 1 include ../../print/texlive-tetex/map.mk and d9184 1 a9184 1 they will be removed only by the teTeX-bin package.

              d9372 1 a9372 1 document. Next, generate an uuencoded gzipped tar(1) d9375 1 a9375 1 either with the send-pr(1) command, or if you don't have d9525 1 a9525 1 search the pkg_summary(5) database for PREV_PKGPATH d9561 1 a9561 1
              d9604 1 a9604 1

              22.1.

              d9613 1 a9613 1 to the pkgsrc-internal invocations of make(1), while d9620 1 a9620 1

              22.2.

              d9629 1 a9629 1 make(1) program that is used in the pkgsrc d9638 1 a9638 1

              22.3.

              d9656 1 a9656 1

              22.4.

              d9669 1 a9669 1

              22.5.

              d9685 1 a9685 1

              22.6.

              d9698 1 a9698 1 which is documented in the make(1) man page and which you d9709 1 a9709 1

              22.7.

              d9727 1 a9727 1 send-pr(1) appear here. Please do not report your bugs here d9734 1 a9734 1

              22.8.

              d9782 1 a9782 1

              22.9.

              d10576 1 a10576 1 For example, there are many versions of sed(1) that have a d10631 1 a10631 1 MAINTAINER= thorpej@@NetBSD.org d10646 1 a10646 1 improvements. Why you would want this when Berkeley yacc(1) is part @ 1.134 log @regen @ text @d4673 2 a4674 1

              This shell script is invoked twice by pkg_add(1). d4680 15 a4694 1 pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”.

              d4701 3 a4703 1 and pkg_create(1) for more information.

              d7516 2 a7517 4

              In the following examples, the :pkgsrc means to use the pkgsrc version and not the native version for a build dependency. And the :run means that it is used for a run-time dependencies also (and becomes a DEPENDS). a7521 1 USE_TOOLS+= mktemp:pkgsrc d7554 1 a7554 1

              d7571 1 a7571 1

              18.4.1.

              d7581 1 a7581 1

              18.4.2.

              d7592 1 a7592 1

              18.4.3.

              d9567 1 a9567 1
              d9610 1 a9610 1

              22.1.

              d9626 1 a9626 1

              22.2.

              d9644 1 a9644 1

              22.3.

              d9662 1 a9662 1

              22.4.

              d9675 1 a9675 1

              22.5.

              d9691 1 a9691 1

              22.6.

              d9715 1 a9715 1

              22.7.

              d9740 1 a9740 1

              22.8.

              d9788 1 a9788 1

              22.9.

              @ 1.133 log @regen @ text @d5609 1 a5609 1 BUILDLINK_API_DEPENDS.pkgreplaceable>varname> d7540 1 a7540 1
              d7557 1 a7557 1

              18.4.1.

              d7567 1 a7567 1

              18.4.2.

              d7578 1 a7578 1

              18.4.3.

              d9553 1 a9553 1
              d9596 1 a9596 1

              22.1.

              d9612 1 a9612 1

              22.2.

              d9630 1 a9630 1

              22.3.

              d9648 1 a9648 1

              22.4.

              d9661 1 a9661 1

              22.5.

              d9677 1 a9677 1

              22.6.

              d9701 1 a9701 1

              22.7.

              d9726 1 a9726 1

              22.8.

              d9774 1 a9774 1

              22.9.

              @ 1.132 log @regen @ text @d247 5 a251 1
              14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
              d3662 5 a3666 1
              14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
              d5345 5 a5349 1
              14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
              d5515 1 a5515 1 package that had an API change. d5596 1 a5596 1
              d5598 1 a5598 6 14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files

            The situation that requires increasing the dependency listed in BUILDLINK_API_DEPENDS.pkg after a package update is when the API or interface to the header files change.

            In this case, d5600 25 a5624 16 should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_API_DEPENDS.pkg adjusted, too. This is needed so pkgsrc will require the correct package dependency and not settle for an older one when building the source.

            BUILDLINK_ABI_DEPENDS.pkg should be increased when the binary interface or sonames (major number of the library version) of any installed shared libraries change. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

            d5626 2 a5627 2 more information about dependencies on other packages, including the BUILDLINK_ABI_DEPENDS and d5637 2 a5638 2 BUILDLINK_ABI_DEPENDS.pkg when it is identical to d6735 1 a6735 1 for packages that are maintained in ftp://ftp.NetBSD.org/pkgsrc/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local d7540 1 a7540 1
            d7557 1 a7557 1

            18.4.1.

            d7567 1 a7567 1

            18.4.2.

            d7578 1 a7578 1

            18.4.3.

            d9553 1 a9553 1
            d9596 1 a9596 1

            22.1.

            d9612 1 a9612 1

            22.2.

            d9630 1 a9630 1

            22.3.

            d9648 1 a9648 1

            22.4.

            d9661 1 a9661 1

            22.5.

            d9677 1 a9677 1

            22.6.

            d9701 1 a9701 1

            22.7.

            d9726 1 a9726 1

            22.8.

            d9774 1 a9774 1

            22.9.

            @ 1.131 log @regen @ text @d6 1 a6 1 d551 1 a551 1 development when porting to new a platform. This portability also d727 1 a727 1 an archive on ftp.NetBSD.org.

            d1040 6 a1045 5

            To update pkgsrc via CVS, make sure the environment variable CVS_RSH is set as above. Then, change to the pkgsrc directory and run cvs:

            $ cd /usr/pkgsrc
            $ cvs update -dP
            d2086 1 a2086 1 ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}/ d2870 3 a2872 3
            RSYNC_DST=ftp.NetBSD.org:/pub/NetBSD/packages/packages-20xxQy/NetBSD-a.b.c/arch/upload 

            Please use appropriate values for "packages-20xxQy", "NetBSD-a.b.c" and "arch" here. If your login on ftp.NetBSD.org d2876 1 a2876 1

            RSYNC_DST=hubertf@@ftp.NetBSD.org:/pub/NetBSD/packages/packages-20xxQy/NetBSD-a.b.c/arch/upload
            d2880 1 a2880 5
            nbftp% mkdir -p -m 750 /pub/NetBSD/packages/packages-20xxQy/NetBSD-a.b.c/arch/upload

            Please note that /pub/NetBSD/packages is only appropriate for packages for the NetBSD operating system. Binary packages for other operating systems should go into /pub/pkgsrc.

            d2888 2 a2889 2 chroot-# ssh-keygen -t dsa chroot-# cat $HOME/.ssh/id-dsa.pub d2891 1 a2891 1

            Now take the output of id-dsa.pub and d2893 1 a2893 1 file on ftp.NetBSD.org. You can remove the key after the d2917 1 a2917 1 nbftp% cd /pub/NetBSD/packages/packages-20xxQy/NetBSD-a.b.c/arch d2920 2 a2921 1 nbftp% chmod 755 . d3398 1 a3398 1 fetch. There is an archive of distfiles on ftp.NetBSD.org, d3506 3 a3508 3 is kept up to date by the NetBSD security officer and the NetBSD packages team, and is distributed from the NetBSD ftp server:

            ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

            d3858 3 a3860 1 buildlink3.mk file does not exist, add a d6719 2 a6720 2 for packages that are maintained in ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local package source distributions that are maintained in ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/LOCAL_PORTS/.

            d7524 1 a7524 1
            d7541 1 a7541 1

            18.4.1.

            d7551 1 a7551 1

            18.4.2.

            d7562 1 a7562 1

            18.4.3.

            d7920 2 a7921 4

            If your package needs to use another package to build itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

            d7923 1 a7923 1 BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf d7926 5 d7932 7 a7938 4

            If your package needs a library with which to link and again there is no buildlink3.mk file available, this is specified using the DEPENDS definition. For example:

            d7940 1 a7940 1 DEPENDS+= xpm-3.4j:../../graphics/xpm d7942 7 a7948 9

            You can also use wildcards in package dependencies:

            DEPENDS+=       xpm-[0-9]*:../../graphics/xpm
            	

            Note that such wildcard dependencies are retained when creating binary packages. The dependency is checked when installing the binary package and any package which matches the pattern will be used. Wildcard dependencies should be used with care.

            d7957 1 a7957 1 DEPENDS+= tiff>=3.5.4:../../graphics/tiff d7959 6 a7964 33

            This means that the package will build against version 3.5.4 of the tiff library or newer. Such a dependency may be warranted if, for example, the API of the library has changed with version 3.5.4 and a package would not compile against an earlier version of tiff.

            Please note that such dependencies should only be updated if a package requires a newer pre-requisite, but not to denote recommendations such as ABI changes that do not prevent a package from building correctly. Such recommendations can be expressed using ABI_DEPENDS:

            ABI_DEPENDS+=   tiff>=3.6.1:../../graphics/tiff
            	

            In addition to the above DEPENDS line, this denotes that while a package will build against tiff>=3.5.4, at least version 3.6.1 is recommended. ABI_DEPENDS entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed).

            To ignore these ABI dependency recommendations and just use the required DEPENDS, set USE_ABI_DEPENDS=NO. This may make it easier and faster to update packages built using pkgsrc, since older compatible dependencies can continue to be used. This is useful for people who watch their rebuilds very carefully; it is not very good as a general-purpose hammer. If you use it, you need to be mindful of possible ABI changes, including those from the underlying OS.

            Packages that are built with recommendations ignored may not be uploaded to ftp.NetBSD.org by developers and should not be used across different systems that may have different versions of binary packages installed.

            a7968 14
          • If your package needs some executable to be able to run correctly and if there's no buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

            DEPENDS+=        teTeX-[0-9]*:../../print/teTeX
            	

            The comment about wildcard dependencies from previous paragraph applies here, too.

          • d9537 1 a9537 1
            d9580 1 a9580 1

            22.1.

            d9596 1 a9596 1

            22.2.

            d9614 1 a9614 1

            22.3.

            d9632 1 a9632 1

            22.4.

            d9645 1 a9645 1

            22.5.

            d9661 1 a9661 1

            22.6.

            d9685 1 a9685 1

            22.7.

            d9710 1 a9710 1

            22.8.

            d9758 1 a9758 1

            22.9.

            @ 1.130 log @regen @ text @d2142 1 a2142 1

            A growing number of packages support installation into a d2148 9 a2156 9 installation and packaging is still run as root.

          • Full DESTDIR support can run the complete build, installation and packaging as normal user. Root privileges are only needed to add packages.

          To use the DESTDIR support, set USE_DESTDIR=yes to get the full support for packages that support it and with fallback to basic support.

          d7524 1 a7524 1
          d7541 1 a7541 1

          18.4.1.

          d7551 1 a7551 1

          18.4.2.

          d7562 1 a7562 1

          18.4.3.

          d9574 1 a9574 1
          d9617 1 a9617 1

          22.1.

          d9633 1 a9633 1

          22.2.

          d9651 1 a9651 1

          22.3.

          d9669 1 a9669 1

          22.4.

          d9682 1 a9682 1

          22.5.

          d9698 1 a9698 1

          22.6.

          d9722 1 a9722 1

          22.7.

          d9747 1 a9747 1

          22.8.

          d9795 1 a9795 1

          22.9.

          @ 1.129 log @regen (Interix 6.1) @ text @d4410 1 a4410 2 order, so patch-aa is applied before patch-ab, etc.

          a4426 3
        • Patches that replace the == operator for test(1) with = in shell scripts are so common that they don't need a comment at all.

        • d4433 1 a4433 1

          In all other cases, the patch should be commented so that any d4455 3 a4457 3 patchdiff. Copy the patches you want to use or update from the work/.newpatches directory to patches/.

          d4468 6 a4473 1 patch-[a-z][a-z].

          d4634 2 d7524 1 a7524 1
          d7541 1 a7541 1

          18.4.1.

          d7551 1 a7551 1

          18.4.2.

          d7562 1 a7562 1

          18.4.3.

          d8522 6 d9574 1 a9574 1
          d9617 1 a9617 1

          22.1.

          d9633 1 a9633 1

          22.2.

          d9651 1 a9651 1

          22.3.

          d9669 1 a9669 1

          22.4.

          d9682 1 a9682 1

          22.5.

          d9698 1 a9698 1

          22.6.

          d9722 1 a9722 1

          22.7.

          d9747 1 a9747 1

          22.8.

          d9795 1 a9795 1

          22.9.

          @ 1.128 log @regen @ text @d1176 7 a1182 6

          Services for Unix Applications (aka SUA) is an integrated component of Windows Server 2003 R2 (5.2), Windows Vista and Windows Server 2008 (6.0), Windows 7 and Windows Server 2008 R2 (6.1). As of this writing, SUA's Interix 6.0 (32bit) subsystem has been tested. 6.0 (64bit) and 6.1 (both 32bit and 64bit) may work. Interix 5.x subsystem has not yet been tested with pkgsrc.

          d7521 1 a7521 1
          d7538 1 a7538 1

          18.4.1.

          d7548 1 a7548 1

          18.4.2.

          d7559 1 a7559 1

          18.4.3.

          d9565 1 a9565 1
          d9608 1 a9608 1

          22.1.

          d9624 1 a9624 1

          22.2.

          d9642 1 a9642 1

          22.3.

          d9660 1 a9660 1

          22.4.

          d9673 1 a9673 1

          22.5.

          d9689 1 a9689 1

          22.6.

          d9713 1 a9713 1

          22.7.

          d9738 1 a9738 1

          22.8.

          d9786 1 a9786 1

          22.9.

          @ 1.127 log @the handling of vulnerable binary packages has been moved from notification by filesystem location to notification by pkg_add; document @ text @d10 1 a10 1
          d35 1 a35 1
          d68 1 a68 2
          2.1.2. Via SUP
          2.1.3. Via anonymous CVS
          d119 2 a120 2
          5.4.2. Additional flags to the compiler (CFLAGS)
          5.4.3. Additional flags to the linker (LDFLAGS)
          d156 2 a157 2
          8.1. File system layout in ${LOCALBASE}
          8.2. File system layout in ${VARBASE}
          d168 1 a168 1
          9.8. How do I tell make fetch to do passive FTP?
          d170 3 a172 3
          9.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
          9.11. What does Could not find bsd.own.mk mean?
          d176 1 a176 1
          9.15. Why do some packages ignore my CFLAGS?
          d178 1 a178 1
          9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
          d196 2 a197 2
          11.1. Makefile
          11.2. distinfo
          d213 2 a214 2
          11.6. work*
          11.7. files/*
          d216 1 a216 1
          12. Programming in Makefiles
          d219 1 a219 1
          12.2. Makefile variables
          d233 2 a234 2
          13.2. Semi-automatic PLIST generation
          13.3. Tweaking output of make print-PLIST
          d237 1 a237 1
          13.6. Changing PLIST source with PLIST_SRC
          d244 1 a244 1
          14.2. Writing buildlink3.mk files
          d247 1 a247 1
          14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
          d249 1 a249 1
          14.3. Writing builtin.mk files
          d251 1 a251 1
          14.3.1. Anatomy of a builtin.mk file
          d264 1 a264 1
          15.2.1. How PKG_SYSCONFDIR is set
          d280 1 a280 1
          16.2. Converting packages to use bsd.options.mk
          d290 1 a290 1
          17.5. The fetch phase
          d295 10 a304 10
          17.6. The checksum phase
          17.7. The extract phase
          17.8. The patch phase
          17.9. The tools phase
          17.10. The wrapper phase
          17.11. The configure phase
          17.12. The build phase
          17.13. The test phase
          17.14. The install phase
          17.15. The package phase
          d320 1 a320 1
          19.1.2. How to pull in user-settable variables from ???
          d332 1 a332 1
          19.2. Fixing problems in the fetch phase
          d337 1 a337 1
          19.3. Fixing problems in the configure phase
          d350 1 a350 1
          19.5. Fixing problems in the build phase
          d354 1 a354 1
          19.5.3. Undefined reference to ...
          d357 1 a357 1
          19.6. Fixing problems in the install phase
          d422 2 a423 2
          24.6.1. The order in bsd.prefs.mk
          24.6.2. The order in bsd.pkg.mk
          d449 1 a449 1
          A.1.4. Checking a package with pkglint
          d460 6 a465 6
          C.1. distfiles: The distributed source files
          C.2. misc: Miscellaneous things
          C.3. packages: Binary packages
          C.4. reports: Bulk build reports
          C.5. current, pkgsrc-20xxQy: d486 1 a486 1
          d503 1 a503 1
          d515 2 a516 2
          • www/apache - The Apache d518 1 a518 1

          • www/firefox - The Firefox d520 1 a520 1

          • meta-pkgs/gnome - The GNOME d522 1 a522 1

          • meta-pkgs/kde3 - The K d529 1 a529 1

            d535 2 a536 2
            • Easy building of software from source as well as the creation d542 1 a542 1

            • All packages are installed in a consistent directory tree, d545 1 a545 1

            • Package dependencies, including when performing package updates, d549 1 a549 1

            • Like NetBSD, pkgsrc is designed with portability in mind and d554 1 a554 1

            • The installation prefix, acceptable software licenses, d558 1 a558 1

            • The entire source (not including the distribution files) is d565 2 a566 2

              • It should only work if it's right.” d573 1 a573 1

              • If it works, it should work everywhere” d579 1 a579 1

                d659 4 d669 1 a669 1
                d686 1 a686 1
                d689 2 a690 2

                There has been a lot of talk about “ports”, “packages”, etc. so far. Here is a description of all the d700 1 a700 1

                This is the former name of “pkgsrc”. It d717 1 a717 1 In NetBSD terminology, “port” refers to a different d728 1 a728 1

                Sometimes, this is referred to by the term “package” too, d736 1 a736 1

                d745 2 a746 2 software that is inside the packages (maybe called “end users”) are not covered by the pkgsrc guide.

                d764 1 a764 1
                d769 1 a769 1 “normal” user privileges are sufficient. We use a d774 1 a774 1
                d785 1 a785 2
                2.1.2. Via SUP
                2.1.3. Via anonymous CVS
                d836 2 a837 2
                5.4.2. Additional flags to the compiler (CFLAGS)
                5.4.3. Additional flags to the linker (LDFLAGS)
                d873 2 a874 2
                8.1. File system layout in ${LOCALBASE}
                8.2. File system layout in ${VARBASE}
                d885 1 a885 1
                9.8. How do I tell make fetch to do passive FTP?
                d887 3 a889 3
                9.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
                9.11. What does Could not find bsd.own.mk mean?
                d893 1 a893 1
                9.15. Why do some packages ignore my CFLAGS?
                d895 1 a895 1
                9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
                d899 1 a899 1
                d908 1 a908 2
                2.1.2. Via SUP
                2.1.3. Via anonymous CVS
                d925 1 a925 1
                d936 3 a938 3 want to download pkgsrc. You can get it as a tar file, via SUP, or via CVS. All three ways are described here.

                d955 1 a955 1 “pkgsrc-2009Q1”.

                d964 1 a964 1
                d966 11 a976 8 2.1.2. Via SUP

                As an alternative to the tar file, you can get pkgsrc via the Software Update Protocol, SUP. To do so, make sure your supfile has a line

                release=pkgsrc
                d978 17
                a994 29
                

                in it, see the examples in /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply run:

                $ sup -v /path/to/your/supfile.

                2.1.3. Via anonymous CVS

                To do an initial (full) checkout of pkgsrc, you first have to set some environment variables. For the C-Shell, type:

                % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot
                % setenv CVS_RSH ssh
                

                Or, the same for the bourne shell:

                $ export CVSROOT="anoncvs@@anoncvs.NetBSD.org:/cvsroot"
                $ export CVS_RSH="ssh"
                

                By default, CVS doesn't do things like most people would expect it to do. But there is a way to convince CVS, by creating a file called .cvsrc in your home directory and saving the following lines to it. This file will save you lots of headache and some bug reports, so we strongly recommend it. You can find an explanation of this file in the CVS documentation.

                d997 1 a999 1 release -d a1000 1 cvs -q -z3 d1002 1 a1003 11

                To fetch a specific pkgsrc stable branch from scratch, run:

                $ cd /usr
                $ cvs checkout -r pkgsrc-20xxQy -P pkgsrc

                Where pkgsrc-20xxQy is the stable branch to be checked out, for example, “pkgsrc-2009Q1

                This will create the directory pkgsrc/ in your /usr/ directory and all the package source will be stored under /usr/pkgsrc/.

                To fetch the pkgsrc current branch, run:

                $ cd /usr
                $ cvs checkout -P pkgsrc
                d1006 1 a1006 1
                d1013 1 a1013 1
                d1016 1 a1016 1
                d1037 1 a1037 1
                d1045 1 a1045 1
                d1051 2 a1052 2 by adding the option “-A” after the “update” keyword. To switch from the current branch d1054 1 a1054 1 “-rpkgsrc-2009Q3” option.

                d1056 1 a1056 1
                d1065 1 a1065 1 “update” for details.

                d1070 1 a1070 1
                d1090 1 a1090 1
                d1095 1 a1095 1
                d1113 1 a1113 1
                d1118 1 a1118 1 instead of “make”.

                d1121 1 a1121 1
                d1125 1 a1125 1
                d1136 1 a1136 1
                d1143 2 a1144 2
                1. FreeBSD stores its ports pkg database in d1149 1 a1149 1

                2. d1160 1 a1160 1
                3. An example mk.conf file will be placed in d1165 1 a1165 1

                  d1177 4 a1180 1 of Windows Server 2003 R2 and Windows Vista. As of this writing, SUA's d1182 1 a1182 1
                  d1187 5 a1191 5
                  • Utilities -> Base Utilities

                  • Interix GNU Components -> (all)

                  • Remote Connectivity

                  • Interix SDK

                  • d1223 1 a1223 1
                    d1228 2 a1229 2
                    • To uninstall UNIX Perl, use Add/Remove Programs, select Microsoft d1232 1 a1232 1

                    • d1238 1 a1238 1
                    • d1246 1 a1246 1
                      d1269 1 a1269 1
                      d1275 2 a1276 2
                      • d1288 1 a1288 1
                      • d1297 1 a1297 1
                      • d1308 1 a1308 1
                      • d1316 1 a1316 1
                      • d1326 1 a1326 1
                        d1345 1 a1345 1
                        d1390 1 a1390 1
                        d1406 1 a1406 1
                        d1440 1 a1440 1
                        d1446 2 a1447 2
                        1. OpenBSD stores its ports pkg database in d1452 1 a1452 1

                        2. d1463 1 a1463 1
                        3. d1480 1 a1480 1
                          d1488 6 a1493 6
                          • SUNWsprot

                          • SUNWarc

                          • SUNWbtool

                          • SUNWtoo

                          • SUNWlibm

                          • d1501 1 a1501 1
                            d1512 1 a1512 1
                            d1517 2 a1518 2
                            • SPROcc d1520 1 a1520 1

                            • SPROcpl d1522 1 a1522 1

                            • SPROild d1524 1 a1524 1

                            • SPROlang d1535 1 a1535 1

                              d1542 1 a1542 1
                              d1551 1 a1551 1
                              d1558 1 a1558 1
                              d1575 1 a1575 1
                              d1602 2 a1603 2 that someone else has prepared. This is the “pkg” in pkgsrc. The second way is to install the “src” d1606 1 a1606 1
                              d1613 4 a1616 4
                              • /usr/pkg for LOCALBASE, where most of the files are installed,

                              • /usr/pkg/etc for configuration files,

                              • /var for VARBASE, where those files are installed that may change after installation.

                              • d1621 1 a1621 1
                                d1631 1 a1631 1 third step, the OS version and the “version” of pkgsrc.

                                d1641 1 a1641 1
                                d1648 1 a1648 5 medium you are using). There may be an extra directory for packages that have vulnerabilities and therefore are considered insecure to install without checking the implications first. This method has been replaced by setting CHECK_VULNERABILITIES=yes in pkg_install.conf so pkg_add will complain about vulnerabilities, instead.

                                d1672 4 d1681 1 a1681 1
                                d1707 1 a1707 1
                                d1713 1 a1713 1
                                d1764 1 a1764 1
                                d1769 1 a1769 1 lintpkgsrc with the “-i” d1781 1 a1781 1
                                d1787 1 a1787 1
                                d1803 1 a1803 1
                                d1821 1 a1821 1
                                d1826 1 a1826 1 “comp” and the “text” distribution d1828 1 a1828 1 “xbase” and “xcomp” distribution d1831 1 a1831 1
                                d1881 1 a1881 1
                                d1890 1 a1890 1
                                d1894 1 a1894 1 “make” in the examples in this guide.

                                d1960 2 a1961 2

                                Occasionally, people want to “look under the covers” to see what is going on when a package is building d1965 2 a1966 2

                                1. d1972 1 a1972 1 including the “patch” stage.

                                  d1974 1 a1974 1
                                2. d2012 1 a2012 1
                                  d2024 2 a2025 2
                                  5.4.2. Additional flags to the compiler (CFLAGS)
                                  5.4.3. Additional flags to the linker (LDFLAGS)
                                  d2048 1 a2048 1
                                  d2056 2 a2057 2
                                  • LOCALBASE: Where d2061 2 a2062 2

                                  • CROSSBASE: Where “cross” category packages will be d2065 1 a2065 1

                                  • X11BASE: Where d2068 1 a2068 1

                                  • DISTDIR: Where to store the d2072 1 a2072 1

                                  • PKG_DBDIR: Where the d2075 1 a2075 1

                                  • MASTER_SITE_OVERRIDE: d2078 1 a2078 1

                                  • MASTER_SITE_BACKUP: d2087 1 a2087 1

                                  • BINPKG_SITES: d2090 3 a2092 3 release (“2.0”, etc.) and architecture (“mipsel”, etc.).

                                  • ACCEPTABLE_LICENSES: d2100 1 a2100 1

                                    d2105 2 a2106 2
                                    • PACKAGES: The top level d2109 1 a2109 1

                                    • WRKOBJDIR: d2121 1 a2121 1

                                    • LOCALPATCHES: d2125 1 a2125 1

                                    • PKGMAKECONF: Location of d2131 1 a2131 1

                                    • DEPENDS_TARGET: d2138 1 a2138 1

                                      d2145 2 a2146 2
                                      • Basic DESTDIR support means that the package d2149 1 a2149 1

                                      • Full DESTDIR support can run the complete build, d2214 1 a2214 1

                                        d2217 1 a2217 1
                                        d2228 2 a2229 2
                                        • distcc: d2231 1 a2231 1

                                        • ccache: d2233 1 a2233 1

                                        • gcc: d2235 1 a2235 1

                                        • mipspro: d2237 1 a2237 1

                                        • mipspro: d2239 1 a2239 1

                                        • sunpro: d2243 1 a2243 1 “gcc”. You can use d2247 1 a2247 1 e.g. “ccache gcc”. This d2250 1 a2250 1 should be listed (e.g. “sunpro gcc” d2260 1 a2260 1

                                          d2270 1 a2270 1 “+”) may lead to problems with packages that d2273 2 a2274 3 package if you're interested in optimization for the current CPU. Setting USE_CPUFLAGS to yes in mk.conf will cause pkgsrc to automatically use cpuflags.

                                          d2276 1 a2276 1
                                          d2294 1 a2294 1
                                          d2299 2 a2300 2
                                          • d2304 2 a2305 2
                                            • make sure patches apply with zero d2307 1 a2307 1

                                            • run check-shlibs to see that all d2313 1 a2313 1

                                            • PKG_DEBUG_LEVEL: The level d2326 1 a2326 1

                                              d2356 1 a2356 1 these variables are selected, options preceded by “-” d2370 2 a2371 2
                                              1. the default options as suggested by the package d2373 1 a2373 1

                                              2. the options implied by the settings of legacy d2375 2 a2376 2

                                              3. PKG_DEFAULT_OPTIONS

                                              4. PKG_OPTIONS.pkgbase

                                              5. d2397 1 a2397 1
                                                d2407 1 a2407 1
                                                d2433 1 a2433 1
                                                d2439 1 a2439 1
                                                d2474 1 a2474 1
                                                d2480 2 a2481 2
                                                • d2485 2 a2486 2
                                                  • To end up on ftp.NetBSD.org, the packages must be built d2489 1 a2489 1

                                                  • Packages on ftp.NetBSD.org should only be created from d2493 1 a2493 1

                                                  • The packages must be built as root, since some packages d2498 1 a2498 1

                                                  • Make sure that the bulk build cannot break anything in d2510 1 a2510 1

                                                    d2517 7 a2523 7
                                                    • 10 GB for the distfiles (read-write, remote, temporary)

                                                    • 10 GB for the binary packages (read-write, remote, permanent)

                                                    • 400 MB for the pkgsrc tree (read-only, remote, permanent)

                                                    • 5 GB for LOCALBASE (read-write, local, temporary for pbulk, permanent for old-bulk)

                                                    • 5 GB for the log files (read-write, remote, permanent)

                                                    • 5 GB for temporary files (read-write, local, temporary)

                                                    • d2526 1 a2526 1
                                                      d2529 1 a2529 1
                                                      d2532 1 a2532 1 one and the new-style “pbulk”. The latter is the recommended d2535 1 a2535 1
                                                      d2538 1 a2538 1
                                                      d2552 1 a2552 1
                                                      d2576 2 a2577 2
                                                      • If you are on a slow machine, you may want to d2579 2 a2580 2 “no”.

                                                      • If you are doing bulk builds from a read-only d2584 1 a2584 1

                                                      • Another important variable is d2591 9 a2599 8

                                                        • ALLOW_VULNERABLE_PACKAGES should be set to yes. The purpose of the bulk builds is creating binary packages, no matter if they are vulnerable or not. Leaving this variable unset would prevent the bulk build system from even trying to build them, so possible building errors would not show up.

                                                        • CHECK_FILES d2601 1 a2601 1 “yes” to check that the installed set of files d2603 1 a2603 1

                                                        • CHECK_INTERPRETER d2605 2 a2606 2 “yes” to check that the installed “#!”-scripts will find their d2608 2 a2609 2

                                                        • PKGSRC_RUN_TEST can be set to “yes” to run each d2611 1 a2611 1 packages make heavy use of “good” random d2619 1 a2619 1

                                                          d2637 1 a2637 1
                                                          d2662 1 a2662 1
                                                          d2667 1 a2667 1
                                                          d2692 1 a2692 1
                                                          d2702 1 a2702 1

                                                          This is basically “make bulk-package” with d2724 1 a2724 1

                                                          d2729 4 a2732 4
                                                          • 10 GB - distfiles (NFS ok)

                                                          • 8 GB - full set of all binaries (NFS ok)

                                                          • 5 GB - temp space for compiling (local disk recommended)

                                                          • d2741 1 a2741 1
                                                            d2764 2 a2765 2
                                                            1. d2769 1 a2769 1
                                                            2. d2773 1 a2773 1
                                                            3. d2777 1 a2777 1
                                                            4. d2781 1 a2781 1
                                                            5. d2785 1 a2785 1
                                                            6. d2791 1 a2791 1
                                                            7. d2795 1 a2795 1
                                                            8. d2799 1 a2799 1
                                                            9. d2809 1 a2809 1
                                                            10. Make d2813 2 a2814 2

                                                            11. Edit mk.conf, see Section 7.3.1.2, “???”.

                                                            12. Adjust mk/bulk/build.conf to suit your needs.

                                                            13. d2828 1 a2828 1
                                                              d2836 5 a2840 5
                                                              • SITE_SPECIFIC_PKGS

                                                              • HOST_SPECIFIC_PKGS

                                                              • GROUP_SPECIFIC_PKGS

                                                              • USER_SPECIFIC_PKGS

                                                              • d2851 1 a2851 1
                                                                d2911 1 d2926 1 a2926 1
                                                                d2930 3 a2932 3
                                                                • First, build the pbulk infrastructure in a fresh pkgsrc location.

                                                                • Then, build each of the packages from a clean installation directory using the infrastructure.

                                                                • d2934 1 a2934 1
                                                                  d2944 6 a2949 6
                                                                  • PKG_DEVELOPER=yes, to enable many consistency checks,

                                                                  • WRKOBJDIR=/tmp/pbulk-outer, to keep /usr/pkgsrc free from any modifications,

                                                                  • DISTDIR=/distfiles, to have only one directory in which all distfiles (for the infrastructure and for the actual packages) are downloaded,

                                                                  • ACCEPTABLE_LICENSES+=..., to select some licenses additional to the usual Free/Open Source licenses that are acceptable to you,

                                                                  • SKIP_LICENSE_CHECK=yes, to bypass the license checks.

                                                                  • d2959 1 a2959 1
                                                                    d2966 1 a2966 1
                                                                    d2977 1 a2977 1
                                                                    d3012 1 a3012 1
                                                                    d3018 2 a3019 2
                                                                    8.1. File system layout in ${LOCALBASE}
                                                                    8.2. File system layout in ${VARBASE}
                                                                    d3049 2 a3050 2
                                                                    • LOCALBASE corresponds to the d3052 1 a3052 1 “main” directory where the files are installed and contains d3057 1 a3057 1

                                                                    • VARBASE corresponds to d3061 1 a3061 1

                                                                    • PKG_SYSCONFDIR corresponds to d3066 1 a3066 1

                                                                      d3132 1 a3132 1
                                                                      d3153 1 a3153 1
                                                                      d3166 1 a3166 1
                                                                      9.8. How do I tell make fetch to do passive FTP?
                                                                      d3168 3 a3170 3
                                                                      9.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
                                                                      9.11. What does Could not find bsd.own.mk mean?
                                                                      d3174 1 a3174 1
                                                                      9.15. Why do some packages ignore my CFLAGS?
                                                                      d3176 1 a3176 1
                                                                      9.17. What does Makefile appears to contain unresolved cvs/rcs/??? merge conflicts mean?
                                                                      d3182 1 a3182 1
                                                                      d3186 2 a3187 2
                                                                      • pkgsrc-users: d3196 1 a3196 1

                                                                      • pkgsrc-bulk: d3199 1 a3199 1

                                                                      • pkgsrc-changes: d3213 1 a3213 1

                                                                        d3220 1 a3220 1
                                                                        d3229 1 a3229 1
                                                                        • pkgtools/x11-links: d3232 2 a3233 2

                                                                          • pkgtools/digest: d3235 1 a3235 1

                                                                          • pkgtools/libnbcompat: d3237 1 a3237 1

                                                                          • pkgtools/mtree: Installed on d3239 1 a3239 1

                                                                          • pkgtools/pkg_install: d3245 2 a3246 2

                                                                            • pkgtools/pkg_tarup: d3250 1 a3250 1

                                                                            • pkgtools/dfdisk: d3254 1 a3254 1

                                                                            • pkgtools/xpkgwedge: Put X11 d3256 1 a3256 1

                                                                            • devel/cpuflags: Determine d3258 1 a3258 3 CPU and compiler. Setting USE_CPUFLAGS to yes in mk.conf will cause pkgsrc to automatically use cpuflags.

                                                                            • d3262 2 a3263 2
                                                                              • pkgtools/pkg_chk: Reports on d3266 1 a3266 1

                                                                              • pkgtools/pkgdep: Makes d3269 1 a3269 1

                                                                              • pkgtools/pkgdepgraph: Makes d3271 1 a3271 1

                                                                              • pkgtools/pkglint: The d3273 1 a3273 1

                                                                              • pkgtools/lintpkgsrc: The lintpkgsrc(1) program d3275 1 a3275 1

                                                                              • pkgtools/pkgsurvey: Report what d3279 2 a3280 2

                                                                                • pkgtools/pkgdiff: Automate d3283 1 a3283 1

                                                                                • pkgtools/rpm2pkg, d3286 1 a3286 1

                                                                                • pkgtools/gensolpkg: Convert d3291 2 a3292 2

                                                                                  • pkgtools/pkg_comp: Build d3294 1 a3294 1

                                                                                  • pkgtools/libkver: Spoof d3298 1 a3298 1

                                                                                    d3303 1 a3303 1 you need to set UNPRIVILEGED to “yes”; this d3313 1 a3313 1 given the “--ignore-user-check” flag, as it will choose and d3316 1 a3316 1 “--prefix” flag provided by the script, as well as some others d3319 1 a3319 1
                                                                                    d3343 1 a3343 1
                                                                                    d3353 1 a3353 1
                                                                                    d3359 1 a3359 1
                                                                                    d3366 1 a3366 1 “orpheus.amdahl.com” is one of the firewalls, and it uses d3374 1 a3374 1
                                                                                    d3380 3 a3382 3
                                                                                    • ${LOCALBASE}/bin/ftp

                                                                                    • /usr/bin/ftp

                                                                                    • d3394 1 a3394 1
                                                                                      d3426 1 a3426 1
                                                                                      d3428 2 a3429 2 9.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
                                                                                    d3433 1 a3433 1 you don't have installed the “text” set (nroff, ...) from d3440 1 a3440 1
                                                                                    d3442 1 a3442 1 9.11. What does “Could not find bsd.own.mk” mean?
                                                                                    d3452 1 a3452 1
                                                                                    d3470 1 a3470 1
                                                                                    d3492 1 a3492 1
                                                                                    d3503 2 a3504 2
                                                                                    1. d3511 2 a3512 2
                                                                                    2. pkg_admin audit, an easy way to audit the current machine, checking each vulnerability which is known. If a d3518 1 a3518 1 “pkg_install” is installed, please read d3525 1 a3525 1

                                                                                      d3542 1 a3542 1 these lines. But be aware that some “smart” d3547 1 a3547 1
                                                                                      d3550 2 a3551 2
                                                                                      1. Make sure that your copy of pkgsrc is consistent. A d3557 3 a3559 3

                                                                                      2. Make sure that you don't have any CVS conflicts. Search for “<<<<<<” or “>>>>>>” in all your pkgsrc d3561 1 a3561 1

                                                                                      3. Make sure that you don't have old copies of the packages d3564 1 a3564 1

                                                                                      4. If the problem still exists, write a mail to the d3568 1 a3568 1

                                                                                        d3570 1 a3570 1 9.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
                                                                                      d3583 1 a3583 1
                                                                                      d3586 1 a3586 1
                                                                                      d3589 1 a3589 1 modifying packages. It starts with a “HOWTO”-like d3608 2 a3609 2
                                                                                      11.1. Makefile
                                                                                      11.2. distinfo
                                                                                      d3625 2 a3626 2
                                                                                      11.6. work*
                                                                                      11.7. files/*
                                                                                      d3628 1 a3628 1
                                                                                      12. Programming in Makefiles
                                                                                      d3631 1 a3631 1
                                                                                      12.2. Makefile variables
                                                                                      d3645 2 a3646 2
                                                                                      13.2. Semi-automatic PLIST generation
                                                                                      13.3. Tweaking output of make print-PLIST
                                                                                      d3649 1 a3649 1
                                                                                      13.6. Changing PLIST source with PLIST_SRC
                                                                                      d3656 1 a3656 1
                                                                                      14.2. Writing buildlink3.mk files
                                                                                      d3659 1 a3659 1
                                                                                      14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
                                                                                      d3661 1 a3661 1
                                                                                      14.3. Writing builtin.mk files
                                                                                      d3663 1 a3663 1
                                                                                      14.3.1. Anatomy of a builtin.mk file
                                                                                      d3676 1 a3676 1
                                                                                      15.2.1. How PKG_SYSCONFDIR is set
                                                                                      d3692 1 a3692 1
                                                                                      16.2. Converting packages to use bsd.options.mk
                                                                                      d3702 1 a3702 1
                                                                                      17.5. The fetch phase
                                                                                      d3707 10 a3716 10
                                                                                      17.6. The checksum phase
                                                                                      17.7. The extract phase
                                                                                      17.8. The patch phase
                                                                                      17.9. The tools phase
                                                                                      17.10. The wrapper phase
                                                                                      17.11. The configure phase
                                                                                      17.12. The build phase
                                                                                      17.13. The test phase
                                                                                      17.14. The install phase
                                                                                      17.15. The package phase
                                                                                      d3732 1 a3732 1
                                                                                      19.1.2. How to pull in user-settable variables from ???
                                                                                      d3744 1 a3744 1
                                                                                      19.2. Fixing problems in the fetch phase
                                                                                      d3749 1 a3749 1
                                                                                      19.3. Fixing problems in the configure phase
                                                                                      d3762 1 a3762 1
                                                                                      19.5. Fixing problems in the build phase
                                                                                      d3766 1 a3766 1
                                                                                      19.5.3. Undefined reference to ...
                                                                                      d3769 1 a3769 1
                                                                                      19.6. Fixing problems in the install phase
                                                                                      d3817 1 a3817 1
                                                                                      d3837 3 a3839 3
                                                                                      1. First, install the packages pkgtools/url2pkg and pkgtools/pkglint.

                                                                                      2. Then, choose one of the top-level directories as the d3844 1 a3844 1

                                                                                      3. Run the program url2pkg, which will ask d3851 1 a3851 1

                                                                                      4. d3880 2 a3881 2
                                                                                      5. Run pkglint to see what things still need to be done to make your package a “good” one. If you don't d3886 1 a3886 1

                                                                                      6. In many cases the package is not yet ready to build. You can d3889 1 a3889 1

                                                                                      7. Run bmake clean to clean the working d3894 1 a3894 1

                                                                                      8. Now, run bmake to build the package. For d3896 1 a3896 1

                                                                                      9. When the package builds fine, the next step is to install d3899 1 a3899 1

                                                                                      10. Up to now, the file PLIST, which d3905 1 a3905 1

                                                                                      11. Run pkglint again to see if the generated d3907 1 a3907 1

                                                                                      12. When you ran bmake install, the package d3913 1 a3913 1

                                                                                      13. Run bmake package to create a binary d3916 1 a3916 1

                                                                                        d3919 1 a3919 1
                                                                                        d3925 1 a3925 1
                                                                                        d3932 1 a3932 1
                                                                                        d3937 4 a3940 4

                                                                                        Most Python packages use either “distutils” or easy-setup (“eggs”). If the software uses “distutils”, set the PYDISTUTILSPKG variable to “yes” so d3942 2 a3943 2 “distutils” uses a script called setup.py, if the “distutils” driver is not called d3957 1 a3957 1 “../../lang/python/extension.mk”. d3959 2 a3960 2 “py-software” and PKGNAME should be set to “${PYPKGPREFIX}-${DISTNAME}”, e.g. d3967 2 a3968 2 “../../lang/python/application.mk” before “extension.mk”.

                                                                                        d3971 1 a3971 1 “../../lang/python/egg.mk”.

                                                                                        d3981 1 a3981 1
                                                                                        d3984 1 a3984 1
                                                                                        d3987 1 a3987 1
                                                                                        d3991 1 a3991 1 that the “nvu” package has not yet been imported into d3993 1 a3993 1 choice for the category is “www”.

                                                                                        d4005 1 a4005 1 not have the word “sources” in it. I also filled in the d4050 1 a4050 1
                                                                                        d4075 1 a4075 1 just appended “perl” to it. Since the dependencies of the d4077 1 a4077 1 installed in the “tools” phase, I need to build the package d4088 1 a4088 1

                                                                                        So I added “gmake” to the d4113 1 a4113 1 their names usually have a “2” appended. So I checked d4138 2 a4139 2

                                                                                        In this particular case, the assumption that “every package prefers GNOME 2” had been wrong. The first of the lines above d4186 1 a4186 1

                                                                                        d4200 1 a4200 1
                                                                                        d4206 2 a4207 2
                                                                                        11.1. Makefile
                                                                                        11.2. distinfo
                                                                                        d4223 2 a4224 2
                                                                                        11.6. work*
                                                                                        11.7. files/*
                                                                                        d4230 1 a4230 1
                                                                                        d4245 2 a4246 2
                                                                                        • DISTNAME is the basename of the d4249 1 a4249 1

                                                                                        • PKGNAME is the name of the d4258 1 a4258 1

                                                                                        • SVR4_PKGNAME is the name of d4267 1 a4267 1

                                                                                        • d4285 1 a4285 1
                                                                                        • MASTER_SITES, d4289 1 a4289 1 Section 17.5, “The fetch phase”.

                                                                                        • d4294 2 a4295 2
                                                                                          • PATCHFILES: d4302 1 a4302 1

                                                                                          • PATCH_SITES: d4308 2 a4309 2

                                                                                            • MAINTAINER is the email d4319 1 a4319 1

                                                                                            • OWNER should be used instead d4325 1 a4325 1

                                                                                            • HOMEPAGE is a URL where users can d4327 1 a4327 1

                                                                                            • COMMENT is a one-line d4333 1 a4333 1

                                                                                              • d4365 2 a4366 2
                                                                                                • Add MANCOMPRESSED if man pages are d4370 2 a4371 2

                                                                                                • Replace /usr/local with “${PREFIX}” in all files (see patches, d4373 1 a4373 1

                                                                                                • If the package installs any info files, see Section 19.6.7, “Packages installing info files”.

                                                                                                • d4376 1 a4376 1
                                                                                                  d4394 1 a4394 1 the platform, for example www/navigator). These are kept in the same d4399 1 a4399 1
                                                                                                  d4411 1 a4411 1
                                                                                                  d4426 2 a4427 2
                                                                                                  • Patches that replace the == d4430 1 a4430 1

                                                                                                  • Patches for commonly known vulnerabilities should d4432 1 a4432 1

                                                                                                  • Patches that change source code should mention the d4442 1 a4442 1

                                                                                                    d4463 1 a4463 1 makepatchsum command, see Section 11.2, “distinfo”.

                                                                                                    d4473 1 a4473 1
                                                                                                    d4490 1 a4490 1 “category/package” structure as pkgsrc, and d4500 1 a4500 1
                                                                                                    d4614 1 a4614 1
                                                                                                    d4635 1 a4635 1
                                                                                                    d4653 1 a4653 1
                                                                                                    d4656 1 a4656 1
                                                                                                    d4687 1 a4687 1

                                                                                                    replaces "${SOMEVAR}" with “somevalue” in d4706 1 a4706 1

                                                                                                    d4735 1 a4735 1
                                                                                                    d4750 1 a4750 1
                                                                                                    d4764 1 a4764 1
                                                                                                    d4771 1 a4771 1 “pre-configure” target to achieve d4784 1 a4784 1
                                                                                                    d4791 1 a4791 1
                                                                                                    12.2. Makefile variables
                                                                                                    d4817 1 a4817 1
                                                                                                    d4820 1 a4820 1
                                                                                                    • d4850 1 a4850 1
                                                                                                      d4888 2 a4889 2
                                                                                                      • Strings can contain arbitrary d4894 1 a4894 1

                                                                                                      • Internal lists are lists that d4901 1 a4901 1

                                                                                                      • External lists are lists that d4908 1 a4908 1

                                                                                                        d4911 2 a4912 2
                                                                                                        • All variable names starting with an underscore d4916 1 a4916 1

                                                                                                        • In .for loops you should use d4919 1 a4919 1

                                                                                                        • All list variables should have a ``plural'' d4925 1 a4925 1

                                                                                                          d4931 1 a4931 1
                                                                                                          d4952 1 a4952 1
                                                                                                          d4967 1 a4967 1
                                                                                                          d5011 1 a5011 1
                                                                                                          d5016 2 a5017 2
                                                                                                          • d5048 1 a5048 1
                                                                                                          • The example above contains one bug: The d5059 1 a5059 1

                                                                                                          • d5094 1 a5094 1
                                                                                                            d5110 1 a5110 1
                                                                                                            d5117 2 a5118 2
                                                                                                            13.2. Semi-automatic PLIST generation
                                                                                                            13.3. Tweaking output of make print-PLIST
                                                                                                            d5121 1 a5121 1
                                                                                                            13.6. Changing PLIST source with PLIST_SRC
                                                                                                            d5127 1 a5127 1 “packing list”, i.e. a list of files that belong to d5134 1 a5134 1
                                                                                                            d5143 1 a5143 1
                                                                                                            d5151 1 a5151 1
                                                                                                            d5180 1 a5180 1
                                                                                                            d5194 1 a5194 1 “${MACHINE_ARCH}” will be d5200 1 a5200 1
                                                                                                            d5203 1 a5203 1 “$ARCH” that d5215 4 a5218 4
                                                                                                            • ${OPSYS} - output of “uname -s

                                                                                                            • ${LOWER_OPSYS} - lowercase common name (eg. “solaris”)

                                                                                                            • ${OS_VERSION} - “uname -r

                                                                                                            • d5231 1 a5231 1

                                                                                                              This replaces all occurrences of “${SOMEVAR}” d5233 1 a5233 1 “somevalue”.

                                                                                                              d5240 1 a5240 1 This will substitute “${PLIST.foo}” d5242 2 a5243 2 “""” or “"@@comment "”. d5262 1 a5262 1
                                                                                                              d5268 1 a5268 1 PLIST file, the suffix “.gz” is d5275 1 a5275 1
                                                                                                              d5286 1 a5286 1
                                                                                                              d5292 6 a5297 6
                                                                                                              • PLIST.common

                                                                                                              • PLIST.${OPSYS}

                                                                                                              • PLIST.${MACHINE_ARCH}

                                                                                                              • PLIST.${OPSYS}-${MACHINE_ARCH}

                                                                                                              • PLIST.common_end

                                                                                                              • d5300 1 a5300 1
                                                                                                                d5303 1 a5303 1

                                                                                                                A “shared directory” is a directory where d5323 1 a5323 1

                                                                                                                d5330 1 a5330 1
                                                                                                                14.2. Writing buildlink3.mk files
                                                                                                                d5333 1 a5333 1
                                                                                                                14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
                                                                                                                d5335 1 a5335 1
                                                                                                                14.3. Writing builtin.mk files
                                                                                                                d5337 1 a5337 1
                                                                                                                14.3.1. Anatomy of a builtin.mk file
                                                                                                                d5345 2 a5346 2
                                                                                                                1. Symlink headers and libraries for dependencies into d5349 1 a5349 1

                                                                                                                2. Create wrapper scripts that are used in place of the normal compiler d5364 1 a5364 1

                                                                                                                  d5368 1 a5368 1 framework (“bl3ifying”) is fairly straightforward. d5370 2 a5371 2
                                                                                                                  1. Ensure that the build always calls the wrapper scripts d5376 1 a5376 1

                                                                                                                  2. Don't override PREFIX from within d5380 1 a5380 1 relative to “pkg_info -qp pkgname”. d5382 1 a5382 1

                                                                                                                  3. Remember that only the d5406 2 a5407 2

                                                                                                                    • bdb.buildlink3.mk chooses either d5411 1 a5411 1

                                                                                                                    • curses.buildlink3.mk: If the system d5414 1 a5414 1

                                                                                                                    • krb5.buildlink3.mk uses the value d5418 1 a5418 1

                                                                                                                    • motif.buildlink3.mk checks for a d5421 2 a5422 2 MOTIF_TYPE to “dt”, “lesstif”, or “openmotif” to choose d5424 1 a5424 1

                                                                                                                    • oss.buildlink3.mk defines several d5427 1 a5427 1

                                                                                                                    • pgsql.buildlink3.mk will accept d5430 1 a5430 1

                                                                                                                    • pthread.buildlink3.mk uses the value of d5433 1 a5433 1

                                                                                                                    • xaw.buildlink3.mk uses the value of d5441 1 a5441 1

                                                                                                                      d5461 1 a5461 1
                                                                                                                      d5492 2 a5493 2
                                                                                                                      • BUILDLINK_API_DEPENDS.pkg d5501 1 a5501 1

                                                                                                                      • BUILDLINK_PKGSRCDIR.pkg d5504 1 a5504 1

                                                                                                                      • BUILDLINK_DEPMETHOD.pkg d5511 1 a5511 1 to “build”. By default, the full dependency is d5513 1 a5513 1

                                                                                                                      • BUILDLINK_INCDIRS.pkg d5519 1 a5519 1 default to “include” and “lib” d5521 1 a5521 1

                                                                                                                      • BUILDLINK_CPPFLAGS.pkg d5524 1 a5524 1 configure and build phases. The “-I” option d5534 2 a5535 2

                                                                                                                        • BUILDLINK_FILES.pkg d5541 1 a5541 1

                                                                                                                        • BUILDLINK_FILES_CMD.pkg d5550 1 a5550 1

                                                                                                                        • BUILDLINK_CONTENTS_FILTER.pkg d5562 1 a5562 1

                                                                                                                        • BUILDLINK_FNAME_TRANSFORM.pkg d5580 1 a5580 1

                                                                                                                          d5622 1 a5622 1
                                                                                                                          d5634 2 a5635 2
                                                                                                                          1. It should set d5637 1 a5637 1 to either “yes” or “no” d5639 1 a5639 1

                                                                                                                          2. It should not override any d5643 1 a5643 1

                                                                                                                          3. It should be written to allow multiple inclusion. This d5647 1 a5647 1

                                                                                                                            d5694 1 a5694 1 it should only be “yes” if the actual package is d5703 1 a5703 1 is “yes”). This variable is only used internally d5720 1 a5720 1 may be “yes” even if d5722 1 a5722 1 is “no” because we may make the determination d5734 1 a5734 1
                                                                                                                            d5743 1 a5743 1 of either “yes”, “no”, or a list of d5767 1 a5767 1
                                                                                                                            d5780 1 a5780 1
                                                                                                                            15.2.1. How PKG_SYSCONFDIR is set
                                                                                                                            d5796 2 a5797 2
                                                                                                                            • Generic installation and manipulation of directories and files d5799 1 a5799 1

                                                                                                                            • Automatic handling of configuration files during installation, d5801 4 a5804 4

                                                                                                                            • Generation and installation of system startup scripts.

                                                                                                                            • Registration of system users and groups.

                                                                                                                            • Registration of system shells.

                                                                                                                            • Automatic updating of fonts databases.

                                                                                                                            • d5815 1 a5815 1
                                                                                                                              d5848 1 a5848 1
                                                                                                                              d5853 2 a5854 2
                                                                                                                              • MAKE_DIRS and OWN_DIRS d5860 1 a5860 1

                                                                                                                              • d5875 1 a5875 1
                                                                                                                                d5887 2 a5888 2
                                                                                                                                • d5900 1 a5900 1
                                                                                                                                • d5915 1 a5915 1
                                                                                                                                  d5927 1 a5927 1
                                                                                                                                  d5933 2 a5934 2
                                                                                                                                  • PKG_SYSCONFBASE: The configuration's root d5939 1 a5939 1

                                                                                                                                  • d5952 1 a5952 1
                                                                                                                                  • PKG_SYSCONFVAR: Specifies the name of the d5957 1 a5957 1

                                                                                                                                  • PKG_SYSCONFDIR.${PKG_SYSCONFVAR}: Holds the d5966 2 a5967 2

                                                                                                                                    1. If PKG_SYSCONFDIR.${PKG_SYSCONFVAR} is set, d5969 1 a5969 1

                                                                                                                                    2. If the previous variable is not defined but d5973 1 a5973 1

                                                                                                                                    3. Otherwise, it is set to d5981 1 a5981 1

                                                                                                                                      d5998 1 a5998 1
                                                                                                                                      d6027 1 a6027 1
                                                                                                                                      d6035 1 a6035 1
                                                                                                                                      d6045 2 a6046 2
                                                                                                                                      1. Store the script inside ${FILESDIR}, with d6050 1 a6050 1

                                                                                                                                      2. d6061 2 a6062 2
                                                                                                                                        1. Process the file found in the files directory applying all the d6065 1 a6065 1

                                                                                                                                        2. Copy the script from the files directory to the examples d6069 1 a6069 1

                                                                                                                                        3. Add code to the installation scripts to copy the startup script d6073 1 a6073 1

                                                                                                                                          d6083 1 a6083 1
                                                                                                                                          d6120 1 a6120 1
                                                                                                                                          d6135 1 a6135 1
                                                                                                                                          d6143 1 a6143 1
                                                                                                                                          d6152 2 a6153 2 where type can be one of “ttf”, “type1” or “x11”. This will add hooks to the d6161 1 a6161 1
                                                                                                                                          d6170 1 a6170 1
                                                                                                                                          d6177 1 a6177 1
                                                                                                                                          16.2. Converting packages to use bsd.options.mk
                                                                                                                                          d6216 1 a6216 1
                                                                                                                                          d6224 1 a6224 1
                                                                                                                                          d6284 2 a6285 2
                                                                                                                                          1. PKG_OPTIONS_VAR is the name of the d6291 1 a6291 1

                                                                                                                                          2. PKG_SUPPORTED_OPTIONS is a list of d6293 1 a6293 1

                                                                                                                                          3. PKG_OPTIONS_OPTIONAL_GROUPS is a d6301 1 a6301 1

                                                                                                                                          4. PKG_OPTIONS_REQUIRED_GROUPS is like d6305 1 a6305 1

                                                                                                                                          5. PKG_OPTIONS_NONEMPTY_SETS is a list d6312 1 a6312 1

                                                                                                                                          6. PKG_SUGGESTED_OPTIONS is a list of d6314 1 a6314 1

                                                                                                                                          7. PKG_OPTIONS_LEGACY_VARS is a list d6316 1 a6316 1 “USE_VARIABLE:option” d6319 1 a6319 1 “+=” to keep the listing of global legacy variables. A d6322 1 a6322 1

                                                                                                                                          8. PKG_OPTIONS_LEGACY_OPTS is a list d6324 1 a6324 1 “old-option:new-option” d6326 1 a6326 1 counterparts. Pairs should be added with “+=” to keep d6329 1 a6329 1

                                                                                                                                          9. PKG_LEGACY_OPTIONS is a list of d6334 1 a6334 1

                                                                                                                                          10. PKG_OPTIONS_DEPRECATED_WARNINGS is d6363 1 a6363 1

                                                                                                                                            d6377 1 a6377 1 “main” package d6384 2 a6385 2 describes what enabling the option does. E. g. “Enable ispell support.” The file is sorted by option names.

                                                                                                                                            d6387 1 a6387 1
                                                                                                                                            d6411 1 a6411 1
                                                                                                                                            d6421 1 a6421 1
                                                                                                                                            17.5. The fetch phase
                                                                                                                                            d6426 10 a6435 10
                                                                                                                                            17.6. The checksum phase
                                                                                                                                            17.7. The extract phase
                                                                                                                                            17.8. The patch phase
                                                                                                                                            17.9. The tools phase
                                                                                                                                            17.10. The wrapper phase
                                                                                                                                            17.11. The configure phase
                                                                                                                                            17.12. The build phase
                                                                                                                                            17.13. The test phase
                                                                                                                                            17.14. The install phase
                                                                                                                                            17.15. The package phase
                                                                                                                                            d6440 1 a6440 1
                                                                                                                                            d6467 1 a6467 1
                                                                                                                                            d6483 2 a6484 2
                                                                                                                                            • PREFIX always points to the location d6487 2 a6488 2 “${PREFIX}”.

                                                                                                                                            • LOCALBASE is where all non-X11 pkgs d6491 1 a6491 1 another non-X11 pkg, use “${LOCALBASE}”. The name d6496 1 a6496 1

                                                                                                                                            • X11BASE is where the actual X11 d6499 2 a6500 2 installed by a package), use “${X11BASE}”.

                                                                                                                                            • d6526 1 a6526 1
                                                                                                                                            • X11PREFIX should be used to refer to d6532 1 a6532 1

                                                                                                                                            • d6538 1 a6538 1 “DIRNAME=<package>”, and the make(1) d6541 1 a6541 1 “${X11PREFIX}” if the package is not d6562 1 a6562 1
                                                                                                                                            • Within ${PREFIX}, packages should d6568 1 a6568 1

                                                                                                                                              d6613 1 a6613 1
                                                                                                                                              d6623 1 a6623 1
                                                                                                                                              d6630 1 a6630 1
                                                                                                                                              d6729 1 a6729 1
                                                                                                                                              d6759 1 a6759 1 “${RESTRICTED}”) will not have their distfiles d6763 1 a6763 1
                                                                                                                                              d6774 1 a6774 1
                                                                                                                                              d6814 1 a6814 1
                                                                                                                                              d6835 1 a6835 1
                                                                                                                                              d6841 1 a6841 1
                                                                                                                                              d6879 1 a6879 1
                                                                                                                                              d6891 1 a6891 1 “yes”. If the configure script is a GNU autoconf d6893 1 a6893 1 “yes” instead. What happens in the d6903 1 a6903 1 “.”) is a list of pathnames relative to d6910 1 a6910 1 “./configure”) and d6916 1 a6916 1 “yes”. (If you only want the package installed in d6923 1 a6923 1 setting USE_CMAKE to “yes”. d6929 1 a6929 1 “.” (relative to CONFIGURE_DIRS)

                                                                                                                                              d6931 1 a6931 1 NO_CONFIGURE to “yes”.

                                                                                                                                              d6933 1 a6933 1
                                                                                                                                              d6949 1 a6949 1 “.”) is a list of pathnames relative to d6960 2 a6961 2 “gmake” if USE_TOOLS contains “gmake”, “make” otherwise. The d6963 2 a6964 2 “Makefile”, and BUILD_TARGET defaults to “all”.

                                                                                                                                              d6966 1 a6966 1 NO_BUILD to “yes”.

                                                                                                                                              d6968 1 a6968 1
                                                                                                                                              d6973 1 a6973 1
                                                                                                                                              d6997 2 a6998 2 is “install” by default, plus “install.man” if USE_IMAKE is d7054 1 a7054 1 set NO_INSTALL to “yes”. This is d7058 1 a7058 1
                                                                                                                                              d7073 1 a7073 1
                                                                                                                                              d7081 1 a7081 1
                                                                                                                                              d7088 1 a7088 1 “pre-” and “post-” used as a d7108 1 a7108 1 ignore the “already installed” flag.

                                                                                                                                              d7113 1 a7113 1 “package” and “update”, d7133 1 a7133 1 “-R” to the pkg_delete(1) d7158 1 a7158 1

                                                                                                                                              You can use the “update” target to d7182 1 a7182 1 set, “install” otherwise for d7184 3 a7186 3 targets are “package” or “bin-install”. Do not set this to “update” or you will get stuck in an d7193 1 a7193 1 (see the “clean-update” target below) d7202 1 a7202 1 “clean-update” target (see below) was d7208 1 a7208 1 “update” for the update target, d7334 1 a7334 1 “readme” target (see above), but is to be d7364 1 a7364 1 “show-host-specific-pkgs” target.

                                                          d7377 1 a7377 1

                                                          After a “make install” from a new or d7390 2 a7391 2 PLIST, as the “find -newer” command used by this target won't catch d7393 1 a7393 1

                                                          See Section 13.3, “Tweaking output of make print-PLIST” for more d7417 1 a7417 1 “up-to-date” to be installed via d7419 2 a7420 2

                                                          • None of the package's files d7423 1 a7423 1

                                                          • None of the package's required (binary) d7432 1 a7432 1

                                                            d7463 1 a7463 1
                                                            d7476 1 a7476 1
                                                            d7493 1 a7493 1 TOOLS_PATH.bash could be “/bin/bash” d7499 1 a7499 1
                                                            d7516 1 a7516 1
                                                            d7519 2 a7520 2
                                                            d7531 1 a7531 1
    d9792 1 a9792 1
    d7533 1 d7535 1 a7535 1 d7537 1 a7537 1

    18.4.1.

    d7545 1 a7545 1 d7547 1 a7547 1

    18.4.2.

    d7556 1 a7556 1 d7558 1 a7558 1

    18.4.3.

    d7574 1 a7574 1
    d7583 1 a7583 1
    19.1.2. How to pull in user-settable variables from ???
    d7595 1 a7595 1
    19.2. Fixing problems in the fetch phase
    d7600 1 a7600 1
    19.3. Fixing problems in the configure phase
    d7613 1 a7613 1
    19.5. Fixing problems in the build phase
    d7617 1 a7617 1
    19.5.3. Undefined reference to ...
    d7620 1 a7620 1
    19.6. Fixing problems in the install phase
    d7647 1 a7647 1
    d7650 1 a7650 1
    d7659 1 a7659 1
    d7680 1 a7680 1
    d7687 1 a7687 1
    d7692 2 a7693 2
    • When fetching the distfiles, some packages require user d7696 1 a7696 1

    • When extracting the distfiles, some packages may ask for d7698 3 a7700 3

    • help to configure the package before it is built

    • help during the build process

    • help during the installation of a package

    • d7716 1 a7716 1
      d7815 1 a7815 1
      d7838 2 a7839 2
      • d7848 1 a7848 1
      • d7855 1 a7855 1
      • d7862 1 a7862 1
      • d7869 1 a7869 1
      • d7878 1 a7878 1
        d7903 1 a7903 1

        Please note that the “pre-req-package-name” d7906 2 a7907 2

        1. d7915 1 a7915 1
        2. d7924 1 a7924 1
        3. d7941 4 a7944 4

          The “-[0-9]*” should be used instead of “-*” to avoid potentially ambiguous matches such as “tk-postgresql” matching a “tk-*DEPENDS.

          d7988 1 a7988 1
        4. d8010 1 a8010 1
          d8033 2 a8034 2 string. “Xaw3d-1.5” e.g. will automatically conflict with the older version “Xaw3d-1.3”.

          d8036 1 a8036 1
          d8054 1 a8054 1 “yes”. This variable is not currently used by any of d8064 1 a8064 1
          d8071 1 a8071 1 “preserved” package will d8073 1 a8073 1 “-f” option is used.

          d8075 1 a8075 1
          d8091 1 a8091 1
          d8097 1 a8097 1 “nb1”, “nb2”, ... suffix can be used d8099 2 a8100 2 (2, ...). The “nb” is treated like a “.” by the package tools. e.g.

          d8106 2 a8107 2 “foo-17.42nb9”. If you want to use the original value of PKGNAME without the “nbX” d8127 2 a8128 2
          • Changing HOMEPAGE, d8131 1 a8131 1

          • d8133 1 a8133 1

          • d8135 1 a8135 1

          • d8140 2 a8141 2

            • d8143 1 a8143 1

            • d8145 1 a8145 1

            • d8147 1 a8147 1

            • A dependency is changed or renamed.

            • d8152 1 a8152 1
              d8212 1 a8212 1
              d8215 1 a8215 1
              d8236 1 a8236 1
              d8269 1 a8269 1
              d8272 1 a8272 1
              d8283 1 a8283 1 can help here, as it just “knows” how to build d8288 2 a8289 2
              1. Add USE_LIBTOOL=yes to the package d8291 2 a8292 2

              2. For library objects, use “${LIBTOOL} --mode=compile ${CC}” in place of “${CC}”. You could even d8297 1 a8297 1

              3. d8299 2 a8300 2 “ar”, “ranlib”, and “ld -Bshareable” commands, and instead use:

                d8316 1 a8316 1 “-version-info”, especially when major and d8338 1 a8338 1

                The “-release” option will produce d8341 1 a8341 1 “libfoo-release.so.x.y” d8343 1 a8343 1 “libfoo.so.x.y” d8346 1 a8346 1

                The “-rpath argument” is the install d8352 1 a8352 1

              4. d8355 2 a8356 2 shared libraries, use “-module -avoid-version” to prevent them getting version d8361 1 a8361 1
              5. d8364 2 a8365 2 the cc(1) or ld(1) line with “${LIBTOOL} --mode=link”, and it will find the correct d8368 1 a8368 1 -L (such as “-L../somelib”), because it d8380 1 a8380 1
              6. d8382 2 a8383 2 or cp(1) command with “${LIBTOOL} --mode=install”, and change the library name to d8392 1 a8392 1
              7. In your PLIST, include only d8397 1 a8397 1

                d8408 2 a8409 2 default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the d8420 2 a8421 2
                • d8425 2 a8426 2
                  1. The shared object is named correctly, i.e. d8429 1 a8429 1

                  2. The -dlopen option is used when linking an executable.

                  3. d8432 1 a8432 1
                  4. The use of libltdl without the correct calls to initialisation routines. d8438 1 a8438 1

                    d8479 1 a8479 1
                    d8482 1 a8482 1
                    d8491 3 a8493 3 currently are “c”, “c++”, and “fortran” (and any combination). The default is “c”. Packages using GNU configure scripts, even if d8497 1 a8497 1
                    d8504 2 a8505 2
                    • USE_JAVA defines if a build d8507 1 a8507 1 USE_JAVA is set to “run”, then d8509 1 a8509 1 “yes”, which also adds a build dependency on the d8511 1 a8511 1

                    • Set USE_JAVA2 to declare that d8513 4 a8516 4 are “yes”, “1.4”, and “1.5”. “yes” accepts any Java2 implementation, “1.4” insists on versions 1.4 or above, and “1.5” only accepts versions 1.5 or d8520 1 a8520 1

                      d8524 1 a8524 1 “perl” to the USE_TOOLS variable d8533 1 a8533 1 default is “5.0”.

                      d8537 1 a8537 1
                      d8547 1 a8547 1
                      d8556 1 a8556 1
                      d8576 1 a8576 1
                      d8602 1 a8602 1
                      d8611 1 a8611 1
                      d8622 1 a8622 1
                      d8637 1 a8637 1
                      d8639 2 a8640 1 19.5.3. Undefined reference to “...
                      d8700 1 a8700 1
                      d8726 1 a8726 1
                      d8733 1 a8733 1 “datasize” and “stacksize” (or both). d8740 1 a8740 1
                      d8743 1 a8743 1
                      d8754 2 a8755 2

                      You can also just append “dir1 dir2” to the d8759 1 a8759 1

                      d8768 1 a8768 1 “--with-html-dir” option. Sometimes using this flag d8784 1 a8784 1 “--with-html-dir=${PREFIX}/share/doc”. d8788 1 a8788 1
                      d8809 1 a8809 1
                      d8816 5 a8820 5 install as root (“destdir”) or the package can install as non-root user (“user-destdir”).

                      • PKG_DESTDIR_SUPPORT has to be set to “destdir” or “user-destdir”. If d8824 1 a8824 1

                      • All installation operations have to be prefixed with d8826 1 a8826 1

                      • automake gets this DESTDIR mostly right d8829 1 a8829 1

                      • If files are installed with special owner/group d8831 1 a8831 1

                      • In general, packages should support d8836 1 a8836 1

                        d8851 1 a8851 1
                        d8858 1 a8858 1
                        d8887 1 a8887 1
                        d8891 1 a8891 1 “makeinfo” or “install-info” d8896 1 a8896 1 file. The “install-info” command used for the info d8903 1 a8903 1 “info” and can be overridden by the user.

                        d8907 2 a8908 2

                        A package which needs the “makeinfo” command at build time must add “makeinfo” to d8910 1 a8910 1 version of the “makeinfo” command is needed it d8934 1 a8934 1

                        d8943 3 a8945 3 “man”. Another often-used value is “share/man”.

                        d8957 1 a8957 1 “yes”, by default will use the d8964 1 a8964 1 to “no”. d8971 1 a8971 1
                        d8978 2 a8979 2
                        1. Include ../../devel/GConf/schemas.mk d8986 1 a8986 1

                        2. Ensure that the package installs its d8991 1 a8991 1

                        3. Check the PLIST and remove any entries under the etc/gconf d8994 1 a8994 1

                        4. Define the GCONF_SCHEMAS variable in d8998 1 a8998 1

                        5. Define the GCONF_ENTRIES variable in d9005 1 a9005 1

                          d9011 2 a9012 2
                          1. Include d9018 1 a9018 1

                          2. Check the PLIST and remove any entries under the d9021 1 a9021 1

                          3. Remove the share/omf directory from d9026 1 a9026 1

                            d9036 1 a9036 1 “ttf”, “type1” or “x11”. d9043 1 a9043 1
                            d9049 2 a9050 2
                            1. Include d9054 1 a9054 1

                            2. Set GTK2_IMMODULES=YES if d9056 1 a9056 1

                            3. Set GTK2_LOADERS=YES if your package installs d9058 1 a9058 1

                            4. d9061 3 a9063 3
                              • libdata/gtk-2.0/gdk-pixbuf.loaders

                              • libdata/gtk-2.0/gtk.immodules

                              • d9066 1 a9066 1
                              • Check the PLIST and remove d9071 1 a9071 1

                                d9077 2 a9078 2
                                1. Include d9083 1 a9083 1

                                2. Set SGML_CATALOGS to the full path of d9085 1 a9085 1

                                3. Set XML_CATALOGS to the full path of d9087 1 a9087 1

                                4. Set SGML_ENTRIES to individual entries d9092 1 a9092 1

                                5. Set XML_ENTRIES to individual entries d9099 1 a9099 1

                                  d9107 2 a9108 2
                                  1. Include d9116 1 a9116 1

                                  2. Check the PLIST and remove any entries under the d9124 1 a9124 1

                                  3. Remove any share/mime/* directories d9129 1 a9129 1

                                    d9140 1 a9140 1
                                    d9151 1 a9151 1
                                    d9157 1 a9157 1
                                    d9164 2 a9165 2
                                    1. Include d9169 1 a9169 1

                                    2. d9185 1 a9185 1
                                    3. Make sure that none of ls-R d9190 1 a9190 1

                                      d9207 1 a9207 1
                                      d9216 2 a9217 2
                                      1. Include d9219 1 a9219 1

                                      2. Check the PLIST and remove the d9221 1 a9221 1

                                      3. Ensure that the PLIST does not remove the shared icon d9229 1 a9229 1

                                        d9236 2 a9237 2
                                        1. Include d9239 1 a9239 1

                                        2. Check the PLIST and remove the entry that refers to the d9248 1 a9248 1

                                          d9262 1 a9262 1
                                          d9269 3 a9271 3
                                          • Be sure to set PKG_DEVELOPER=yes in mk.conf.

                                          • d9279 4 a9282 4
                                          • Edit the Makefile as requested.

                                          • Fill in the DESCR file

                                          • Run make configure

                                          • Add any dependencies glimpsed from documentation and the d9285 1 a9285 1

                                          • d9301 3 a9303 3
                                          • Look at the Makefile, fix if necessary; see Section 11.1, “Makefile”.

                                          • d9316 1 a9316 1
                                          • d9322 1 a9322 1
                                          • d9326 1 a9326 1
                                          • d9331 1 a9331 1
                                          • d9335 2 a9336 2
                                          • Play with it. Make sure everything works.

                                          • d9341 1 a9341 1
                                          • Submit (or commit, if you have cvs access); see Chapter 21, Submitting and Committing.

                                          • d9344 1 a9344 1
                                            d9359 1 a9359 1
                                            d9370 1 a9370 1
                                            d9387 1 a9387 1 “pkg”, the synopsis should include the package name d9391 1 a9391 1 go into the “fix” field.

                                            d9396 1 a9396 1 pkgsrc-wip (“pkgsrc work-in-progress”); see the d9400 1 a9400 1
                                            d9439 1 a9439 1
                                            d9448 2 a9449 2 imported with a vendor tag of “TNF” and a release tag of “pkgsrc-base”, e.g:

                                            d9455 2 a9456 2 the way, or cvs will complain the next time you “cvs update” your source tree. Also don't forget to add the new d9461 2 a9462 2

                                            For new packages, “cvs import” is preferred to “cvs add” because the former gets everything with a single command, d9465 1 a9465 1

                                            d9471 2 a9472 2
                                            • A URL is volatile, and can change over time. It may go away completely d9474 1 a9474 1

                                            • Having the change information between old and new versions in our CVS d9476 1 a9476 1

                                            • Having the change information between old and new versions in our CVS d9489 1 a9489 1

                                              d9501 1 a9501 1

                                              Note that “successor” in the d9507 1 a9507 1

                                              d9513 3 a9515 3
                                              1. Make a copy of the directory somewhere else.

                                              2. d9521 4 a9524 4
                                              3. Fix CATEGORIES and any DEPENDS paths that just did “../package” instead of “../../category/package”.

                                              4. In the modified package's Makefile, consider setting d9535 1 a9535 1

                                              5. cvs import the modified package in the new d9537 1 a9537 1

                                              6. d9543 5 a9547 5
                                              7. Fix paths in packages from step 5 to point to new location.

                                              8. cvs rm (-f) the package at the old location.

                                              9. Remove from oldcategory/Makefile.

                                              10. Add to newcategory/Makefile.

                                              11. d9555 1 a9555 1
                                                d9563 2 a9564 2
                                                d9601 1 a9601 1
    d9603 1 d9605 1 a9605 1 d9607 1 a9607 1

    22.1.

    d9621 1 a9621 1 d9623 1 a9623 1

    22.2.

    d9639 1 a9639 1 d9641 1 a9641 1

    22.3.

    d9657 1 a9657 1 d9659 1 a9659 1

    22.4.

    d9670 1 a9670 1 d9672 1 a9672 1

    22.5.

    d9681 2 a9682 2 available in the “wrapper” phase and later. To “simulate” the wrapper phase, append d9686 1 a9686 1 d9688 1 a9688 1

    22.6.

    d9710 1 a9710 1 d9712 1 a9712 1

    22.7.

    d9735 1 a9735 1 d9737 1 a9737 1

    22.8.

    d9747 2 a9748 2
    • The pkgsrc guide (this document) is a collection d9752 1 a9752 1

    • On the mailing list archives (see http://mail-index.NetBSD.org/), you can find discussions d9757 1 a9757 1

    • Many of the files in the d9763 1 a9763 1

    • The CVS log messages are a rich source of d9771 2 a9772 2

    • Some parts of pkgsrc are only “implicitly documented”, that is the documentation exists only in the d9783 1 a9783 1

    d9785 1 a9785 1

    22.9.

    d9795 2 a9796 2
    @ 1.117 log @regen @ text @d190 1 d2238 47 d3678 1 d3903 1 d4008 48 d7637 1 a7637 1

    18.4.1.

    d7647 1 a7647 1

    18.4.2.

    d7658 1 a7658 1

    18.4.3.

    d8924 1 a8924 4 either use @@owner/@@group in the PLIST (preferred) or use SPECIAL_PERMS (discouraged). Note that @@owner/@@group are sticky during install, keep this in mind.

    d9669 1 a9669 1

    22.1.

    d9685 1 a9685 1

    22.2.

    d9703 1 a9703 1

    22.3.

    d9721 1 a9721 1

    22.4.

    d9734 1 a9734 1

    22.5.

    d9750 1 a9750 1

    22.6.

    d9774 1 a9774 1

    22.7.

    d9799 1 a9799 1

    22.8.

    d9847 1 a9847 1

    22.9.

    @ 1.116 log @regen @ text @d2294 6 a2299 4 “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    d2964 1 a2964 1

    First, you need to create a pkgsrc installation for the pbulk infrastructure. No matter on which platform you are (even on NetBSD), you should bootstrap into its own directory. Let's take the directory /usr/pbulk-outer or $HOME/pbulk-outer for it. This installation will be bootstrapped and all the tools that are required for the bulk build will be installed there.

    d3283 5 a3287 3
  • devel/cpuflags: Determine the best compiler flags to optimise code for your current CPU and compiler.

  • d3358 7 a3364 4 FETCH_CMD variable. Don't forget to set FETCH_RESUME_ARGS and FETCH_OUTPUT_ARGS if you are not using default values.

    d3366 1 a3366 1 wget to resume downloads, you'll have to use something d3369 1 a3369 4 FETCH_CMD= wget FETCH_BEFORE_ARGS= --passive-ftp FETCH_RESUME_ARGS= -c FETCH_OUTPUT_ARGS= -O -nc d4673 1 a4673 1 ROOT_GROUP.

    d5978 3 a5980 1 automatically added to OWN_DIRS. See Section 15.1.1, “Directory manipulation” what this means.

    d6750 3 d7539 1 a7539 1

    18.4.1.

    d7549 1 a7549 1

    18.4.2.

    d7560 1 a7560 1

    18.4.3.

    d9012 1 a9012 1 ../../textproc/scrollkeeper/omf.mk d9574 1 a9574 1

    22.1.

    d9590 1 a9590 1

    22.2.

    d9608 1 a9608 1

    22.3.

    d9626 1 a9626 1

    22.4.

    d9639 1 a9639 1

    22.5.

    d9655 1 a9655 1

    22.6.

    d9679 1 a9679 1

    22.7.

    d9704 1 a9704 1

    22.8.

    d9752 1 a9752 1

    22.9.

    @ 1.115 log @Move scrollkeeper/omf.mk to rarian/omf.mk. scrollkeeper is nowadays included in rarian, so the omf.mk file should be there as well. Adapt all references. @ text @d120 2 a121 2
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d148 4 a151 1
    7.4.1. Configuration
    d157 2 a158 2
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    d169 1 a169 1
    9.8. How do I tell make fetch to do passive FTP?
    d171 3 a173 3
    9.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
    9.11. What does “Could not find bsd.own.mk” mean?
    d177 1 a177 1
    9.15. Why do some packages ignore my CFLAGS?
    d179 1 a179 1
    9.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d196 2 a197 2
    11.1. Makefile
    11.2. distinfo
    d213 2 a214 2
    11.6. work*
    11.7. files/*
    d216 1 a216 1
    12. Programming in Makefiles
    d219 1 a219 1
    12.2. Makefile variables
    d233 2 a234 2
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    d237 1 a237 1
    13.6. Changing PLIST source with PLIST_SRC
    d244 1 a244 1
    14.2. Writing buildlink3.mk files
    d247 1 a247 1
    14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d249 1 a249 1
    14.3. Writing builtin.mk files
    d251 1 a251 1
    14.3.1. Anatomy of a builtin.mk file
    d264 1 a264 1
    15.2.1. How PKG_SYSCONFDIR is set
    d280 1 a280 1
    16.2. Converting packages to use bsd.options.mk
    d290 1 a290 1
    17.5. The fetch phase
    d295 10 a304 10
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    d320 1 a320 1
    19.1.2. How to pull in user-settable variables from mk.conf
    d332 1 a332 1
    19.2. Fixing problems in the fetch phase
    d337 1 a337 1
    19.3. Fixing problems in the configure phase
    d350 1 a350 1
    19.5. Fixing problems in the build phase
    d354 1 a354 1
    19.5.3. Undefined reference to “...
    d357 1 a357 1
    19.6. Fixing problems in the install phase
    d421 2 a422 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d448 1 a448 1
    A.1.4. Checking a package with pkglint
    d459 8 a466 8
    C.1. bootstrap-pkgsrc: Bootstrap kits
    C.2. distfiles: The distributed source files
    C.3. iso: Currently empty
    C.4. misc: Miscellaneous things
    C.5. packages: Binary packages
    C.6. reports: Bulk build reports
    C.7. current, pkgsrc-200xQy: d834 2 a835 2
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d862 4 a865 1
    7.4.1. Configuration
    d871 2 a872 2
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    d883 1 a883 1
    9.8. How do I tell make fetch to do passive FTP?
    d885 3 a887 3
    9.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
    9.11. What does “Could not find bsd.own.mk” mean?
    d891 1 a891 1
    9.15. Why do some packages ignore my CFLAGS?
    d893 1 a893 1
    9.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d2094 2 a2095 2
    5.4.2. Additional flags to the compiler (CFLAGS)
    5.4.3. Additional flags to the linker (LDFLAGS)
    d2483 4 a2486 1
    7.4.1. Configuration
    d2552 5 a2556 4

    Warning

    The rest of this section is rather old. Don't rely on it too much.

    d2837 1 a2837 1
  • Edit mk.conf, see Section 7.3.1.2, “mk.conf.

  • d2954 30 d2986 1 a2986 1 7.4.1. Configuration
    d2988 1 d3043 2 a3044 2
    8.1. File system layout in ${LOCALBASE}
    8.2. File system layout in ${VARBASE}
    d3191 1 a3191 1
    9.8. How do I tell make fetch to do passive FTP?
    d3193 3 a3195 3
    9.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
    9.11. What does “Could not find bsd.own.mk” mean?
    d3199 1 a3199 1
    9.15. Why do some packages ignore my CFLAGS?
    d3201 1 a3201 1
    9.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d3632 2 a3633 2
    11.1. Makefile
    11.2. distinfo
    d3649 2 a3650 2
    11.6. work*
    11.7. files/*
    d3652 1 a3652 1
    12. Programming in Makefiles
    d3655 1 a3655 1
    12.2. Makefile variables
    d3669 2 a3670 2
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    d3673 1 a3673 1
    13.6. Changing PLIST source with PLIST_SRC
    d3680 1 a3680 1
    14.2. Writing buildlink3.mk files
    d3683 1 a3683 1
    14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d3685 1 a3685 1
    14.3. Writing builtin.mk files
    d3687 1 a3687 1
    14.3.1. Anatomy of a builtin.mk file
    d3700 1 a3700 1
    15.2.1. How PKG_SYSCONFDIR is set
    d3716 1 a3716 1
    16.2. Converting packages to use bsd.options.mk
    d3726 1 a3726 1
    17.5. The fetch phase
    d3731 10 a3740 10
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    d3756 1 a3756 1
    19.1.2. How to pull in user-settable variables from mk.conf
    d3768 1 a3768 1
    19.2. Fixing problems in the fetch phase
    d3773 1 a3773 1
    19.3. Fixing problems in the configure phase
    d3786 1 a3786 1
    19.5. Fixing problems in the build phase
    d3790 1 a3790 1
    19.5.3. Undefined reference to “...
    d3793 1 a3793 1
    19.6. Fixing problems in the install phase
    d4180 2 a4181 2
    11.1. Makefile
    11.2. distinfo
    d4197 2 a4198 2
    11.6. work*
    11.7. files/*
    d4263 1 a4263 1 Section 17.5, “The fetch phase”.

    d4437 1 a4437 1 makepatchsum command, see Section 11.2, “distinfo.

    d4765 1 a4765 1
    12.2. Makefile variables
    d5091 2 a5092 2
    13.2. Semi-automatic PLIST generation
    13.3. Tweaking output of make print-PLIST
    d5095 1 a5095 1
    13.6. Changing PLIST source with PLIST_SRC
    d5309 1 a5309 1
    14.2. Writing buildlink3.mk files
    d5312 1 a5312 1
    14.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d5314 1 a5314 1
    14.3. Writing builtin.mk files
    d5316 1 a5316 1
    14.3.1. Anatomy of a builtin.mk file
    d5777 1 a5777 1
    15.2.1. How PKG_SYSCONFDIR is set
    d6172 1 a6172 1
    16.2. Converting packages to use bsd.options.mk
    d6416 1 a6416 1
    17.5. The fetch phase
    d6421 10 a6430 10
    17.6. The checksum phase
    17.7. The extract phase
    17.8. The patch phase
    17.9. The tools phase
    17.10. The wrapper phase
    17.11. The configure phase
    17.12. The build phase
    17.13. The test phase
    17.14. The install phase
    17.15. The package phase
    d6601 1 a6601 1 to yes. It indicates whether a symbolic link to the d7387 1 a7387 1

    See Section 13.3, “Tweaking output of make print-PLIST for more d7530 1 a7530 1

    18.4.1.

    d7540 1 a7540 1

    18.4.2.

    d7551 1 a7551 1

    18.4.3.

    d7576 1 a7576 1
    19.1.2. How to pull in user-settable variables from mk.conf
    d7588 1 a7588 1
    19.2. Fixing problems in the fetch phase
    d7593 1 a7593 1
    19.3. Fixing problems in the configure phase
    d7606 1 a7606 1
    19.5. Fixing problems in the build phase
    d7610 1 a7610 1
    19.5.3. Undefined reference to “...
    d7613 1 a7613 1
    19.6. Fixing problems in the install phase
    d9003 1 a9003 1 ../../textproc/rarian/omf.mk d9303 1 a9303 1 necessary; see Section 11.1, “Makefile.

    d9565 1 a9565 1

    22.1.

    d9581 1 a9581 1

    22.2.

    d9599 1 a9599 1

    22.3.

    d9617 1 a9617 1

    22.4.

    d9630 1 a9630 1

    22.5.

    d9646 1 a9646 1

    22.6.

    d9670 1 a9670 1

    22.7.

    d9695 1 a9695 1

    22.8.

    d9743 1 a9743 1

    22.9.

    d10096 2 a10097 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d10139 2 a10140 2
    24.6.1. The order in bsd.prefs.mk
    24.6.2. The order in bsd.pkg.mk
    d10568 1 a10568 1
    A.1.4. Checking a package with pkglint
    d10869 8 a10876 8
    C.1. bootstrap-pkgsrc: Bootstrap kits
    C.2. distfiles: The distributed source files
    C.3. iso: Currently empty
    C.4. misc: Miscellaneous things
    C.5. packages: Binary packages
    C.6. reports: Bulk build reports
    C.7. current, pkgsrc-200xQy: d10967 1 a10967 1 structure of subdirectories should look like the one in Section C.5, “packages: Binary packages”.

    @ 1.114 log @regen @ text @d8962 1 a8962 1 ../../textproc/scrollkeeper/omf.mk @ 1.113 log @regen @ text @d565 1 a565 1 — That means, if a package contains bugs, it's better to find d572 1 a572 1 — Like NetBSD has been ported to many hardware architectures, d1284 2 a1285 2 support contract; however, a NetBSD developer has made most Interix hotfixes available for personal use from http://www.duh.org/interix/hotfixes.php.

    d1754 3 a1756 3 However, you should run security/audit-packages regularly, especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration.

    d2180 1 a2180 1 — it is an internal definition which refers to the d2801 1 a2801 1 e. g. for sysutils/aperture):

    d2947 1 a2947 2

    TODO; see the wiki for more information.

    d3485 2 a3486 2 do this, install the security/audit-packages package. It has two components:

    d3501 2 a3502 3

    Use of the security/audit-packages package is strongly recommended! After “audit-packages” is installed, please read d3504 1 a3504 1 audit-packages.

    d4242 9 a4250 8
  • MAINTAINER is the email address of the person who feels responsible for this package, and who is most likely to look at problems or questions regarding this package which have been reported with send-pr(1). Other developers should contact the MAINTAINER before making major changes to the package. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to d4252 6 d4445 1 a4445 1 kqueue support, add a check that detects kqueue itself — d4816 1 a4816 1

    No rule without exception—the .for d6525 1 a6525 1

    When building a package, a number of directories is used to store d6558 8 d6744 2 a6745 2 gtar, nbtar (which is the default value), pax, or an d6747 2 a6748 2 archives should be extracted.

    d7489 1 a7489 1

    18.4.1.

    d7499 1 a7499 1

    18.4.2.

    d7510 1 a7510 1

    18.4.3.

    d8075 2 a8076 1
  • Changing HOMEPAGE, MAINTAINER, d8750 1 a8750 1

    A package should therefor never hard code file ownership or d8758 12 a8769 1

      d9524 1 a9524 1

      22.1.

      d9540 1 a9540 1

      22.2.

      d9558 1 a9558 1

      22.3.

      d9576 1 a9576 1

      22.4.

      d9589 1 a9589 1

      22.5.

      d9605 1 a9605 1

      22.6.

      d9629 1 a9629 1

      22.7.

      d9654 1 a9654 1

      22.8.

      d9702 1 a9702 1

      22.9.

      d9718 1 a9718 1 — it contains a list of suggested new packages and a list of d10236 2 a10237 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.112 log @regen @ text @d973 2 a974 2 run sup -v /path/to/your/supfile.

      d982 2 a983 3
          % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot
          % setenv CVS_RSH ssh
      d986 2
      a987 3
      
          $ export CVSROOT="anoncvs@@anoncvs.NetBSD.org:/cvsroot"
          $ export CVS_RSH="ssh"
      d989 1
      a989 1
      

      By default, cvs doesn't do things like most people would d991 1 a991 1 way to convince cvs, by creating a file called d1008 1 a1008 1 $ cvs checkout -r pkgsrc-200xQy -P pkgsrc

      d1016 1 a1016 1 $ cvs checkout -r -P pkgsrc
      d1055 3 a1057 2 change to the pkgsrc directory and run:

      $ cvs update -dP
      d1067 1 a1067 1 “-rpkgsrc-2007Q1” option.

      d7476 1 a7476 1

      18.4.1.

      d7486 1 a7486 1

      18.4.2.

      d7497 1 a7497 1

      18.4.3.

      d9499 1 a9499 1

      22.1.

      d9515 1 a9515 1

      22.2.

      d9533 1 a9533 1

      22.3.

      d9551 1 a9551 1

      22.4.

      d9564 1 a9564 1

      22.5.

      d9580 1 a9580 1

      22.6.

      d9604 1 a9604 1

      22.7.

      d9629 1 a9629 1

      22.8.

      d9677 1 a9677 1

      22.9.

      @ 1.111 log @regen @ text @d565 1 a565 1 — That means, if a package contains bugs, it's better to find d572 1 a572 1 — Like NetBSD has been ported to many hardware architectures, d927 1 a927 1 2007Q1.

      d941 15 a955 6

      The tar file for the stable branch 2007Q1 is in the directory pkgsrc-2007Q1 and is also called pkgsrc-2007Q1.tar.gz.

      After downloading the tar file, change to the directory where you want to have pkgsrc. This is usually /usr. Then, run gzcat pkgsrc.tar.gz | tar xf - to extract the files.

      d979 1 a979 2

      To get pkgsrc via CVS, make sure you have cvs(1) installed. To do an initial (full) checkout of pkgsrc, you first d988 2 a989 3 $ CVSROOT="anoncvs@@anoncvs.NetBSD.org:/cvsroot" $ CVS_RSH="ssh" $ export CVSROOT CVS_RSH d992 1 a992 1 expect it to do, and this is unlikely to change. But there is a d1008 11 a1018 9

      Then, you change to the directory where you want to have your copy of pkgsrc. In most cases this is /usr. In that directory you run the checkout command, which is cvs -q checkout -P pkgsrc for the current branch and cvs -q checkout -rpkgsrc-2007Q1 -P pkgsrc for the stable branch. This command will create a directory called pkgsrc with all the pkgsrc files in it.

      d1057 2 a1058 2 change to the pkgsrc directory and run cvs -q update -dP.

      d1833 1 a1833 1 Install pkgtools/pkglint and run d2181 1 a2181 1 — it is an internal definition which refers to the d2802 1 a2802 1 e. g. for sysutils/aperture):

      d3258 2 a3259 1 pkglint(1) program checks a pkgsrc entry for errors, lintpkgsrc(1) d4441 1 a4441 1 kqueue support, add a check that detects kqueue itself — d4812 1 a4812 1

      No rule without exception—the .for d7477 1 a7477 1

      18.4.1.

      d7487 1 a7487 1

      18.4.2.

      d7498 1 a7498 1

      18.4.3.

      d8081 1 d9500 1 a9500 1

      22.1.

      d9516 1 a9516 1

      22.2.

      d9534 1 a9534 1

      22.3.

      d9552 1 a9552 1

      22.4.

      d9565 1 a9565 1

      22.5.

      d9581 1 a9581 1

      22.6.

      d9605 1 a9605 1

      22.7.

      d9630 1 a9630 1

      22.8.

      d9678 1 a9678 1

      22.9.

      d9694 1 a9694 1 — it contains a list of suggested new packages and a list of d10212 2 a10213 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.110 log @regen @ text @d565 1 a565 1 — That means, if a package contains bugs, it's better to find d572 1 a572 1 — Like NetBSD has been ported to many hardware architectures, d2172 1 a2172 1 — it is an internal definition which refers to the d2372 4 d2793 1 a2793 1 e. g. for sysutils/aperture):

      d4348 1 a4348 2 should contain a reference to , to avoid redundant explanations.

      d4431 1 a4431 1 kqueue support, add a check that detects kqueue itself — d4802 1 a4802 1

      No rule without exception—the .for d6847 9 d7467 1 a7467 1

      18.4.1.

      d7477 1 a7477 1

      18.4.2.

      d7488 1 a7488 1

      18.4.3.

      d9489 1 a9489 1

      22.1.

      d9505 1 a9505 1

      22.2.

      d9523 1 a9523 1

      22.3.

      d9541 1 a9541 1

      22.4.

      d9554 1 a9554 1

      22.5.

      d9570 1 a9570 1

      22.6.

      d9594 1 a9594 1

      22.7.

      d9619 1 a9619 1

      22.8.

      d9667 1 a9667 1

      22.9.

      d9683 1 a9683 1 — it contains a list of suggested new packages and a list of d10201 2 a10202 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.109 log @regen @ text @d21 1 a21 1 d27 1 a27 1 d166 1 a166 1
      9.8. How do I tell make fetch to do passive FTP?
      d231 1 a231 1
      13.3. Tweaking output of make print-PLIST
      d445 1 a445 1
      A.1.4. Checking a package with pkglint
      d565 1 a565 1 — That means, if a package contains bugs, it's better to find d572 1 a572 1 — Like NetBSD has been ported to many hardware architectures, d600 1 a600 1
  • d604 1 a604 1 d608 1 a608 1 d613 2 a614 2 Darwin (Mac OS X) d619 1 a619 1 d623 1 a623 1 d627 1 a627 1 d635 1 a635 1 d640 1 a640 1 Interix d646 1 a646 1 d650 1 a650 1 d654 1 a654 1 d667 1 a667 1 The pkgsrc user's guide, d671 1 a671 1 The second part, The pkgsrc developer's guide, explains how to prepare a d674 1 a674 1 The pkgsrc infrastructure internals d678 1 a678 1 HTML, PDF, PS, TXT.

    d721 1 a721 1 an archive on ftp.NetBSD.org.

    d744 1 a744 1 building binary packages themselves. For pkgsrc users Part I, “The pkgsrc user's guide” should provide all necessary d749 1 a749 1 package maintainer creates packages as described in Part II, “The pkgsrc developer's guide”.

    d753 1 a753 1 Only these people should need to read through Part III, “The pkgsrc infrastructure internals”, though others might be curious, d877 1 a877 1
    9.8. How do I tell make fetch to do passive FTP?
    d935 1 a935 1 ftp://ftp.NetBSD.org/pub/pkgsrc/. There are a d937 1 a937 1 described in detail in Appendix C, Directory layout of the pkgsrc FTP server.

    d939 1 a939 1 current and is called pkgsrc.tar.gz. d942 1 a942 1 directory pkgsrc-2007Q1 and is also called pkgsrc-2007Q1.tar.gz.

    d945 1 a945 1 /usr. Then, run gzcat d964 1 a964 1 run sup -v d970 1 a970 1

    To get pkgsrc via CVS, make sure you have cvs(1) d1004 2 a1005 2 checkout command, which is cvs -q checkout -P pkgsrc for the current branch and cvs -q d1037 1 a1037 1 variables. See Chapter 5, Configuring pkgsrc for the details.

    d1048 1 a1048 1 change to the pkgsrc directory and run cvs -q update d1098 1 a1098 1

    See Section 4.1, “Using binary packages”.

    d1109 1 a1109 1

    See Chapter 2, Where to get pkgsrc and how to keep it up-to-date for other ways to get d1111 1 a1111 1 bootstrap command will use the defaults of d1120 3 a1122 3

    The bootstrap installs a bmake tool. Use this bmake when building via pkgsrc. For examples in this guide, use bmake d1134 2 a1135 2 pkgsrc on Mac OS X, by using a disk image, or a UFS or HFSX d1138 1 a1138 1 Tools from Apple's Developer Connection. See http://developer.apple.com/macosx/ d1140 1 a1140 1 from http://www.apple.com/macosx/x11/download/ d1229 1 a1229 1

  • An example mk.conf file will be placed in d1241 1 a1241 1 (not including XP Home), or 2003. SFU can be downloaded from http://www.microsoft.com/windows/sfu/.

    d1277 1 a1277 1 hotfixes available for personal use from http://www.duh.org/interix/hotfixes.php.

    d1347 2 a1348 2 StarNet X-Win32, Hummingbird Exceed d1350 1 a1350 1 Interop X Server), d1352 1 a1352 1 Cygwin.

    d1366 1 a1366 1 support, pkgsrc uses the esound client/server d1369 1 a1369 1 not contain the esd d1401 1 a1401 1

    pkg_add creates directories of mode d1417 1 a1417 1 compiler suite, you can download a gcc tardist file from http://freeware.sgi.com/.

    d1419 1 a1419 1 version of IRIX providing support for if_indextoname(3), if_nametoindex(3), d1427 1 a1427 1 mk.conf. Particularly, make sure that you do not d1446 1 a1446 1 in mk.conf. Otherwise, pkgsrc will assume you d1483 1 a1483 1 in mk.conf:

    d1491 1 a1491 1 mk.conf:

    d1499 1 a1499 1 ld(1) command run when linking a C++ shared library and d1530 1 a1530 1

    An example mk.conf file will be placed in d1533 1 a1533 1 mk.conf d1576 1 a1576 1

    Binary packages of gcc can be found through http://www.sunfreeware.com/.

    d1594 1 a1594 1 mk.conf file:

    d1612 1 a1612 1 following lines in your mk.conf file:

    d1627 1 a1627 1

    Sometimes, when using libtool, d1631 1 a1631 1 to your mk.conf:

    d1675 1 a1675 1

    On the ftp.NetBSD.org d1686 1 a1686 1 have to build the packages yourself, which is explained in Section 3.2, “Bootstrapping pkgsrc”.

    d1692 1 a1692 1 pkgsrc FTP server in the directory /pub/pkgsrc/packages.

    d1719 1 a1719 1 su to root first):

    d1759 2 a1760 2 pkg_delete command does not know it anyway. To delete a package, you can just run pkg_delete d1783 1 a1783 1

    The pkg_info shows information about d1793 1 a1793 1 FTP site at ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/vulnerabilities. d1814 1 a1814 1 vulnerabilities d1816 1 a1816 1 Details on this are located in the MESSAGE d1825 1 a1825 1 lintpkgsrc with the “-i” d1833 1 a1833 1

    You can then use make update to update the d1840 1 a1840 1

    The pkg_admin executes various d1847 1 a1847 1 expressed in the pkg_add(1) manual page about the d1865 1 a1865 1 make readme from the pkgsrc d1871 1 a1871 1 mk.conf. You should not try to use multiple d1875 1 a1875 1 in pkgsrc. If it is not, see Part II, “The pkgsrc developer's guide” for d1900 1 a1900 1 to your mk.conf.

    d1921 1 a1921 1 mk.conf file, d1949 1 a1949 1 use the pkgsrc bmake command instead of d1991 1 a1991 1 system by building as shown in Appendix B, Build logs.

    d2009 1 a2009 1

    Some packages look in mk.conf to d2014 1 a2014 1 mk.conf to save having to remember to d2023 1 a2023 1

    If you invoke the make(1) command with d2031 1 a2031 1

    If you want to know the value of a certain make(1) d2034 1 a2034 1 target. e.g. to show the expansion of the make(1) d2047 2 a2048 2 install a binary package - if available - via pkg_add(1), else do a make package. The list of remote FTP d2051 1 a2051 1 ftp.NetBSD.org. Any flags that should be added to pkg_add(1) d2090 1 a2090 1 make(1) from the base system, it is in the directory d2172 1 a2172 1 — it is an internal definition which refers to the d2177 1 a2177 1 See Section 11.3, “patches/*” for more d2180 1 a2180 1 the mk.conf file used by a package's d2329 1 a2329 1 and their actual execution progress with set d2342 1 a2342 1 options are mutually exclusive, run make d2358 1 a2358 1 mk.conf to select which options to d2368 1 a2368 1 $ grep "PKG.*OPTION" mk.conf d2392 1 a2392 1 mk.conf for each option. To ease d2397 1 a2397 1 mk.conf to use the options framework d2417 1 a2417 1 another system with pkg_add(1). This saves having to build d2422 1 a2422 1 directory in pkgsrc, and run make d2430 1 a2430 1 then use the pkg_* tools to manipulate d2433 1 a2433 1 gzipped tar file. See Section B.2, “Packaging figlet” for a d2435 1 a2435 1

    See Chapter 21, Submitting and Committing for information on how to submit d2441 1 a2441 1

    See Section 17.17, “Other helpful targets”.

    d2555 1 a2555 1 7.3.1.2. mk.conf d2557 1 a2557 1

    You may want to set variables in mk.conf. d2630 1 a2630 1 (as a sh(1) script) at the end of the usual pre-build d2647 1 a2647 1 pkg_add(1) from /etc/rc.local, so d2740 1 a2740 1 be installed via pkg_add(1) instead of building again, so d2758 1 a2758 1 mounts to be activated using the sandbox d2760 1 a2760 1 sandbox umount command.

    d2762 1 a2762 1 the sets from a NetBSD installation or doing a make d2789 1 a2789 1 e. g. for sysutils/aperture):

    d2815 1 a2815 1
  • Edit mk.conf, see Section 7.3.1.2, “mk.conf.

  • d2837 1 a2837 1 in mk.conf, the variables

    d2909 2 a2910 2

    The upload process may take quite some time. Use ls(1) or du(1) on the FTP server to monitor progress of the d2935 1 a2935 1

    TODO; see the wiki for d2947 1 a2947 1 cdpack arranges the packages on the CD-ROMs in a d3036 1 a3036 1 files of the packages, as well as pkgsrc's mk.conf d3139 1 a3139 1

    9.8. How do I tell make fetch to do passive FTP?
    d3160 1 a3160 1
  • pkgsrc-users: d3169 1 a3169 1

  • pkgsrc-bulk: d3172 1 a3172 1

  • pkgsrc-changes: d3184 1 a3184 1 http://mail-index.NetBSD.org/.

    d3221 1 a3221 1 already-installed package. Used by make replace to d3284 1 a3284 1 bootstrap script will ease non-root configuration when d3297 1 a3297 1 mk.conf. If, during a fetch step, an incomplete d3300 1 a3300 1 use a different program than the default ftp(1) by changing the d3312 1 a3312 1 FETCH_OUTPUT_ARGS= -O d3321 1 a3321 1 mk.conf:

    d3348 1 a3348 1 9.8. How do I tell make fetch to do passive FTP? d3360 1 a3360 1 mk.conf file: d3370 2 a3371 2 from work or university, where you can't run a make fetch. There is an archive of distfiles on ftp.NetBSD.org, d3373 1 a3373 1

    The answer here is to do a make fetch-list in d3376 1 a3376 1 don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't d3390 1 a3390 1 make fetch-list approach, or fetch the distfiles d3410 1 a3410 1 environment or in mk.conf.

    d3421 1 a3421 1 the one that corresponds to your release (determine via uname d3428 1 a3428 1 su(1) feature of pkgsrc, it can become annoying to type in the root d3433 1 a3433 1 following into your mk.conf, somewhere d3453 1 a3453 1 mk.conf) to point to your preferred configuration d3477 1 a3477 1

    download-vulnerability-list, an easy way to d3481 1 a3481 1

    ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d3483 1 a3483 1
  • audit-packages, an easy way to audit the d3495 1 a3495 1 perform a security check before building any package. See Section 5.2, “Variables affecting the build process” for ways to control this d3503 1 a3503 1 mk.conf, these flags are passed in d3505 1 a3505 1 scripts and to make(1). Some package authors ignore the d3511 1 a3511 1 you should run make patch in the package d3535 1 a3535 1 extracted. Run make clean clean-depends to d3551 1 a3551 1 anymore, you can remove that file and run cvs -q update d3618 1 a3618 1

    13.3. Tweaking output of make print-PLIST
    d3814 1 a3814 1
  • Run the program url2pkg, which will ask d3850 1 a3850 1

  • Run pkglint to see what things still need d3852 2 a3853 2 know what pkglint's warnings want to tell you, try pkglint --explain or pkglint d3857 1 a3857 1 find instructions for the most common cases in the next section, Section 10.1, “Common types of packages”. After you have followed the instructions d3859 1 a3859 1

  • Run bmake clean to clean the working d3864 2 a3865 2

  • Now, run bmake to build the package. For the various things that can go wrong in this phase, consult Chapter 19, Making your package work.

  • d3867 1 a3867 1 the package. Run bmake install and hope that d3871 1 a3871 1 nearly empty. Run bmake print-PLIST d3875 1 a3875 1
  • Run pkglint again to see if the generated d3877 1 a3877 1

  • When you ran bmake install, the package d3879 2 a3880 2 empty list of files. To fix this, run bmake deinstall and bmake install again. Now the package is d3883 1 a3883 1

  • Run bmake package to create a binary d3893 1 a3893 1 url2pkg, including dependencies.

    d3921 1 a3921 1 I fed that URL to the url2pkg program:

    d4046 1 a4046 1

    After another bmake clean && bmake, the answer d4064 1 a4064 1 pkg-config instead of gtk-config. d4211 1 a4211 1 Section 17.5, “The fetch phase”.

  • d4234 1 a4234 1 package which have been reported with send-pr(1). Other d4239 1 a4239 1 .

    d4272 1 a4272 1 mk.conf, the first component of d4288 1 a4288 1
  • If the package installs any info files, see Section 19.6.7, “Packages installing info files”.

  • d4304 1 a4304 1 patches directory (see Section 11.3, “patches/*”).

    d4306 1 a4306 1 make makedistinfo or make mdi d4323 1 a4323 1 extracting them, in alphabetic d4330 1 a4330 1 diff -bu format, and apply without a fuzz to avoid d4343 1 a4343 1 operator for test(1) with = in shell scripts d4364 1 a4364 1 pkgdiff command from the pkgtools/pkgdiff package to avoid these d4367 1 a4367 1 mkpatches from the same package to make a d4370 2 a4371 2 cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If d4374 1 a4374 1 patchdiff. Copy the patches you want to use d4378 2 a4379 2 the checksums for the patch files by using the make makepatchsum command, see Section 11.2, “distinfo.

    d4428 1 a4428 1 kqueue support, add a check that detects kqueue itself — d4430 1 a4430 1 configure script. There is absolutely nothing d4523 2 a4524 2 packager-friendly software
    article (part 1, part d4565 1 a4565 1 inserted files. See Chapter 13, PLIST issues for more d4577 1 a4577 1

    This shell script is invoked twice by pkg_add(1). d4582 2 a4583 2 PLIST. See pkg_add(1) and pkg_create(1) for more information. See also Section 15.1, “Files and directories outside the installation prefix”.

    d4589 2 a4590 2 See pkg_delete(1) and pkg_create(1) for more information.

    d4636 1 a4636 1 for the buildlink3 framework (see Chapter 14, Buildlink methodology).

    d4645 1 a4645 1 package-specific options (see Chapter 16, Options handling) that can be d4670 1 a4670 1

    When you type make, the distribution files are d4673 1 a4673 1 make clean. Besides the sources, this d4686 1 a4686 1 a ${CP} command in the d4721 1 a4721 1 the make(1) system as a programming language for a big system d4727 1 a4727 1 like awk(1) programs. To make sure that every shell command runs d4741 1 a4741 1 make(1) for the second time, the file exists and will not be d4755 1 a4755 1

    When you run make wrong twice, the file d4757 1 a4757 1 message in the first run. On the other hand, running make d4759 1 a4759 1

    You might remember that make(1) sometimes removes d4763 1 a4763 1 when one of the commands fails (like false(1) above).

    d4771 1 a4771 1 ``:='', and ``!='', which are described in the make(1) man d4791 1 a4791 1 of. In all other cases, make(1) performs lazy evaluation, that d4798 2 a4799 2 it from sh(1).

    No rule without exception—the .for d4814 1 a4814 1 Internal lists can be used in .for loops. d4820 1 a4820 1 in .for loops. Examples are d4832 1 a4832 1

  • In .for loops you should use d4906 1 a4906 1 date(1) will be executed. The $HOME shell d4910 1 a4910 1 echo(1) command.

    d4913 1 a4913 1 implementation of the echo(1) command. As long as you can d5004 2 a5005 2 make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write d5034 1 a5034 1
    13.3. Tweaking output of make print-PLIST
    d5046 1 a5046 1 - see the pkg_create(1) man page for a full list. d5062 1 a5062 1

    You can use the make print-PLIST command d5064 1 a5064 1 was extracted. See Section 17.17, “Other helpful targets” for d5069 1 a5069 1 13.3. Tweaking output of make print-PLIST d5072 2 a5073 2 Section 13.8, “Sharing directories between packages”, you may have noticed that make print-PLIST outputs a set of d5111 1 a5111 1 replaced by what uname -p gives. The d5120 1 a5120 1 was replaced by the output of uname d5132 1 a5132 1

  • ${OPSYS} - output of “uname -s

  • d5134 1 a5134 1
  • ${OS_VERSION} - “uname -r

  • d5143 1 a5143 1 following way, similar to MESSAGE_SUBST (see Section 11.5, “Optional files”):

    d5171 1 a5171 1 The files are later concatenated using cat(1), and the order of things is d5234 1 a5234 1

    After regenerating the PLIST using make d5436 1 a5436 1 += to ensure that d5505 1 a5505 1 destination filename, e.g. -e d5544 1 a5544 1

    See Section 19.1.6, “Handling dependencies” for d5916 1 a5916 1 automatically added to OWN_DIRS. See Section 15.1.1, “Directory manipulation” what this means.

    d5954 1 a5954 1 used. Check out Section 15.1.2, “File manipulation” for information d5977 1 a5977 1 installation prefix. Therefore, the same rules described in Section 15.1, “Files and directories outside the installation prefix” apply, and the same solutions d6159 1 a6159 1 This variable should be set in mk.conf.

    d6223 1 a6223 1 make(1) variable that the user can set to override the default d6254 1 a6254 1 pairs that map legacy mk.conf variables to d6327 1 a6327 1

    When writing buildlink3.mk files, it is often necessary to list d6417 1 a6417 1 these files are encoded. See Section 11.3, “patches/*” and Section 19.3.1, “Shared libraries - libtool” for more details.

    d6475 1 a6475 1 “DIRNAME=<package>”, and the make(1) d6500 1 a6500 1 install files according to hier(7), with the exception that d6545 1 a6545 1

    You can run a particular phase by typing make d6549 1 a6549 1 run make without parameters in a package directory, d6641 2 a6642 2 for packages that are maintained in ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local package source distributions that are maintained in ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/LOCAL_PORTS/.

    d6749 3 a6751 3 patch(1) can be handed in PATCH_DIST_ARGS. See Section 11.3, “patches/*” for more details.

    By default patch(1) is given special args to make d6761 1 a6761 1

    This is covered in Chapter 18, Tools needed for building or running. d6917 1 a6917 1 install(1) command that have the owner, group and d6978 2 a6979 2 the make bin-install or by using pkg_add.

    d6996 1 a6996 1 directory by running make clean. If you want d6998 1 a6998 1 make clean-depends.

    d7024 1 a7024 1

    If you did a make install and d7030 1 a7030 1 make update and make d7037 1 a7037 1

    This target does a pkg_delete(1) in the d7043 1 a7043 1

    Add a "-v" to the pkg_delete(1) command.

    d7048 1 a7048 1 package, e.g. if make deinstall d7052 1 a7052 1 “-R” to the pkg_delete(1) d7060 1 a7060 1 make package if no binary package is d7062 1 a7062 1 pkg_add can be set via d7073 2 a7074 2 series of make deinstall and make install (or whatever d7078 1 a7078 1 resume package updating in case a previous make d7081 1 a7081 1 make clean or otherwise remove the d7086 1 a7086 1

    Resuming an interrupted make d7090 1 a7090 1 make update will most certainly d7093 2 a7094 2 command line or in mk.conf to alter the behaviour of make d7102 1 a7102 1 make update. Other good d7115 1 a7115 1 make or make d7122 1 a7122 1 called after interrupting a running make d7134 1 a7134 1 installed during make update d7141 1 a7141 1 get updated if make update was called d7145 1 a7145 1 calling make update) or you may lose d7148 1 a7148 1 the first time you run make update d7152 1 a7152 1 clean, you can either perform a make d7156 1 a7156 1 running make update for the first d7165 2 a7166 2 command line or in mk.conf to alter the behaviour of make clean-update:

    d7169 1 a7169 1

    After make clean, do not d7171 1 a7171 1 this package. Only use this if make d7174 1 a7174 1 done automatically on make d7189 1 a7189 1 certainly break if you make replace a d7196 1 a7196 1

    This target invokes pkg_info(1) for the current d7206 1 a7206 1 make describe in the packages' d7209 1 a7209 1 verbose format by running make d7211 1 a7211 1 make search d7214 1 a7214 1 one by running make show-deps d7249 1 a7249 1 to run this after a make d7293 1 a7293 1 if PKG_DEVELOPER is set in mk.conf.

    d7298 1 a7298 1 new PLIST from a find d7306 1 a7306 1

    If the package installs files via tar(1) or d7312 1 a7312 1

    See Section 13.3, “Tweaking output of make print-PLIST for more d7321 1 a7321 1 properly. See Section 7.3.1, “Configuration”). d7332 2 a7333 2 it will be installed via pkg_add(1). If not, make bulk-package will be executed, d7337 1 a7337 1 pkg_add(1) if:

    d7381 1 a7381 1 make show-tools.

    d7387 2 a7388 2 such as: cat, awk, chmod, test, and so on. d7390 1 a7390 1 make show-var VARNAME=USE_TOOLS.

    d7455 1 a7455 1 18.4.1. d7465 1 a7465 1 18.4.2. d7476 1 a7476 1 18.4.3. d7579 1 a7579 1 19.1.2. How to pull in user-settable variables from mk.conf d7583 1 a7583 1 which is mk.conf by default. When you d7585 1 a7585 1 make(1) (for example .if or d7694 1 a7694 1

    The license can be viewed with make d7696 1 a7696 1 printed above can be added to mk.conf to d7801 1 a7801 1 See Chapter 14, Buildlink methodology for more information.

    d7818 1 a7818 1 pkg_info(1).

    d7898 1 a7898 1 vulnerabilities file. See Section 19.1.10, “Handling packages with security problems” for more d7985 1 a7985 1 not be deleted using pkg_delete(1) unless the d7993 1 a7993 1 and after committing that file, use make upload d8098 1 a8098 1 then it is possible to run bmake patch and d8115 1 a8115 1 sed(1) that specify the actual substitution. Every sed d8130 1 a8130 1 DYNAMIC_MASTER_SITES and a make d8166 1 a8166 1 (See Section 19.1.11, “How to handle incrementing versions when fixing an existing package” for more details.) d8265 1 a8265 1 files, i.e. files that are loaded via dlopen(3), NOT d8275 1 a8275 1 the cc(1) or ld(1) line with “${LIBTOOL} d8292 2 a8293 2

    When installing libraries, preface the install(1) or cp(1) command with “${LIBTOOL} d8301 1 a8301 1 ldconfig(8).

    d8315 1 a8315 1 check the libtool script location by doing make d8399 1 a8399 1 framework, see Chapter 14, Buildlink methodology).

    d8445 1 a8445 1

    See Section 19.6.6, “Packages installing perl modules” for information d8608 1 a8608 1 Makefile and then say bmake clean; d8645 1 a8645 1 ulimit command to raise the maximum data d8656 1 a8656 1

    The BSD-compatible install supplied d8745 1 a8745 1 shall use tclsh in this example):

    d8766 1 a8766 1 do-configure target for the standard perl d8816 1 a8816 1 does not provide a makeinfo command or if it d8822 1 a8822 1 install-info command as the registration of d8825 1 a8825 1 appropriate makeinfo command.

    d8827 2 a8828 2 overriding scripts for the install-info and makeinfo commands in a directory listed early d8830 1 a8830 1

    The script overriding install-info has d8832 1 a8832 1 makeinfo logs a message and according to the d8834 1 a8834 1 makeinfo command or exit on error.

    d8870 1 a8870 1

    See Section 13.5, “Man page compression” for d8895 1 a8895 1 Section 9.13, “How do I change the location of configuration files?” for more information.

    d9047 1 a9047 1 mk.conf. This option will copy the scripts d9078 1 a9078 1 to be registered using updmap, d9080 1 a9080 1 such font map files. Then updmap will d9101 1 a9101 1 avoid the check-shlibs target, which tests d9127 1 a9127 1 make print-PLIST.

    d9144 1 a9144 1 respect to the last point is to regenerate it using make d9183 1 a9183 1
  • Be sure to set PKG_DEVELOPER=yes in mk.conf.

  • d9187 1 a9187 1 url2pkg:

    d9194 1 a9194 1
  • Run make configure

  • d9209 2 a9210 2 phase. mkpatches, patchdiff and pkgvi are d9215 1 a9215 1 necessary; see Section 11.1, “Makefile.

    d9240 1 a9240 1

    Repeat the above make print-PLIST d9250 1 a9250 1

    Run pkglint from pkgtools/pkglint, and fix the problems it d9254 1 a9254 1

  • Submit (or commit, if you have cvs access); see Chapter 21, Submitting and Committing.

  • d9280 1 a9280 1 see Section 7.3.8, “Uploading results of a bulk build”.

    d9286 2 a9287 2 runs well; see Chapter 20, Debugging and the rest of this document. Next, generate an uuencoded gzipped tar(1) d9290 1 a9290 1 either with the send-pr(1) command, or if you don't have d9292 1 a9292 1 http://www.NetBSD.org/support/send-pr.html, d9306 1 a9306 1 homepage at http://pkgsrc-wip.sourceforge.net/ d9316 1 a9316 1 automatically update pages on www.NetBSD.org and other d9328 1 a9328 1 CHANGES-YYYY entries: make d9333 2 a9334 2 and then to cd to the package directory. For package updates, make changes-entry is enough. d9338 1 a9338 1 in mk.conf if your local login name is d9349 1 a9349 1 give the cvs import command is so that it knows where d9406 1 a9406 1
  • cvs import the modified package in the new d9415 1 a9415 1

  • cvs rm (-f) the package at the old location.

  • d9477 1 a9477 1 22.1. d9486 1 a9486 1 to the pkgsrc-internal invocations of make(1), while d9493 1 a9493 1 22.2. d9502 1 a9502 1 make(1) program that is used in the pkgsrc d9511 1 a9511 1 22.3. d9529 1 a9529 1 22.4. d9542 1 a9542 1 22.5. d9544 1 a9544 1
    d9844 1 a9844 1 d9849 1 a9849 1 d9855 1 a9855 1 d9957 1 a9957 1 fixes you do to a GNOME package to the mainstream developers (see Section 11.3.5, “Feedback to the author”). This is the only way to get d9962 1 a9962 1

    The most common places to report bugs are the GNOME's Bugzilla and the freedesktop.org's d9974 1 a9974 1 guidelines (Section 11.3.4, “Patching guidelines”) for more d10189 2 a10190 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d10254 1 a10254 1 in MAKECONF, which is usually mk.conf. d10335 1 a10335 1 provides the pkg_regress command. Then you d10345 1 a10345 1 that is included by the pkg_regress command. d10381 1 a10381 1 do_test() function with its first parameter. d10385 1 a10385 1 if the output from do_test() matches the d10390 1 a10390 1 if the output from do_test() does d10449 1 a10449 1 For example, there are many versions of sed(1) that have a d10480 1 a10480 1

    A.1.4. Checking a package with pkglint
    d10487 1 a10487 1 bison when Berkeley yacc is already d10519 1 a10519 1 improvements. Why you would want this when Berkeley yacc(1) is part d10536 1 a10536 1 A.1.4. Checking a package with pkglint d10543 1 a10543 1 pkglint:

    d10547 1 a10547 1 more checks will be performed. Use e.g. pkglint -Call d10561 1 a10561 1 PLIST (see Chapter 11, Package components - files, directories and contents) d10646 1 a10646 1 pkg_delete bison. Should you decide that you want a d10795 1 a10795 1 ftp.NetBSD.org is /pub/pkgsrc/. d10806 1 a10806 1 binary packages, so you should look in the packages d10839 1 a10839 1 name is taken from the output of the uname d10844 3 a10846 1 built.

    d10879 1 a10879 1 structure of subdirectories should look like the one in
    Section C.5, “packages: Binary packages”.

    d10920 2 a10921 2
  • http://www.NetBSD.org/docs/pkgsrc/

  • http://www.NetBSD.org/docs/pkgsrc/pkgsrc.pdf: d10923 1 a10923 1

  • http://www.NetBSD.org/docs/pkgsrc/pkgsrc.ps: d10939 1 a10939 1

  • Run cd doc/guide to get to the d10944 1 a10944 1

  • Run bmake to check the pkgsrc d10949 1 a10949 1

  • (cd files && cvs d10951 1 a10951 1

  • Run bmake clean && bmake to d10955 1 a10955 1

    Run bmake regen to install and d10961 2 a10962 2 you need to synchronize them using cvs add or cvs delete in the htdocs @ 1.108 log @regen @ text @d116 1 a116 1

    5.3. Variables affecting the installion process
    a477 2
    3.1. Binary kits and available packages
    d827 1 a827 1
    5.3. Variables affecting the installion process
    d1098 1 a1098 212

    We provide a bootstrap kit in both source and binary form for other platforms than NetBSD, consisting of the pkg administration tools and other tools required to use pkgsrc and build packages.

    Note

    Older binary snapshots are available in the bootstrap-pkgsrc/archive directory on ftp.NetBSD.org.

    Table 3.1. Binary kits and available packages

  • See Section 19.6.10, “Packages installing scrollkeeper data files”. NetBSDSolarisLinuxFreeBSDOpenBSDIRIXAIXDragonFlyBSDOSF/1HP-UX

    Why does make show-var d9553 1 a9553 1 PKG_PHASE=wrapper to the above d9558 1 a9558 1 22.6. d9571 1 a9571 1 which is documented in the make(1) man page and which you d9582 1 a9582 1 22.7. d9590 1 a9590 1

    tech-pkg
    d9598 1 a9598 1
    pkgsrc-bugs
    d9600 1 a9600 1 send-pr(1) appear here. Please do not report your bugs here d9607 1 a9607 1 22.8. d9622 1 a9622 1
  • On the mailing list archives (see http://mail-index.NetBSD.org/), you can find discussions d9631 1 a9631 1 documentation is to run bmake d9644 1 a9644 1 information, use the cvs annotate command d9655 1 a9655 1 22.9. d9666 1 a9666 1

  • Run pkg_chk -N (from the d9671 1 a9671 1 — it contains a list of suggested new packages and a list of d9675 1 a9675 1 the pkgsrc-wip review d9696 1 a9696 1

    Quoting GNOME's web d9710 1 a9710 1

    Given that pkgsrc is NetBSD's official packaging system, d9712 1 a9712 1 under this operating system. Recently, DragonFly BSD also adopted d9723 1 a9723 1 straight to the pending d9754 1 a9754 1 autogen.sh scripts work appropriately.

  • d9805 1 a9805 1 devhelp will not be able to open them. You can d9823 1 a9823 1 make print-PLIST and ensure it is correct.

    d9838 1 a9838 1
    See Section 19.6.10, “Packages installing scrollkeeper data files”.See Section 19.6.19, “Packages installing hicolor theme icons”.See Section 19.6.14, “Packages installing extensions to the MIME database”.See Section 19.6.20, “Packages installing desktop files”.
    Platform Latest snapshot Binary kit Binary packages
    Darwin 5.5/powerpc (Mac OS X 10.1.5) 20021209 binary kit  
    Darwin 6.6/powerpc (Mac OS X 10.2.6) 20030623 binary kit  
    Darwin 7.6/powerpc (Mac OS X 10.3.6) 20041219 binary kit binary packages
    Darwin 7.8/powerpc (Mac OS X 10.3.8) 20050320 binary kit  
    Darwin 8.1/powerpc (Mac OS X 10.4.1) 20050625 binary kit binary packages
    Debian GNU Linux/i386 20031023 binary kit  
    Fedora Core 2 Linux/i386 20050618 binary kit  
    Fedora Core 4 Linux/i386 20060105 binary kit  
    FreeBSD 3.5/i386 20030411 binary kit  
    FreeBSD 4.7/i386 20021211 binary kit  
    FreeBSD 5.0/i386 20030411 binary kit  
    FreeBSD 5.1/i386 20030630 binary kit  
    FreeBSD 5.2.1/i386 20040227 binary kit  
    FreeBSD 5.3/i386 20050119 binary kit  
    HP-UX 11.11/hppa 20070421 binary kit  
    Interix 3.5 20061106 binary kit  
    IRIX 6.5 n32-bit ABI 20040911 binary kit binary packages
    IRIX 6.5 64-bit ABI 20040912 binary kit binary packages
    OpenBSD 3.2/i386 20030420 binary kit  
    OpenBSD 3.3/i386 20030503 binary kit  
    OpenBSD 3.5/i386 20040703 binary kit  
    OSF1 5.1/alpha 20070420 binary kit  
    Slackware Linux 8.1/i386 20030417 binary kit  
    Slackware Linux 9/i386 20040703 binary kit  
    Solaris 8/sparc 20050220 binary kit  
    Solaris 8/i386 20050220 binary kit  
    Solaris 9/sparc 20060713 binary kit  
    Solaris 9/i386 20030411 binary kit  

    Simply download the binary kit for your platform, and extract it into / e.g.

    # cd /
    # gzip -c -d /tmp/bootstrap-pkgsrc-SunOS-5.9-sparc-20031023.tar.gz \
      | tar -xpf -

    Of course, as with any binary distributions, you should verify the checksum against the SUM or CKSUM file and inspect the contents before extracting it.

    a1117 5

    Binary packages for the pkgsrc tools and an initial set of packages is available for supported platforms. An up-to-date list of these can be found on www.pkgsrc.org. Note that this only works for privileged builds that install into /usr/pkg.

    d1161 1 a1161 1

    darwindiskimage will mount the filesystem nosuid, which will cause problems for packages that depend on setgid. In the case of UFS, it will also mount the filesystem asynchronous, which is somewhat dangerous according to the mount(8) man page. In the case of HFSX, it will disable journalling.

    d1675 12 a1686 12

    To use binary packages, you need some tools to manage them. On NetBSD, these tools are already installed. On all other operating systems, you need to install them first. For some platforms, these tools are already packages in an archive, ready to be extracted in the / directory. They can be found in the bootstrap-pkgsrc directory of the FTP server.

    These pre-built package tools use /usr/pkg for the base directory, and /var/db/pkg for the database of installed packages. If you cannot use these directories for whatever reasons (maybe because you're not root), you have to build the package tools yourself, which is explained in Section 3.2, “Bootstrapping pkgsrc”.

    d1697 9 a1705 6 third step, the OS version and the “version” of pkgsrc. This directory contains a subdirectory called All, where (almost) all binary packages are stored. Almost, because vulnerable packages are moved to the vulnerable directory so they don't get installed accidentally.

    d1710 27 a1736 8

    If you have the files on a CD-ROM or downloaded them to your hard disk, you can install them with the following command (be sure to su to root first):

    # pkg_add /path/to/package.tgz

    If you have FTP access and you don't want to download the packages via FTP prior to installation, you can do this automatically by giving pkg_add an FTP URL:

    # pkg_add ftp://ftp.NetBSD.org/pub/pkgsrc/packages/OPSYS/ARCH/VERSIONS/All/package
    d1740 9 a1748 17

    To save some typing, you can set the PKG_PATH environment variable to a semicolon-separated list of paths (including remote URLs); trailing slashes are not allowed.

    Additionally to the All directory there exists a vulnerable directory to which binary packages with known vulnerabilities are moved, since removing them could cause missing dependencies. To use these packages, add the vulnerable directory to your PKG_PATH. However, you should run security/audit-packages regularly, especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration. An example PKG_PATH would be: ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/vulnerable Please note that semicolon (';') is a shell meta-character, so you'll probably have to quote it.

    d2076 1 a2076 1
    5.3. Variables affecting the installion process
    d2194 1 a2194 1 5.3. Variables affecting the installion process d7455 1 a7455 1 18.4.1. d7465 1 a7465 1 18.4.2. d7476 1 a7476 1 18.4.3. d7845 1 a7845 1

    You can also use wildcards in package dependences:

    d9477 1 a9477 1 22.1. d9493 1 a9493 1 22.2. d9511 1 a9511 1 22.3. d9529 1 a9529 1 22.4. d9542 1 a9542 1 22.5. d9558 1 a9558 1 22.6. d9582 1 a9582 1 22.7. d9607 1 a9607 1 22.8. d9655 1 a9655 1 22.9. d10803 5 a10807 4

    For those who only want to manage binary packages on systems other than NetBSD, we provide the package management tools in a separate, small tar file. Please note that most of these files are horribly outdated.

    d10838 4 a10841 2 operating system for which the packages have been built.

    @ 1.107 log @regen @ text @d461 2 a462 1
    C.6. current, d10990 2 a10991 1
    C.6. current, d11009 2 a11010 1 tools in a separate, small tar file.

    d11040 18 a11057 4
  • OPSYS is the name of the operating system for which the packages have been built,

  • ARCH is the hardware architecture,

  • OSVERSION is the version of the operating system,

  • TAG is either 200xQy for a stable branch, or head for packages built from the HEAD branch.

  • d11075 8 a11082 1
    C.6. current, @ 1.106 log @regen @ text @d279 1 d364 1 a364 1
    19.6.9. Packages installing GConf2 data files
    d3869 1 d3954 1 a3954 1
    19.6.9. Packages installing GConf2 data files
    d5568 1 a5568 1

    A package's buildlink3.mk file is d6319 1 d6329 27 d6527 23 d7658 1 a7658 1 18.4.1. d7668 1 a7668 1 18.4.2. d7679 1 a7679 1 18.4.3. d7751 1 a7751 1

    19.6.9. Packages installing GConf2 data files
    d9078 1 a9078 1 19.6.9. Packages installing GConf2 data files d9080 1 a9080 1 .entries files, used by GConf2, d9084 1 a9084 1
  • Include ../../devel/GConf2/schemas.mk d9086 1 a9086 1 takes care of rebuilding the GConf2 database at installation and d9088 1 a9088 1 GConf2 data files using some standard configure arguments. It d9099 1 a9099 1

  • Define the GCONF2_SCHEMAS variable in d9103 1 a9103 1

  • Define the GCONF2_ENTRIES variable in d9680 1 a9680 1 22.1. d9696 1 a9696 1 22.2. d9714 1 a9714 1 22.3. d9732 1 a9732 1 22.4. d9745 1 a9745 1 22.5. d9761 1 a9761 1 22.6. d9785 1 a9785 1 22.7. d9810 1 a9810 1 22.8. d9858 1 a9858 1 22.9. @ 1.105 log @regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.25 2007/08/15 06:32:38 rillig Exp $

    d130 3 a132 1
    6.3. Doing a bulk build of all packages
    d134 35 a168 29
    6.3.1. Configuration
    6.3.2. Other environmental considerations
    6.3.3. Operation
    6.3.4. What it does
    6.3.5. Disk space requirements
    6.3.6. Setting up a sandbox for chrooted builds
    6.3.7. Building a partial set of packages
    6.3.8. Uploading results of a bulk build
  • 6.4. Creating a multiple CD-ROM packages collection
    6.4.1. Example of cdpack
    7. Directory layout of the installed files
    7.1. File system layout in ${LOCALBASE}
    7.2. File system layout in ${VARBASE}
    8. Frequently Asked Questions
    8.1. Are there any mailing lists for pkg-related discussion?
    8.2. Where's the pkgviews documentation?
    8.3. Utilities for package management (pkgtools)
    8.4. How to use pkgsrc as non-root
    8.5. How to resume transfers when fetching distfiles?
    8.6. How can I install/use modular X.org from pkgsrc?
    8.7. How to fetch files from behind a firewall
    8.8. How do I tell make fetch to do passive FTP?
    8.9. How to fetch all distfiles at once
    8.10. What does “Don't know how to make d170 7 a176 7
    8.11. What does “Could not find bsd.own.mk” mean?
    8.12. Using 'sudo' with pkgsrc
    8.13. How do I change the location of configuration files?
    8.14. Automated security checks
    8.15. Why do some packages ignore my CFLAGS?
    8.16. A package does not build. What shall I do?
    8.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d181 1 a181 1
    9. Creating a new pkgsrc package from scratch
    d183 1 a183 1
    9.1. Common types of packages
    d185 2 a186 2
    9.1.1. Perl modules
    9.1.2. KDE applications
    d188 185 a372 185
    9.2. Examples
    9.2.1. How the www/nvu package came into pkgsrc
    10. Package components - files, directories and contents
    10.1. Makefile
    10.2. distinfo
    10.3. patches/*
    10.3.1. Structure of a single patch file
    10.3.2. Creating patch files
    10.3.3. Sources where the patch files come from
    10.3.4. Patching guidelines
    10.3.5. Feedback to the author
    10.4. Other mandatory files
    10.5. Optional files
    10.5.1. Files affecting the binary package
    10.5.2. Files affecting the build process
    10.5.3. Files affecting nothing at all
    10.6. work*
    10.7. files/*
    11. Programming in Makefiles
    11.1. Caveats
    11.2. Makefile variables
    11.2.1. Naming conventions
    11.3. Code snippets
    11.3.1. Adding things to a list
    11.3.2. Converting an internal list into an external list
    11.3.3. Passing variables to a shell command
    11.3.4. Quoting guideline
    11.3.5. Workaround for a bug in BSD Make
    12. PLIST issues
    12.1. RCS ID
    12.2. Semi-automatic PLIST generation
    12.3. Tweaking output of make print-PLIST
    12.4. Variable substitution in PLIST
    12.5. Man page compression
    12.6. Changing PLIST source with PLIST_SRC
    12.7. Platform-specific and differing PLISTs
    12.8. Sharing directories between packages
    13. Buildlink methodology
    13.1. Converting packages to use buildlink3
    13.2. Writing buildlink3.mk files
    13.2.1. Anatomy of a buildlink3.mk file
    13.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    13.3. Writing builtin.mk files
    13.3.1. Anatomy of a builtin.mk file
    13.3.2. Global preferences for native or pkgsrc software
    14. The pkginstall framework
    14.1. Files and directories outside the installation prefix
    14.1.1. Directory manipulation
    14.1.2. File manipulation
    14.2. Configuration files
    14.2.1. How PKG_SYSCONFDIR is set
    14.2.2. Telling the software where configuration files are
    14.2.3. Patching installations
    14.2.4. Disabling handling of configuration files
    14.3. System startup scripts
    14.3.1. Disabling handling of system startup scripts
    14.4. System users and groups
    14.5. System shells
    14.5.1. Disabling shell registration
    14.6. Fonts
    14.6.1. Disabling automatic update of the fonts databases
    15. Options handling
    15.1. Global default options
    15.2. Converting packages to use bsd.options.mk
    15.3. Option Names
    16. The build process
    16.1. Introduction
    16.2. Program location
    16.3. Directories used during the build process
    16.4. Running a phase
    16.5. The fetch phase
    16.5.1. What to fetch and where to get it from
    16.5.2. How are the files fetched?
    16.6. The checksum phase
    16.7. The extract phase
    16.8. The patch phase
    16.9. The tools phase
    16.10. The wrapper phase
    16.11. The configure phase
    16.12. The build phase
    16.13. The test phase
    16.14. The install phase
    16.15. The package phase
    16.16. Cleaning up
    16.17. Other helpful targets
    17. Tools needed for building or running
    17.1. Tools for pkgsrc builds
    17.2. Tools needed by packages
    17.3. Tools provided by platforms
    17.4. Questions regarding the tools
    18. Making your package work
    18.1. General operation
    18.1.1. Portability of packages
    18.1.2. How to pull in user-settable variables from mk.conf
    18.1.3. User interaction
    18.1.4. Handling licenses
    18.1.5. Restricted packages
    18.1.6. Handling dependencies
    18.1.7. Handling conflicts with other packages
    18.1.8. Packages that cannot or should not be built
    18.1.9. Packages which should not be deleted, once installed
    18.1.10. Handling packages with security problems
    18.1.11. How to handle incrementing versions when fixing an existing package
    18.1.12. Substituting variable text in the package files (the SUBST framework)
    18.2. Fixing problems in the fetch phase
    18.2.1. Packages whose distfiles aren't available for plain downloading
    18.2.2. How to handle modified distfiles with the 'old' name
    18.3. Fixing problems in the configure phase
    18.3.1. Shared libraries - libtool
    18.3.2. Using libtool on GNU packages that already support libtool
    18.3.3. GNU Autoconf/Automake
    18.4. Programming languages
    18.4.1. C, C++, and Fortran
    18.4.2. Java
    18.4.3. Packages containing perl scripts
    18.4.4. Other programming languages
    18.5. Fixing problems in the build phase
    18.5.1. Compiling C and C++ code conditionally
    18.5.2. How to handle compiler bugs
    18.5.3. Undefined reference to “...
    18.5.4. Running out of memory
    18.6. Fixing problems in the install phase
    18.6.1. Creating needed directories
    18.6.2. Where to install documentation
    18.6.3. Installing highscore files
    18.6.4. Adding DESTDIR support to packages
    18.6.5. Packages with hardcoded paths to other interpreters
    18.6.6. Packages installing perl modules
    18.6.7. Packages installing info files
    18.6.8. Packages installing man pages
    18.6.9. Packages installing GConf2 data files
    18.6.10. Packages installing scrollkeeper data files
    18.6.11. Packages installing X11 fonts
    18.6.12. Packages installing GTK2 modules
    18.6.13. Packages installing SGML or XML data
    18.6.14. Packages installing extensions to the MIME database
    18.6.15. Packages using intltool
    18.6.16. Packages installing startup scripts
    18.6.17. Packages installing TeX modules
    18.6.18. Packages supporting running binaries in d374 2 a375 2
    18.6.19. Packages installing hicolor theme icons
    18.6.20. Packages installing desktop files
    d377 1 a377 1
    18.7. Marking packages as having problems
    d379 2 a380 2
    19. Debugging
    20. Submitting and Committing
    d382 14 a395 14
    20.1. Submitting binary packages
    20.2. Submitting source packages (for non-NetBSD-developers)
    20.3. General notes when adding, updating, or removing packages
    20.4. Committing: Importing a package into CVS
    20.5. Updating a package to a newer version
    20.6. Moving a package in pkgsrc
    21. Frequently Asked Questions
    22. GNOME packaging and porting
    22.1. Meta packages
    22.2. Packaging a GNOME application
    22.3. Updating GNOME to a newer version
    22.4. Patching guidelines
    d400 1 a400 1
    23. Design of the pkgsrc infrastructure
    d402 3 a404 3
    23.1. The meaning of variable definitions
    23.2. Avoiding problems before they arise
    23.3. Variable evaluation
    d406 2 a407 2
    23.3.1. At load time
    23.3.2. At runtime
    d409 2 a410 2
    23.4. How can variables be specified?
    23.5. Designing interfaces for Makefile fragments
    d412 2 a413 2
    23.5.1. Procedures with parameters
    23.5.2. Actions taken on behalf of parameters
    d415 1 a415 1
    23.6. The order in which files are loaded
    d417 2 a418 2
    23.6.1. The order in bsd.prefs.mk
    23.6.2. The order in bsd.pkg.mk
    d421 1 a421 1
    24. Regression tests
    d423 3 a425 3
    24.1. The regression tests framework
    24.2. Running the regression tests
    24.3. Adding a new regression test
    d427 2 a428 2
    24.3.1. Overridable functions
    24.3.2. Helper functions
    d431 1 a431 1
    25. Porting pkgsrc
    d433 2 a434 2
    25.1. Porting pkgsrc to a new operating system
    25.2. Adding support for a new compiler
    d478 1 a478 1
    10.1. Patching examples d480 1 a480 1
    22.1. PLIST handling for GNOME packages d565 1 a565 1 — That means, if a package contains bugs, it's better to find d572 1 a572 1 — Like NetBSD has been ported to many hardware architectures, d841 3 a843 1
    6.3. Doing a bulk build of all packages
    d845 35 a879 29
    6.3.1. Configuration
    6.3.2. Other environmental considerations
    6.3.3. Operation
    6.3.4. What it does
    6.3.5. Disk space requirements
    6.3.6. Setting up a sandbox for chrooted builds
    6.3.7. Building a partial set of packages
    6.3.8. Uploading results of a bulk build
    6.4. Creating a multiple CD-ROM packages collection
    6.4.1. Example of cdpack
    7. Directory layout of the installed files
    7.1. File system layout in ${LOCALBASE}
    7.2. File system layout in ${VARBASE}
    8. Frequently Asked Questions
    8.1. Are there any mailing lists for pkg-related discussion?
    8.2. Where's the pkgviews documentation?
    8.3. Utilities for package management (pkgtools)
    8.4. How to use pkgsrc as non-root
    8.5. How to resume transfers when fetching distfiles?
    8.6. How can I install/use modular X.org from pkgsrc?
    8.7. How to fetch files from behind a firewall
    8.8. How do I tell make fetch to do passive FTP?
    8.9. How to fetch all distfiles at once
    8.10. What does “Don't know how to make d881 7 a887 7
    8.11. What does “Could not find bsd.own.mk” mean?
    8.12. Using 'sudo' with pkgsrc
    8.13. How do I change the location of configuration files?
    8.14. Automated security checks
    8.15. Why do some packages ignore my CFLAGS?
    8.16. A package does not build. What shall I do?
    8.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d2374 1 a2374 1 — it is an internal definition which refers to the d2379 1 a2379 1 See Section 10.3, “patches/*” for more a2611 13
    6.3. Doing a bulk build of all packages
    6.3.1. Configuration
    6.3.2. Other environmental considerations
    6.3.3. Operation
    6.3.4. What it does
    6.3.5. Disk space requirements
    6.3.6. Setting up a sandbox for chrooted builds
    6.3.7. Building a partial set of packages
    6.3.8. Uploading results of a bulk build
    6.4. Creating a multiple CD-ROM packages collection
    6.4.1. Example of cdpack
    d2637 1 a2637 1

    See Chapter 20, Submitting and Committing for information on how to submit d2643 86 a2728 1

    See Section 16.17, “Other helpful targets”.

    d2732 6 a2737 12 6.3. Doing a bulk build of all packages

    If you want to get a full set of precompiled binary packages, this section describes how to get them. Beware that the bulk build will remove all currently installed packages from your system!

    Having an FTP server configured either on the machine doing the bulk builds or on a nearby NFS server can help to make the packages available to other machines that can then save time by installing only the binary packages. See ftpd(8) for more information. If you use a remote NFS server's storage, be sure to not actually compile on NFS storage, as this slows things down a lot.

    d2740 1 a2740 1 6.3.1. Configuration d2743 1 a2743 1 6.3.1.1. build.conf d2757 1 a2757 1 6.3.1.2. mk.conf d2825 1 a2825 1 6.3.1.3. pre-build.local d2843 1 a2843 1 6.3.2. Other environmental considerations d2868 1 a2868 1 6.3.3. Operation d2898 1 a2898 1 6.3.4. What it does d2930 1 a2930 1 6.3.5. Disk space requirements d2947 1 a2947 1 6.3.6. Setting up a sandbox for chrooted builds d2991 1 a2991 1 e. g. for sysutils/aperture):

    d3017 1 a3017 1
  • Edit mk.conf, see Section 6.3.1.2, “mk.conf.

  • d3034 1 a3034 1 6.3.7. Building a partial set of packages d3057 1 a3057 1 6.3.8. Uploading results of a bulk build d3133 11 a3143 1 6.4. Creating a multiple CD-ROM packages collection d3154 1 a3154 1 6.4.1. Example of cdpack d3189 1 a3189 1 Chapter 7. Directory layout of the installed files d3193 2 a3194 2
    7.1. File system layout in ${LOCALBASE}
    7.2. File system layout in ${VARBASE}
    d3243 1 a3243 1 7.1. File system layout in ${LOCALBASE} d3309 1 a3309 1 7.2. File system layout in ${VARBASE} d3330 1 a3330 1 Chapter 8. Frequently Asked Questions d3334 10 a3343 10
    8.1. Are there any mailing lists for pkg-related discussion?
    8.2. Where's the pkgviews documentation?
    8.3. Utilities for package management (pkgtools)
    8.4. How to use pkgsrc as non-root
    8.5. How to resume transfers when fetching distfiles?
    8.6. How can I install/use modular X.org from pkgsrc?
    8.7. How to fetch files from behind a firewall
    8.8. How do I tell make fetch to do passive FTP?
    8.9. How to fetch all distfiles at once
    8.10. What does “Don't know how to make d3345 7 a3351 7
    8.11. What does “Could not find bsd.own.mk” mean?
    8.12. Using 'sudo' with pkgsrc
    8.13. How do I change the location of configuration files?
    8.14. Automated security checks
    8.15. Why do some packages ignore my CFLAGS?
    8.16. A package does not build. What shall I do?
    8.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d3359 1 a3359 1 8.1. Are there any mailing lists for pkg-related discussion? d3390 1 a3390 1 8.2. Where's the pkgviews documentation? d3397 1 a3397 1 8.3. Utilities for package management (pkgtools) d3474 1 a3474 1 8.4. How to use pkgsrc as non-root d3495 1 a3495 1 8.5. How to resume transfers when fetching distfiles? d3519 1 a3519 1 8.6. How can I install/use modular X.org from pkgsrc? d3535 1 a3535 1 8.7. How to fetch files from behind a firewall d3550 1 a3550 1 8.8. How do I tell make fetch to do passive FTP? d3570 1 a3570 1 8.9. How to fetch all distfiles at once d3602 1 a3602 1 8.10. What does “Don't know how to make d3616 1 a3616 1 8.11. What does “Could not find bsd.own.mk” mean? d3628 1 a3628 1 8.12. Using 'sudo' with pkgsrc d3646 1 a3646 1 8.13. How do I change the location of configuration files? d3668 1 a3668 1 8.14. Automated security checks d3702 1 a3702 1 8.15. Why do some packages ignore my CFLAGS? d3724 1 a3724 1 8.16. A package does not build. What shall I do? d3745 1 a3745 1 8.17. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean? d3770 1 a3770 1
    9. Creating a new pkgsrc package from scratch
    d3772 1 a3772 1
    9.1. Common types of packages
    d3774 2 a3775 2
    9.1.1. Perl modules
    9.1.2. KDE applications
    d3777 185 a3961 185
    9.2. Examples
    9.2.1. How the www/nvu package came into pkgsrc
    10. Package components - files, directories and contents
    10.1. Makefile
    10.2. distinfo
    10.3. patches/*
    10.3.1. Structure of a single patch file
    10.3.2. Creating patch files
    10.3.3. Sources where the patch files come from
    10.3.4. Patching guidelines
    10.3.5. Feedback to the author
    10.4. Other mandatory files
    10.5. Optional files
    10.5.1. Files affecting the binary package
    10.5.2. Files affecting the build process
    10.5.3. Files affecting nothing at all
    10.6. work*
    10.7. files/*
    11. Programming in Makefiles
    11.1. Caveats
    11.2. Makefile variables
    11.2.1. Naming conventions
    11.3. Code snippets
    11.3.1. Adding things to a list
    11.3.2. Converting an internal list into an external list
    11.3.3. Passing variables to a shell command
    11.3.4. Quoting guideline
    11.3.5. Workaround for a bug in BSD Make
    12. PLIST issues
    12.1. RCS ID
    12.2. Semi-automatic PLIST generation
    12.3. Tweaking output of make print-PLIST
    12.4. Variable substitution in PLIST
    12.5. Man page compression
    12.6. Changing PLIST source with PLIST_SRC
    12.7. Platform-specific and differing PLISTs
    12.8. Sharing directories between packages
    13. Buildlink methodology
    13.1. Converting packages to use buildlink3
    13.2. Writing buildlink3.mk files
    13.2.1. Anatomy of a buildlink3.mk file
    13.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    13.3. Writing builtin.mk files
    13.3.1. Anatomy of a builtin.mk file
    13.3.2. Global preferences for native or pkgsrc software
    14. The pkginstall framework
    14.1. Files and directories outside the installation prefix
    14.1.1. Directory manipulation
    14.1.2. File manipulation
    14.2. Configuration files
    14.2.1. How PKG_SYSCONFDIR is set
    14.2.2. Telling the software where configuration files are
    14.2.3. Patching installations
    14.2.4. Disabling handling of configuration files
    14.3. System startup scripts
    14.3.1. Disabling handling of system startup scripts
    14.4. System users and groups
    14.5. System shells
    14.5.1. Disabling shell registration
    14.6. Fonts
    14.6.1. Disabling automatic update of the fonts databases
    15. Options handling
    15.1. Global default options
    15.2. Converting packages to use bsd.options.mk
    15.3. Option Names
    16. The build process
    16.1. Introduction
    16.2. Program location
    16.3. Directories used during the build process
    16.4. Running a phase
    16.5. The fetch phase
    16.5.1. What to fetch and where to get it from
    16.5.2. How are the files fetched?
    16.6. The checksum phase
    16.7. The extract phase
    16.8. The patch phase
    16.9. The tools phase
    16.10. The wrapper phase
    16.11. The configure phase
    16.12. The build phase
    16.13. The test phase
    16.14. The install phase
    16.15. The package phase
    16.16. Cleaning up
    16.17. Other helpful targets
    17. Tools needed for building or running
    17.1. Tools for pkgsrc builds
    17.2. Tools needed by packages
    17.3. Tools provided by platforms
    17.4. Questions regarding the tools
    18. Making your package work
    18.1. General operation
    18.1.1. Portability of packages
    18.1.2. How to pull in user-settable variables from mk.conf
    18.1.3. User interaction
    18.1.4. Handling licenses
    18.1.5. Restricted packages
    18.1.6. Handling dependencies
    18.1.7. Handling conflicts with other packages
    18.1.8. Packages that cannot or should not be built
    18.1.9. Packages which should not be deleted, once installed
    18.1.10. Handling packages with security problems
    18.1.11. How to handle incrementing versions when fixing an existing package
    18.1.12. Substituting variable text in the package files (the SUBST framework)
    18.2. Fixing problems in the fetch phase
    18.2.1. Packages whose distfiles aren't available for plain downloading
    18.2.2. How to handle modified distfiles with the 'old' name
    18.3. Fixing problems in the configure phase
    18.3.1. Shared libraries - libtool
    18.3.2. Using libtool on GNU packages that already support libtool
    18.3.3. GNU Autoconf/Automake
    18.4. Programming languages
    18.4.1. C, C++, and Fortran
    18.4.2. Java
    18.4.3. Packages containing perl scripts
    18.4.4. Other programming languages
    18.5. Fixing problems in the build phase
    18.5.1. Compiling C and C++ code conditionally
    18.5.2. How to handle compiler bugs
    18.5.3. Undefined reference to “...
    18.5.4. Running out of memory
    18.6. Fixing problems in the install phase
    18.6.1. Creating needed directories
    18.6.2. Where to install documentation
    18.6.3. Installing highscore files
    18.6.4. Adding DESTDIR support to packages
    18.6.5. Packages with hardcoded paths to other interpreters
    18.6.6. Packages installing perl modules
    18.6.7. Packages installing info files
    18.6.8. Packages installing man pages
    18.6.9. Packages installing GConf2 data files
    18.6.10. Packages installing scrollkeeper data files
    18.6.11. Packages installing X11 fonts
    18.6.12. Packages installing GTK2 modules
    18.6.13. Packages installing SGML or XML data
    18.6.14. Packages installing extensions to the MIME database
    18.6.15. Packages using intltool
    18.6.16. Packages installing startup scripts
    18.6.17. Packages installing TeX modules
    18.6.18. Packages supporting running binaries in d3963 2 a3964 2
    18.6.19. Packages installing hicolor theme icons
    18.6.20. Packages installing desktop files
    d3966 1 a3966 1
    18.7. Marking packages as having problems
    d3968 2 a3969 2
    19. Debugging
    20. Submitting and Committing
    d3971 14 a3984 14
    20.1. Submitting binary packages
    20.2. Submitting source packages (for non-NetBSD-developers)
    20.3. General notes when adding, updating, or removing packages
    20.4. Committing: Importing a package into CVS
    20.5. Updating a package to a newer version
    20.6. Moving a package in pkgsrc
    21. Frequently Asked Questions
    22. GNOME packaging and porting
    22.1. Meta packages
    22.2. Packaging a GNOME application
    22.3. Updating GNOME to a newer version
    22.4. Patching guidelines
    d3991 1 a3991 1 Chapter 9. Creating a new pkgsrc package from scratch d3995 1 a3995 1
    9.1. Common types of packages
    d3997 2 a3998 2
    9.1.1. Perl modules
    9.1.2. KDE applications
    d4000 2 a4001 2
    9.2. Examples
    9.2.1. How the www/nvu package came into pkgsrc
    d4058 1 a4058 1 find instructions for the most common cases in the next section, Section 9.1, “Common types of packages”. After you have followed the instructions d4066 1 a4066 1 the various things that can go wrong in this phase, consult Chapter 18, Making your package work.

    d4089 1 a4089 1 9.1. Common types of packages d4092 1 a4092 1 9.1.1. Perl modules d4098 1 a4098 1 9.1.2. KDE applications d4106 1 a4106 1 9.2. Examples d4109 1 a4109 1 9.2.1. How the www/nvu package came into pkgsrc d4112 1 a4112 1 9.2.1.1. The initial package d4175 1 a4175 1 9.2.1.2. Fixing all kinds of problems to make the package work d4311 1 a4311 1 9.2.1.3. Installing the package d4325 1 a4325 1 Chapter 10. Package components - files, directories and contents d4329 16 a4344 16
    10.1. Makefile
    10.2. distinfo
    10.3. patches/*
    10.3.1. Structure of a single patch file
    10.3.2. Creating patch files
    10.3.3. Sources where the patch files come from
    10.3.4. Patching guidelines
    10.3.5. Feedback to the author
    10.4. Other mandatory files
    10.5. Optional files
    10.5.1. Files affecting the binary package
    10.5.2. Files affecting the build process
    10.5.3. Files affecting nothing at all
    d4346 2 a4347 2
    10.6. work*
    10.7. files/*
    d4355 1 a4355 1 10.1. Makefile d4412 1 a4412 1 Section 16.5, “The fetch phase”.

    d4489 1 a4489 1
  • If the package installs any info files, see Section 18.6.7, “Packages installing info files”.

  • d4494 1 a4494 1 10.2. distinfo d4505 1 a4505 1 patches directory (see Section 10.3, “patches/*”).

    d4517 1 a4517 1 10.3. patches/* d4529 1 a4529 1 10.3.1. Structure of a single patch file d4561 1 a4561 1 10.3.2. Creating patch files d4580 1 a4580 1 makepatchsum
    command, see Section 10.2, “distinfo.

    d4592 1 a4592 1 10.3.3. Sources where the patch files come from d4619 1 a4619 1 10.3.4. Patching guidelines d4629 1 a4629 1 kqueue support, add a check that detects kqueue itself — d4643 1 a4643 1

    Table 10.1. Patching examples

    d4733 1 a4733 1 10.3.5. Feedback to the author d4754 1 a4754 1 10.4. Other mandatory files d4766 1 a4766 1 inserted files. See Chapter 12, PLIST issues for more d4772 1 a4772 1 10.5. Optional files d4775 1 a4775 1 10.5.1. Files affecting the binary package d4784 1 a4784 1 pkg_create(1) for more information. See also Section 14.1, “Files and directories outside the installation prefix”.

    d4825 1 a4825 1 10.5.2. Files affecting the build process d4837 1 a4837 1 for the buildlink3 framework (see Chapter 13, Buildlink methodology).

    d4846 1 a4846 1 package-specific options (see Chapter 15, Options handling) that can be d4854 1 a4854 1 10.5.3. Files affecting nothing at all d4869 1 a4869 1 10.6. work* d4883 1 a4883 1 10.7. files/* d4903 1 a4903 1 Chapter 11. Programming in Makefiles d4907 10 a4916 10
    11.1. Caveats
    11.2. Makefile variables
    11.2.1. Naming conventions
    11.3. Code snippets
    11.3.1. Adding things to a list
    11.3.2. Converting an internal list into an external list
    11.3.3. Passing variables to a shell command
    11.3.4. Quoting guideline
    11.3.5. Workaround for a bug in BSD Make
    d4936 1 a4936 1 11.1. Caveats d4969 1 a4969 1 11.2. Makefile variables d5000 1 a5000 1

    No rule without exception—the .for d5027 1 a5027 1 11.2.1. Naming conventions d5044 1 a5044 1 11.3. Code snippets d5050 1 a5050 1 11.3.1. Adding things to a list d5071 1 a5071 1 11.3.2. Converting an internal list into an external list d5086 1 a5086 1 11.3.3. Passing variables to a shell command d5130 1 a5130 1 11.3.4. Quoting guideline d5213 1 a5213 1 11.3.5. Workaround for a bug in BSD Make d5229 1 a5229 1 Chapter 12. PLIST issues d5233 8 a5240 8

    12.1. RCS ID
    12.2. Semi-automatic PLIST generation
    12.3. Tweaking output of make print-PLIST
    12.4. Variable substitution in PLIST
    12.5. Man page compression
    12.6. Changing PLIST source with PLIST_SRC
    12.7. Platform-specific and differing PLISTs
    12.8. Sharing directories between packages
    d5253 1 a5253 1 12.1. RCS ID d5262 1 a5262 1 12.2. Semi-automatic PLIST generation d5265 1 a5265 1 was extracted. See Section 16.17, “Other helpful targets” for d5270 1 a5270 1 12.3. Tweaking output of make print-PLIST d5273 1 a5273 1 Section 12.8, “Sharing directories between packages”, you may have noticed that d5299 1 a5299 1 12.4. Variable substitution in PLIST d5344 1 a5344 1 following way, similar to MESSAGE_SUBST (see Section 10.5, “Optional files”):

    d5354 1 a5354 1 12.5. Man page compression d5367 1 a5367 1 12.6. Changing PLIST source with PLIST_SRC d5378 1 a5378 1 12.7. Platform-specific and differing PLISTs d5392 1 a5392 1 12.8. Sharing directories between packages d5447 1 a5447 1 Chapter 13. Buildlink methodology d5451 2 a5452 2
    13.1. Converting packages to use buildlink3
    13.2. Writing buildlink3.mk files
    d5454 2 a5455 2
    13.2.1. Anatomy of a buildlink3.mk file
    13.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d5457 1 a5457 1
    13.3. Writing builtin.mk files
    d5459 2 a5460 2
    13.3.1. Anatomy of a builtin.mk file
    13.3.2. Global preferences for native or pkgsrc software
    d5488 1 a5488 1 13.1. Converting packages to use buildlink3 d5565 1 a5565 1 13.2. Writing buildlink3.mk files d5585 1 a5585 1 13.2.1. Anatomy of a buildlink3.mk file d5722 1 a5722 1 13.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files d5745 1 a5745 1

    See Section 18.1.6, “Handling dependencies” for d5764 1 a5764 1 13.3. Writing builtin.mk files d5789 1 a5789 1 13.3.1. Anatomy of a builtin.mk file d5876 1 a5876 1 13.3.2. Global preferences for native or pkgsrc software d5909 1 a5909 1 Chapter 14. The pkginstall framework d5913 1 a5913 1

    14.1. Files and directories outside the installation prefix
    d5915 2 a5916 2
    14.1.1. Directory manipulation
    14.1.2. File manipulation
    d5918 1 a5918 1
    14.2. Configuration files
    d5920 12 a5931 12
    14.2.1. How PKG_SYSCONFDIR is set
    14.2.2. Telling the software where configuration files are
    14.2.3. Patching installations
    14.2.4. Disabling handling of configuration files
    14.3. System startup scripts
    14.3.1. Disabling handling of system startup scripts
    14.4. System users and groups
    14.5. System shells
    14.5.1. Disabling shell registration
    14.6. Fonts
    14.6.1. Disabling automatic update of the fonts databases
    d5957 1 a5957 1 14.1. Files and directories outside the installation prefix d5990 1 a5990 1 14.1.1. Directory manipulation d6017 1 a6017 1 14.1.2. File manipulation d6057 1 a6057 1 14.2. Configuration files d6069 1 a6069 1 14.2.1. How PKG_SYSCONFDIR is set d6117 1 a6117 1 automatically added to OWN_DIRS. See Section 14.1.1, “Directory manipulation” what this means.

    d6121 1 a6121 1 14.2.2. Telling the software where configuration files are d6138 1 a6138 1 14.2.3. Patching installations d6155 1 a6155 1 used. Check out Section 14.1.2, “File manipulation” for information d6167 1 a6167 1 14.2.4. Disabling handling of configuration files d6175 1 a6175 1 14.3. System startup scripts d6178 1 a6178 1 installation prefix. Therefore, the same rules described in Section 14.1, “Files and directories outside the installation prefix” apply, and the same solutions d6213 1 a6213 1 14.3.1. Disabling handling of system startup scripts d6223 1 a6223 1 14.4. System users and groups d6260 1 a6260 1 14.5. System shells d6275 1 a6275 1 14.5.1. Disabling shell registration d6283 1 a6283 1 14.6. Fonts d6301 1 a6301 1 14.6.1. Disabling automatic update of the fonts databases d6310 1 a6310 1 Chapter 15. Options handling d6314 3 a6316 3
    15.1. Global default options
    15.2. Converting packages to use bsd.options.mk
    15.3. Option Names
    d6328 1 a6328 1 15.1. Global default options d6336 1 a6336 1 15.2. Converting packages to use bsd.options.mk d6475 1 a6475 1 15.3. Option Names d6500 1 a6500 1 Chapter 16. The build process d6504 21 a6524 21
    16.1. Introduction
    16.2. Program location
    16.3. Directories used during the build process
    16.4. Running a phase
    16.5. The fetch phase
    16.5.1. What to fetch and where to get it from
    16.5.2. How are the files fetched?
    16.6. The checksum phase
    16.7. The extract phase
    16.8. The patch phase
    16.9. The tools phase
    16.10. The wrapper phase
    16.11. The configure phase
    16.12. The build phase
    16.13. The test phase
    16.14. The install phase
    16.15. The package phase
    16.16. Cleaning up
    16.17. Other helpful targets
    d6529 1 a6529 1 16.1. Introduction d6556 1 a6556 1 16.2. Program location d6567 1 a6567 1 these files are encoded. See Section 10.3, “patches/*” and Section 18.3.1, “Shared libraries - libtool” for more details.

    d6657 1 a6657 1 16.3. Directories used during the build process d6694 1 a6694 1 16.4. Running a phase d6704 1 a6704 1 16.5. The fetch phase d6711 1 a6711 1 16.5.1. What to fetch and where to get it from d6807 1 a6807 1 16.5.2. How are the files fetched? d6838 1 a6838 1 16.6. The checksum phase d6849 1 a6849 1 16.7. The extract phase d6889 1 a6889 1 16.8. The patch phase d6900 1 a6900 1 PATCH_DIST_ARGS. See Section 10.3, “patches/*” for more details.

    d6910 2 a6911 2 16.9. The tools phase

    This is covered in Chapter 17, Tools needed for building or running. d6916 1 a6916 1 16.10. The wrapper phase d6954 1 a6954 1 16.11. The configure phase d6999 1 a6999 1 16.12. The build phase d7034 1 a7034 1 16.13. The test phase d7039 1 a7039 1 16.14. The install phase d7124 1 a7124 1 16.15. The package phase d7144 1 a7144 1 16.16. Cleaning up d7152 1 a7152 1 16.17. Other helpful targets d7462 1 a7462 1

    See Section 12.3, “Tweaking output of make print-PLIST for more d7471 1 a7471 1 properly. See Section 6.3.1, “Configuration”). d7503 1 a7503 1 Chapter 17. Tools needed for building or running d7507 4 a7510 4

    17.1. Tools for pkgsrc builds
    17.2. Tools needed by packages
    17.3. Tools provided by platforms
    17.4. Questions regarding the tools
    d7534 1 a7534 1 17.1. Tools for pkgsrc builds d7547 1 a7547 1 17.2. Tools needed by packages d7570 1 a7570 1 17.3. Tools provided by platforms d7587 1 a7587 1 17.4. Questions regarding the tools d7590 1 a7590 1
    17.4.1. How do I add a new tool? d7592 1 a7592 1
    17.4.2. How do I get a list of all available d7595 1 a7595 1
    17.4.3. How can I get a list of all the tools that a d7605 1 a7605 1 17.4.1. d7615 1 a7615 1 17.4.2. d7626 1 a7626 1 17.4.3. d7644 1 a7644 1 Chapter 18. Making your package work d7648 1 a7648 1
    18.1. General operation
    d7650 58 a7707 58
    18.1.1. Portability of packages
    18.1.2. How to pull in user-settable variables from mk.conf
    18.1.3. User interaction
    18.1.4. Handling licenses
    18.1.5. Restricted packages
    18.1.6. Handling dependencies
    18.1.7. Handling conflicts with other packages
    18.1.8. Packages that cannot or should not be built
    18.1.9. Packages which should not be deleted, once installed
    18.1.10. Handling packages with security problems
    18.1.11. How to handle incrementing versions when fixing an existing package
    18.1.12. Substituting variable text in the package files (the SUBST framework)
    18.2. Fixing problems in the fetch phase
    18.2.1. Packages whose distfiles aren't available for plain downloading
    18.2.2. How to handle modified distfiles with the 'old' name
    18.3. Fixing problems in the configure phase
    18.3.1. Shared libraries - libtool
    18.3.2. Using libtool on GNU packages that already support libtool
    18.3.3. GNU Autoconf/Automake
    18.4. Programming languages
    18.4.1. C, C++, and Fortran
    18.4.2. Java
    18.4.3. Packages containing perl scripts
    18.4.4. Other programming languages
    18.5. Fixing problems in the build phase
    18.5.1. Compiling C and C++ code conditionally
    18.5.2. How to handle compiler bugs
    18.5.3. Undefined reference to “...
    18.5.4. Running out of memory
    18.6. Fixing problems in the install phase
    18.6.1. Creating needed directories
    18.6.2. Where to install documentation
    18.6.3. Installing highscore files
    18.6.4. Adding DESTDIR support to packages
    18.6.5. Packages with hardcoded paths to other interpreters
    18.6.6. Packages installing perl modules
    18.6.7. Packages installing info files
    18.6.8. Packages installing man pages
    18.6.9. Packages installing GConf2 data files
    18.6.10. Packages installing scrollkeeper data files
    18.6.11. Packages installing X11 fonts
    18.6.12. Packages installing GTK2 modules
    18.6.13. Packages installing SGML or XML data
    18.6.14. Packages installing extensions to the MIME database
    18.6.15. Packages using intltool
    18.6.16. Packages installing startup scripts
    18.6.17. Packages installing TeX modules
    18.6.18. Packages supporting running binaries in d7709 2 a7710 2
    18.6.19. Packages installing hicolor theme icons
    18.6.20. Packages installing desktop files
    d7712 1 a7712 1
    18.7. Marking packages as having problems
    d7717 1 a7717 1 18.1. General operation d7720 1 a7720 1 18.1.1. Portability of packages d7729 1 a7729 1 18.1.2. How to pull in user-settable variables from mk.conf d7757 1 a7757 1 18.1.3. User interaction d7786 1 a7786 1 18.1.4. Handling licenses d7875 1 a7875 1 18.1.5. Restricted packages d7943 1 a7943 1 18.1.6. Handling dependencies d7951 1 a7951 1 See Chapter 13, Buildlink methodology for more information.

    d8048 1 a8048 1 vulnerabilities file. See Section 18.1.10, “Handling packages with security problems” for more d8075 1 a8075 1 18.1.7. Handling conflicts with other packages d8101 1 a8101 1 18.1.8. Packages that cannot or should not be built d8129 1 a8129 1 18.1.9. Packages which should not be deleted, once installed d8140 1 a8140 1 18.1.10. Handling packages with security problems d8156 1 a8156 1 18.1.11. How to handle incrementing versions when fixing an existing package d8215 1 a8215 1 18.1.12. Substituting variable text in the package files (the SUBST framework) d8275 1 a8275 1 18.2. Fixing problems in the fetch phase d8278 1 a8278 1 18.2.1. Packages whose distfiles aren't available for plain downloading d8299 1 a8299 1 18.2.2. How to handle modified distfiles with the 'old' name d8316 1 a8316 1 (See Section 18.1.11, “How to handle incrementing versions when fixing an existing package” for more details.) d8332 1 a8332 1 18.3. Fixing problems in the configure phase d8335 1 a8335 1 18.3.1. Shared libraries - libtool d8460 1 a8460 1 18.3.2. Using libtool on GNU packages that already support libtool d8501 1 a8501 1 18.3.3. GNU Autoconf/Automake d8542 1 a8542 1 18.4. Programming languages d8545 1 a8545 1 18.4.1. C, C++, and Fortran d8549 1 a8549 1 framework, see Chapter 13, Buildlink methodology).

    d8560 1 a8560 1 18.4.2. Java d8583 1 a8583 1 18.4.3. Packages containing perl scripts d8595 1 a8595 1

    See Section 18.6.6, “Packages installing perl modules” for information d8600 1 a8600 1 18.4.4. Other programming languages d8610 1 a8610 1 18.5. Fixing problems in the build phase d8619 1 a8619 1 18.5.1. Compiling C and C++ code conditionally d8639 1 a8639 1 18.5.1.1. C preprocessor macros to identify the operating system d8665 1 a8665 1 18.5.1.2. C preprocessor macros to identify the hardware architecture d8674 1 a8674 1 18.5.1.3. C preprocessor macros to identify the compiler d8685 1 a8685 1 18.5.2. How to handle compiler bugs d8700 1 a8700 1 18.5.3. Undefined reference to “...” d8762 1 a8762 1 18.5.3.1. Special issue: The SunPro compiler d8788 1 a8788 1 18.5.4. Running out of memory d8802 1 a8802 1 18.6. Fixing problems in the install phase d8805 1 a8805 1 18.6.1. Creating needed directories d8821 1 a8821 1 18.6.2. Where to install documentation d8850 1 a8850 1 18.6.3. Installing highscore files d8871 1 a8871 1 18.6.4. Adding DESTDIR support to packages d8890 1 a8890 1 18.6.5. Packages with hardcoded paths to other interpreters d8912 1 a8912 1 18.6.6. Packages installing perl modules d8941 1 a8941 1 18.6.7. Packages installing info files d8988 1 a8988 1 18.6.8. Packages installing man pages d9020 1 a9020 1

    See Section 12.5, “Man page compression” for d9025 1 a9025 1 18.6.9. Packages installing GConf2 data files d9045 1 a9045 1 Section 8.13, “How do I change the location of configuration files?” for more information.

    d9059 1 a9059 1 18.6.10. Packages installing scrollkeeper data files d9079 1 a9079 1 18.6.11. Packages installing X11 fonts d9096 1 a9096 1 18.6.12. Packages installing GTK2 modules d9124 1 a9124 1 18.6.13. Packages installing SGML or XML data d9152 1 a9152 1 18.6.14. Packages installing extensions to the MIME database d9182 1 a9182 1 18.6.15. Packages using intltool d9193 1 a9193 1 18.6.16. Packages installing startup scripts d9204 1 a9204 1 18.6.17. Packages installing TeX modules d9242 1 a9242 1 18.6.18. Packages supporting running binaries in d9259 1 a9259 1 18.6.19. Packages installing hicolor theme icons d9281 1 a9281 1 18.6.20. Packages installing desktop files d9300 1 a9300 1 18.7. Marking packages as having problems d9327 1 a9327 1 Chapter 19. Debugging d9365 1 a9365 1 necessary; see Section 10.1, “Makefile.

    d9404 1 a9404 1
  • Submit (or commit, if you have cvs access); see Chapter 20, Submitting and Committing.

  • d9409 1 a9409 1 Chapter 20. Submitting and Committing d9413 6 a9418 6
    20.1. Submitting binary packages
    20.2. Submitting source packages (for non-NetBSD-developers)
    20.3. General notes when adding, updating, or removing packages
    20.4. Committing: Importing a package into CVS
    20.5. Updating a package to a newer version
    20.6. Moving a package in pkgsrc
    d9423 1 a9423 1 20.1. Submitting binary packages d9430 1 a9430 1 see Section 6.3.8, “Uploading results of a bulk build”.

    d9434 1 a9434 1 20.2. Submitting source packages (for non-NetBSD-developers) d9436 1 a9436 1 runs well; see Chapter 19, Debugging and the rest of this d9461 1 a9461 1 20.3. General notes when adding, updating, or removing packages d9494 1 a9494 1 20.4. Committing: Importing a package into CVS d9520 1 a9520 1 20.5. Updating a package to a newer version d9544 1 a9544 1 20.6. Moving a package in pkgsrc d9578 1 a9578 1 Chapter 21. Frequently Asked Questions d9586 1 a9586 1
    21.1. What is the difference between d9590 1 a9590 1
    21.2. What is the difference between d9594 1 a9594 1
    21.3. What is the difference between d9598 1 a9598 1
    21.4. What is the difference between d9603 1 a9603 1
    21.5. Why does make show-var d9607 1 a9607 1
    21.6. What does d9612 1 a9612 1
    21.7. Which mailing lists are there for package d9615 1 a9615 1
    21.8. Where is the pkgsrc d9618 1 a9618 1
    21.9. I have a little time to kill. What shall I d9627 1 a9627 1 21.1. d9643 1 a9643 1 21.2. d9661 1 a9661 1 21.3. d9679 1 a9679 1 21.4. d9692 1 a9692 1 21.5. d9708 1 a9708 1 21.6. d9732 1 a9732 1 21.7. d9757 1 a9757 1 21.8. d9805 1 a9805 1 21.9. d9821 1 a9821 1 — it contains a list of suggested new packages and a list of d9836 1 a9836 1 Chapter 22. GNOME packaging and porting d9840 4 a9843 4
    22.1. Meta packages
    22.2. Packaging a GNOME application
    22.3. Updating GNOME to a newer version
    22.4. Patching guidelines
    d9880 1 a9880 1 22.1. Meta packages d9914 1 a9914 1 22.2. Packaging a GNOME application d9975 1 a9975 1

    Table 22.1. PLIST handling for GNOME packages

    d9988 1 a9988 1 See Section 18.6.10, “Packages installing scrollkeeper data files”. d9994 1 a9994 1 See Section 18.6.19, “Packages installing hicolor theme icons”. d9999 1 a9999 1 See Section 18.6.14, “Packages installing extensions to the MIME database”. d10005 1 a10005 1 See Section 18.6.20, “Packages installing desktop files”. d10014 1 a10014 1 22.3. Updating GNOME to a newer version d10103 1 a10103 1 22.4. Patching guidelines d10107 1 a10107 1 fixes you do to a GNOME package to the mainstream developers (see Section 10.3.5, “Feedback to the author”). This is the only way to get d10124 1 a10124 1 guidelines (Section 10.3.4, “Patching guidelines”) for more d10141 1 a10141 1
    23. Design of the pkgsrc infrastructure
    d10143 3 a10145 3
    23.1. The meaning of variable definitions
    23.2. Avoiding problems before they arise
    23.3. Variable evaluation
    d10147 2 a10148 2
    23.3.1. At load time
    23.3.2. At runtime
    d10150 2 a10151 2
    23.4. How can variables be specified?
    23.5. Designing interfaces for Makefile fragments
    d10153 2 a10154 2
    23.5.1. Procedures with parameters
    23.5.2. Actions taken on behalf of parameters
    d10156 1 a10156 1
    23.6. The order in which files are loaded
    d10158 2 a10159 2
    23.6.1. The order in bsd.prefs.mk
    23.6.2. The order in bsd.pkg.mk
    d10162 1 a10162 1
    24. Regression tests
    d10164 3 a10166 3
    24.1. The regression tests framework
    24.2. Running the regression tests
    24.3. Adding a new regression test
    d10168 2 a10169 2
    24.3.1. Overridable functions
    24.3.2. Helper functions
    d10172 1 a10172 1
    25. Porting pkgsrc
    d10174 2 a10175 2
    25.1. Porting pkgsrc to a new operating system
    25.2. Adding support for a new compiler
    d10182 1 a10182 1 Chapter 23. Design of the pkgsrc infrastructure d10186 3 a10188 3
    23.1. The meaning of variable definitions
    23.2. Avoiding problems before they arise
    23.3. Variable evaluation
    d10190 2 a10191 2
    23.3.1. At load time
    23.3.2. At runtime
    d10193 2 a10194 2
    23.4. How can variables be specified?
    23.5. Designing interfaces for Makefile fragments
    d10196 2 a10197 2
    23.5.1. Procedures with parameters
    23.5.2. Actions taken on behalf of parameters
    d10199 1 a10199 1
    23.6. The order in which files are loaded
    d10201 2 a10202 2
    23.6.1. The order in bsd.prefs.mk
    23.6.2. The order in bsd.pkg.mk
    d10212 1 a10212 1 23.1. The meaning of variable definitions d10243 1 a10243 1 23.2. Avoiding problems before they arise d10267 1 a10267 1 23.3. Variable evaluation d10270 1 a10270 1 23.3.1. At load time d10312 1 a10312 1 23.3.2. At runtime d10320 1 a10320 1 23.4. How can variables be specified? d10329 1 a10329 1 23.5. Designing interfaces for Makefile fragments d10336 1 a10336 1 23.5.1. Procedures with parameters d10339 2 a10340 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d10370 1 a10370 1 23.5.2. Actions taken on behalf of parameters d10382 1 a10382 1 23.6. The order in which files are loaded d10397 1 a10397 1 23.6.1. The order in bsd.prefs.mk d10422 1 a10422 1 23.6.2. The order in bsd.pkg.mk d10455 1 a10455 1 Chapter 24. Regression tests d10459 3 a10461 3
    24.1. The regression tests framework
    24.2. Running the regression tests
    24.3. Adding a new regression test
    d10463 2 a10464 2
    24.3.1. Overridable functions
    24.3.2. Helper functions
    d10478 1 a10478 1 24.1. The regression tests framework d10483 1 a10483 1 24.2. Running the regression tests d10491 1 a10491 1 24.3. Adding a new regression test d10500 1 a10500 1 24.3.1. Overridable functions d10527 1 a10527 1 24.3.2. Helper functions d10550 1 a10550 1 Chapter 25. Porting pkgsrc d10554 2 a10555 2
    25.1. Porting pkgsrc to a new operating system
    25.2. Adding support for a new compiler
    d10564 1 a10564 1 25.1. Porting pkgsrc to a new operating system d10614 1 a10614 1 25.2. Adding support for a new compiler d10711 1 a10711 1 PLIST (see Chapter 10, Package components - files, directories and contents) @ 1.104 log @regen @ text @d557 1 a557 1 — That means, if a package contains bugs, it's better to find d564 1 a564 1 — Like NetBSD has been ported to many hardware architectures, d1365 5 d1875 6 a1880 28

    To use binary packages, you need some tools to manage them. On NetBSD, these tools are already installed. On all other operating systems, you need to install them first. For the following platforms, prebuilt versions of the package tools are available and can simply be downloaded and unpacked in the / directory:

    Platform URL
    Solaris 9 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/bootstrap-pkgsrc/
    Solaris 10 http://public.enst.fr/pkgsrc/packages/bootstrap-pkgsrc/
    d1890 13 a1902 41

    To install binary packages, you first need to know from where to get them. You can get them on CD-ROMs, DVDs, or via FTP or HTTP.

    The binary packages can be found at the following locations.

    Platform URL
    NetBSD ftp://ftp.NetBSD.org/pub/NetBSD/packages/
    Solaris 9 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/
    Solaris 10 http://public.enst.fr/pkgsrc/packages/

    Most of these directories contain binary packages for multiple platforms. Select the appropriate subdirectories, according to your machine architecture and operating system, until you find a directory called All. This directory contains all the binary packages. Further, there are subdirectories for categories that contain symbolic links that point to the actual binary package in ../All. This directory layout is used for all package repositories, no matter if they are accessed via HTTP, FTP, NFS, CD-ROM, or the local filesystem.

    d1914 1 a1914 1
    # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All/package
    d2358 1 a2358 1 — it is an internal definition which refers to the d2909 1 a2909 1 e. g. for sysutils/aperture):

    d4537 1 a4537 1 kqueue support, add a check that detects kqueue itself — d4908 1 a4908 1

    No rule without exception—the .for d7513 1 a7513 1 17.4.1. d7523 1 a7523 1 17.4.2. d7534 1 a7534 1 17.4.3. d9535 1 a9535 1 21.1. d9551 1 a9551 1 21.2. d9569 1 a9569 1 21.3. d9587 1 a9587 1 21.4. d9600 1 a9600 1 21.5. d9616 1 a9616 1 21.6. d9640 1 a9640 1 21.7. d9665 1 a9665 1 21.8. d9713 1 a9713 1 21.9. d9729 1 a9729 1 — it contains a list of suggested new packages and a list of d10247 2 a10248 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.103 log @regen. @ text @d33 2 a34 2

    $NetBSD: pkgsrc.xml,v 1.24 2006/11/11 05:39:09 rillig Exp $

    d557 1 a557 1 — That means, if a package contains bugs, it's better to find d564 1 a564 1 — Like NetBSD has been ported to many hardware architectures, d1424 1 a1424 1
  • An example /etc/mk.conf file will be placed in d1622 1 a1622 1 /etc/mk.conf. Particularly, make sure that you do not d1641 1 a1641 1 in /etc/mk.conf. Otherwise, pkgsrc will assume you d1678 1 a1678 1 in /etc/mk.conf:

    d1686 1 a1686 1 /etc/mk.conf:

    d1725 1 a1725 1

    An example /etc/mk.conf file will be placed in d1728 1 a1728 1 /etc/mk.conf d1789 1 a1789 1 mk.conf file:

    d1807 1 a1807 2 following lines in your mk.conf file:

    d1826 1 a1826 1 to your mk.conf:

    d2102 1 a2102 1 mk.conf. You should not try to use multiple d2131 1 a2131 1 to your mk.conf.

    d2152 1 a2152 1 /etc/mk.conf file, d2240 1 a2240 1

    Some packages look in /etc/mk.conf to d2245 1 a2245 1 /etc/mk.conf to save having to remember to d2318 1 a2318 1

    The whole pkgsrc system is configured in a single file, usually d2403 1 a2403 1 — it is an internal definition which refers to the d2411 1 a2411 1 the mk.conf file used by a package's d2589 1 a2589 1 /etc/mk.conf to select which options to d2599 1 a2599 1 $ grep "PKG.*OPTION" /etc/mk.conf d2623 1 a2623 1 /etc/mk.conf for each option. To ease d2628 1 a2628 1 /etc/mk.conf to use the options framework d2720 3 a2722 3 6.3.1.2. /etc/mk.conf

    You may want to set variables in /etc/mk.conf. d2727 1 a2727 1 accepts all licenses.

    d2954 1 a2954 1 e. g. for sysutils/aperture):

    d2980 1 a2980 1
  • Edit /etc/mk.conf, see Section 6.3.1.2, “/etc/mk.conf”.

  • d3002 1 a3002 1 in /etc/mk.conf, the variables

    d3191 1 a3191 1 files of the packages, as well as pkgsrc's mk.conf d3452 1 a3452 1 /etc/mk.conf. If, during a fetch step, an incomplete d3476 1 a3476 1 /etc/mk.conf:

    d3515 1 a3515 1 /etc/mk.conf file: d3565 1 a3565 1 environment or in /etc/mk.conf.

    d3588 1 a3588 1 following into your /etc/mk.conf, somewhere d3608 1 a3608 1 /etc/mk.conf) to point to your preferred configuration d3658 1 a3658 1 mk.conf, these flags are passed in d4426 1 a4426 1 /etc/mk.conf, the first component of d4582 1 a4582 1 kqueue support, add a check that detects kqueue itself — d4953 1 a4953 1

    No rule without exception—the .for d6285 1 a6285 1 This variable should be set in /etc/mk.conf.

    d6380 1 a6380 1 pairs that map legacy /etc/mk.conf variables to d7196 1 a7196 1 command line or in /etc/mk.conf to d7268 2 a7269 3 command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    d7396 1 a7396 2 if PKG_DEVELOPER is set in /etc/mk.conf.

    d7558 1 a7558 1 17.4.1. d7568 1 a7568 1 17.4.2. d7579 1 a7579 1 17.4.3. d7682 1 a7682 1 18.1.2. How to pull in user-settable variables from mk.conf d7686 1 a7686 1 which is /etc/mk.conf by default. When you d7799 1 a7799 1 printed above can be added to /etc/mk.conf to d9150 1 a9150 1 /etc/mk.conf. This option will copy the scripts d9286 1 a9286 2
  • Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

  • d9441 1 a9441 1 in /etc/mk.conf if your local login name is d9580 1 a9580 1 21.1. d9596 1 a9596 1 21.2. d9614 1 a9614 1 21.3. d9632 1 a9632 1 21.4. d9645 1 a9645 1 21.5. d9661 1 a9661 1 21.6. d9685 1 a9685 1 21.7. d9710 1 a9710 1 21.8. d9758 1 a9758 1 21.9. d9774 1 a9774 1 — it contains a list of suggested new packages and a list of d10292 2 a10293 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d10357 2 a10358 5 in MAKECONF. If the bmake command from pkgsrc is used, MAKECONF defaults to ${prefix}/etc/mk.conf. With the native make(1) command on NetBSD, it defaults to /etc/mk.conf. After that, those variables @ 1.102 log @regen @ text @d116 2 a117 1
    5.3. Selecting and configuring the compiler
    d119 3 a121 3
    5.3.1. Selecting the compiler
    5.3.2. Additional flags to the compiler (CFLAGS)
    5.3.3. Additional flags to the linker (LDFLAGS)
    d123 2 a124 2
    5.4. Developer/advanced settings
    5.5. Selecting Build Options
    d156 5 a160 6
    8.6. How can I install/use XFree86 from pkgsrc?
    8.7. How can I install/use X.org from pkgsrc?
    8.8. How to fetch files from behind a firewall
    8.9. How do I tell make fetch to do passive FTP?
    8.10. How to fetch all distfiles at once
    8.11. What does “Don't know how to make d162 7 a168 7
    8.12. What does “Could not find bsd.own.mk” mean?
    8.13. Using 'sudo' with pkgsrc
    8.14. How do I change the location of configuration files?
    8.15. Automated security checks
    8.16. Why do some packages ignore my CFLAGS?
    8.17. A package does not build. What shall I do?
    8.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d350 15 a364 14
    18.6.4. Packages with hardcoded paths to other interpreters
    18.6.5. Packages installing perl modules
    18.6.6. Packages installing info files
    18.6.7. Packages installing man pages
    18.6.8. Packages installing GConf2 data files
    18.6.9. Packages installing scrollkeeper data files
    18.6.10. Packages installing X11 fonts
    18.6.11. Packages installing GTK2 modules
    18.6.12. Packages installing SGML or XML data
    18.6.13. Packages installing extensions to the MIME database
    18.6.14. Packages using intltool
    18.6.15. Packages installing startup scripts
    18.6.16. Packages installing TeX modules
    18.6.17. Packages supporting running binaries in d366 2 a367 2
    18.6.18. Packages installing hicolor theme icons
    18.6.19. Packages installing desktop files
    d557 1 a557 1 — That means, if a package contains bugs, it's better to find d564 1 a564 1 — Like NetBSD has been ported to many hardware architectures, d819 2 a820 1
    5.3. Selecting and configuring the compiler
    d822 3 a824 3
    5.3.1. Selecting the compiler
    5.3.2. Additional flags to the compiler (CFLAGS)
    5.3.3. Additional flags to the linker (LDFLAGS)
    d826 2 a827 2
    5.4. Developer/advanced settings
    5.5. Selecting Build Options
    d859 5 a863 6
    8.6. How can I install/use XFree86 from pkgsrc?
    8.7. How can I install/use X.org from pkgsrc?
    8.8. How to fetch files from behind a firewall
    8.9. How do I tell make fetch to do passive FTP?
    8.10. How to fetch all distfiles at once
    8.11. What does “Don't know how to make d865 7 a871 7
    8.12. What does “Could not find bsd.own.mk” mean?
    8.13. Using 'sudo' with pkgsrc
    8.14. How do I change the location of configuration files?
    8.15. Automated security checks
    8.16. Why do some packages ignore my CFLAGS?
    8.17. A package does not build. What shall I do?
    8.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d979 1 a979 1 update -d d981 1 a981 1 diff -up d2308 2 a2309 1
    5.3. Selecting and configuring the compiler
    d2311 3 a2313 3
    5.3.1. Selecting the compiler
    5.3.2. Additional flags to the compiler (CFLAGS)
    5.3.3. Additional flags to the linker (LDFLAGS)
    d2315 2 a2316 2
    5.4. Developer/advanced settings
    5.5. Selecting Build Options
    d2404 1 a2404 1 — it is an internal definition which refers to the d2426 33 a2458 1 5.3. Selecting and configuring the compiler d2461 1 a2461 1 5.3.1. Selecting the compiler d2504 1 a2504 1 5.3.2. Additional flags to the compiler (CFLAGS) d2519 1 a2519 1 5.3.3. Additional flags to the linker (LDFLAGS) d2537 1 a2537 1 5.4. Developer/advanced settings d2569 1 a2569 1 5.5. Selecting Build Options d2955 1 a2955 1 e. g. for sysutils/aperture):

    d3293 5 a3297 6
    8.6. How can I install/use XFree86 from pkgsrc?
    8.7. How can I install/use X.org from pkgsrc?
    8.8. How to fetch files from behind a firewall
    8.9. How do I tell make fetch to do passive FTP?
    8.10. How to fetch all distfiles at once
    8.11. What does “Don't know how to make d3299 7 a3305 7
    8.12. What does “Could not find bsd.own.mk” mean?
    8.13. Using 'sudo' with pkgsrc
    8.14. How do I change the location of configuration files?
    8.15. Automated security checks
    8.16. Why do some packages ignore my CFLAGS?
    8.17. A package does not build. What shall I do?
    8.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    d3316 1 a3316 1
  • pkgsrc-users: d3325 1 a3325 1

  • pkgsrc-bulk: d3328 1 a3328 1

  • pkgsrc-changes: d3473 2 a3474 13 8.6. How can I install/use XFree86 from pkgsrc?

    If you want to use XFree86 from pkgsrc instead of your system's own X11 (/usr/X11R6, /usr/openwin, ...), you will have to add the following line into /etc/mk.conf:

    X11_TYPE=XFree86
    

    8.7. How can I install/use X.org from pkgsrc?

    If you want to use X.org from pkgsrc instead of your system's own X11 d3479 1 a3479 1 X11_TYPE=xorg d3483 2 a3484 2

    The DragonFly operating system defaults to using this X.org X11 implementation from pkgsrc.

    d3489 1 a3489 1 8.8. How to fetch files from behind a firewall
    d3504 1 a3504 1 8.9. How do I tell make fetch to do passive FTP? d3524 1 a3524 1 8.10. How to fetch all distfiles at once d3556 1 a3556 1 8.11. What does “Don't know how to make d3570 1 a3570 1 8.12. What does “Could not find bsd.own.mk” mean? d3582 1 a3582 1 8.13. Using 'sudo' with pkgsrc d3600 1 a3600 1 8.14. How do I change the location of configuration files? d3622 1 a3622 1 8.15. Automated security checks d3656 1 a3656 1 8.16. Why do some packages ignore my CFLAGS? d3678 1 a3678 1 8.17. A package does not build. What shall I do? d3699 1 a3699 1 8.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean? d3901 15 a3915 14
    18.6.4. Packages with hardcoded paths to other interpreters
    18.6.5. Packages installing perl modules
    18.6.6. Packages installing info files
    18.6.7. Packages installing man pages
    18.6.8. Packages installing GConf2 data files
    18.6.9. Packages installing scrollkeeper data files
    18.6.10. Packages installing X11 fonts
    18.6.11. Packages installing GTK2 modules
    18.6.12. Packages installing SGML or XML data
    18.6.13. Packages installing extensions to the MIME database
    18.6.14. Packages using intltool
    18.6.15. Packages installing startup scripts
    18.6.16. Packages installing TeX modules
    18.6.17. Packages supporting running binaries in d3917 2 a3918 2
    18.6.18. Packages installing hicolor theme icons
    18.6.19. Packages installing desktop files
    d4443 1 a4443 1
  • If the package installs any info files, see Section 18.6.6, “Packages installing info files”.

  • d4583 1 a4583 1 kqueue support, add a check that detects kqueue itself — d4954 1 a4954 1

    No rule without exception—the .for d7561 1 a7561 1 17.4.1. d7571 1 a7571 1 17.4.2. d7582 1 a7582 1 17.4.3. d7649 15 a7663 14

    18.6.4. Packages with hardcoded paths to other interpreters
    18.6.5. Packages installing perl modules
    18.6.6. Packages installing info files
    18.6.7. Packages installing man pages
    18.6.8. Packages installing GConf2 data files
    18.6.9. Packages installing scrollkeeper data files
    18.6.10. Packages installing X11 fonts
    18.6.11. Packages installing GTK2 modules
    18.6.12. Packages installing SGML or XML data
    18.6.13. Packages installing extensions to the MIME database
    18.6.14. Packages using intltool
    18.6.15. Packages installing startup scripts
    18.6.16. Packages installing TeX modules
    18.6.17. Packages supporting running binaries in d7665 2 a7666 2
    18.6.18. Packages installing hicolor theme icons
    18.6.19. Packages installing desktop files
    d8551 1 a8551 1

    See Section 18.6.5, “Packages installing perl modules” for information d8827 20 a8846 1 18.6.4. Packages with hardcoded paths to other interpreters d8868 1 a8868 1 18.6.5. Packages installing perl modules d8897 1 a8897 1 18.6.6. Packages installing info files d8944 1 a8944 1 18.6.7. Packages installing man pages d8981 1 a8981 1 18.6.8. Packages installing GConf2 data files d9001 1 a9001 1 Section 8.14, “How do I change the location of configuration files?” for more information.

    d9015 1 a9015 1 18.6.9. Packages installing scrollkeeper data files d9035 1 a9035 1 18.6.10. Packages installing X11 fonts d9052 1 a9052 1 18.6.11. Packages installing GTK2 modules d9080 1 a9080 1 18.6.12. Packages installing SGML or XML data d9108 1 a9108 1 18.6.13. Packages installing extensions to the MIME database d9138 1 a9138 1 18.6.14. Packages using intltool d9149 1 a9149 1 18.6.15. Packages installing startup scripts d9160 1 a9160 1 18.6.16. Packages installing TeX modules d9198 1 a9198 1 18.6.17. Packages supporting running binaries in d9215 1 a9215 1 18.6.18. Packages installing hicolor theme icons d9237 1 a9237 1 18.6.19. Packages installing desktop files d9399 1 a9399 1 http://www.NetBSD.org/Misc/send-pr.html, d9584 1 a9584 1 21.1. d9600 1 a9600 1 21.2. d9618 1 a9618 1 21.3. d9636 1 a9636 1 21.4. d9649 1 a9649 1 21.5. d9665 1 a9665 1 21.6. d9689 1 a9689 1 21.7. d9697 1 a9697 1
    tech-pkg
    d9705 1 a9705 1
    pkgsrc-bugs
    d9714 1 a9714 1 21.8. d9762 1 a9762 1 21.9. d9778 1 a9778 1 — it contains a list of suggested new packages and a list of d9945 1 a9945 1 See Section 18.6.9, “Packages installing scrollkeeper data files”. d9951 1 a9951 1 See Section 18.6.18, “Packages installing hicolor theme icons”. d9956 1 a9956 1 See Section 18.6.13, “Packages installing extensions to the MIME database”. d9962 1 a9962 1 See Section 18.6.19, “Packages installing desktop files”. d10296 2 a10297 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.101 log @regen @ text @d450 1 a450 1
    C.5. packages*: Binary packages
    d10852 1 a10852 1
    C.5. packages*: Binary packages
    d10896 20 a10915 14 C.5. packages*: Binary packages

    These directories contain binary packages. Those directories that have a branch name (200xQy) contain packages from that particular branch. The directory packages contains binary packages from pkgsrc-current. (However, this does not necessarily mean that the packages are still current anymore.)

    Below the packages* directories are directories that distinguish the packages by operating system and version, the next directory level specifies the hardware architecture.

    In each of the platform-specific directories, there is a whole binary packages collection. It has a directory called @ 1.100 log @regen @ text @d6 1 a6 1 d967 17 d4518 2 d7538 1 a7538 1 17.4.1. d7548 1 a7548 1 17.4.2. d7559 1 a7559 1 17.4.3. d9541 1 a9541 1 21.1. d9557 1 a9557 1 21.2. d9575 1 a9575 1 21.3. d9593 1 a9593 1 21.4. d9606 1 a9606 1 21.5. d9622 1 a9622 1 21.6. d9646 1 a9646 1 21.7. d9671 1 a9671 1 21.8. d9719 1 a9719 1 21.9. d10953 2 a10954 2

  • http://www.NetBSD.org/Documentation/pkgsrc/

  • http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: d10956 1 a10956 1

  • http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: @ 1.99 log @regen @ text @d349 1 a349 1

    18.6.3. Installing score files
    d940 1 a940 1 release=pkgsrc d1509 1 a1509 1 interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi: d1619 1 a1619 1 PKGSRC_COMPILER= mipspro d1646 2 a1647 2 env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ ac_cv___attribute__=yes ./bootstrap d1662 1 a1662 1 PKGSRC_COMPILER= icc d1670 1 a1670 1 ICCBASE= /opt/icc d1714 5 a1718 5 .ifdef BSD_PKG_MK # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here .else # OpenBSD stuff .endif d1773 4 a1776 4 CC= cc CXX= CC CPP= cc -E CXXCPP= CC -E d1792 2 a1793 2 PKGSRC_COMPILER= sunpro ABI= 64 d1811 2 a1812 2 CONFIG_SHELL= ${LOCALBASE}/bin/bash WRAPPER_SHELL= ${LOCALBASE}/bin/bash d2458 1 a2458 1 CFLAGS+= -your -flags d2480 1 a2480 1 LDFLAGS+= -your -linkerflags d2679 9 a2687 9 PACKAGES?= ${_PKGSRCDIR}/packages/${MACHINE_ARCH} WRKOBJDIR?= /usr/tmp/pkgsrc # build here instead of in pkgsrc BSDSRCDIR= /usr/src BSDXSRCDIR= /usr/xsrc # for x11/xservers OBJHOSTNAME?= yes # use work.`hostname` FAILOVER_FETCH= yes # insist on the correct checksum PKG_DEVELOPER?= yes _ACCEPTABLE= yes d2770 5 a2774 5 ( cd /usr/pkgsrc/security/ssh ; make bulk-install ) if [ -f /usr/pkg/etc/rc.d/sshd ]; then /usr/pkg/etc/rc.d/sshd fi d3112 4 a3115 4 LOCALBASE= /usr/pkg PKG_SYSCONFBASE= /usr/pkg/etc VARBASE= /var PKG_DBDIR= /var/db/pkg d3120 4 a3123 4 LOCALBASE= ${HOME}/pkg PKG_SYSCONFBASE= ${HOME}/pkg/etc VARBASE= ${HOME}/pkg/var PKG_DBDIR= ${HOME}/pkg/var/db/pkg d3287 1 a3287 1 % echo subscribe listname | mail majordomo@@NetBSD.org d3415 4 a3418 4 FETCH_CMD= wget FETCH_BEFORE_ARGS= --passive-ftp FETCH_RESUME_ARGS= -c FETCH_OUTPUT_ARGS= -O d3429 1 a3429 1 X11_TYPE=XFree86 d3440 1 a3440 1 X11_TYPE=xorg d3459 2 a3460 2 ftp_proxy=ftp://orpheus.amdahl.com:80/ http_proxy=http://orpheus.amdahl.com:80/ d3554 3 a3556 3 .if exists(${LOCALBASE}/bin/sudo) SU_CMD= ${LOCALBASE}/bin/sudo /bin/sh -c .endif d3861 1 a3861 1
    18.6.3. Installing score files
    d3952 1 a3952 1 [...] d3954 3 a3956 3 BUILD_DEPENDS+= lua>=5.0:../../lang/lua DEPENDS+= screen-[0-9]*:../../misc/screen DEPENDS+= screen>=4.0:../../misc/screen d3958 1 a3958 1 [...] d3960 3 a3962 3 .include "../../category/package/buildlink3.mk" .include "../../devel/glib2/buildlink3.mk" .include "../../mk/bsd.pkg.mk" d4032 2 a4033 2 $ mkdir www/nvu $ cd www/nvu d4038 1 a4038 1 $ url2pkg http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2 d4047 2 a4048 2 # $NetBSD$ # d4050 9 a4058 9 DISTNAME= nvu-1.0-sources PKGNAME= nvu-1.0 CATEGORIES= www MASTER_SITES= http://cvs.nvu.com/download/ EXTRACT_SUFX= .tar.bz2 MAINTAINER= rillig@@NetBSD.org HOMEPAGE= http://cvs.nvu.com/ COMMENT= Web Authoring System d4060 2 a4061 2 # url2pkg-marker (please do not remove this line.) .include "../../mk/bsd.pkg.mk" d4066 15 a4080 15 url2pkg> Running "make makesum" ... => Required installed package digest>=20010302: digest-20060826 found => Fetching nvu-1.0-sources.tar.bz2 Requesting http://cvs.nvu.com/download/nvu-1.0-sources.tar.bz2 100% |*************************************| 28992 KB 150.77 KB/s 00:00 ETA 29687976 bytes retrieved in 03:12 (150.77 KB/s) url2pkg> Running "make extract" ... => Required installed package digest>=20010302: digest-20060826 found => Checksum SHA1 OK for nvu-1.0-sources.tar.bz2 => Checksum RMD160 OK for nvu-1.0-sources.tar.bz2 work.bacc -> /tmp/roland/pkgsrc/www/nvu/work.bacc ===> Installing dependencies for nvu-1.0 ===> Overriding tools for nvu-1.0 ===> Extracting for nvu-1.0 url2pkg> Adjusting the Makefile. d4082 1 a4082 1 Remember to correct CATEGORIES, HOMEPAGE, COMMENT, and DESCR when you're done! d4084 1 a4084 1 Good luck! (See pkgsrc/doc/pkgsrc.txt for some more help :-) d4097 12 a4108 12 $ bmake => Required installed package digest>=20010302: digest-20060826 found => Checksum SHA1 OK for nvu-1.0-sources.tar.bz2 => Checksum RMD160 OK for nvu-1.0-sources.tar.bz2 ===> Patching for nvu-1.0 ===> Creating toolchain wrappers for nvu-1.0 ===> Configuring for nvu-1.0 [...] configure: error: Perl 5.004 or higher is required. [...] WARNING: Please add USE_TOOLS+=perl to the package Makefile. [...] d4117 7 a4123 7 $ bmake clean ===> Cleaning for nvu-1.0 $ bmake [...] *** /tmp/roland/pkgsrc/www/nvu/work.bacc/.tools/bin/make is not \ GNU Make. You will not be able to build Mozilla without GNU Make. [...] d4128 4 a4131 4 [...] checking for GTK - version >= 1.2.0... no *** Could not run GTK test program, checking why... [...] d4136 8 a4143 8 $ echo ../../*/gtk* [many packages ...] $ echo ../../*/gtk ../../x11/gtk $ echo ../../*/gtk2 ../../x11/gtk2 $ echo ../../*/gtk2/bui* ../../x11/gtk2/buildlink3.mk d4157 3 a4159 3 [...] .include "../../x11/gtk2/buildlink3.mk" .include "../../mk/bsd.pkg.mk d4164 10 a4173 10 [...] checking for gtk-config... /home/roland/pkg/bin/gtk-config checking for GTK - version >= 1.2.0... no *** Could not run GTK test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occured. This usually means GTK was incorrectly installed *** or that you have moved GTK since it was installed. In the latter case, you *** may want to edit the gtk-config script: /home/roland/pkg/bin/gtk-config configure: error: Test for GTK failed. [...] d4184 7 a4190 7 [...] cc -o xpidl.o -c -DOSTYPE=\"NetBSD3\" -DOSARCH=\"NetBSD\" -I../../../dist/include/xpcom -I../../../dist/include -I/tmp/roland/pkgsrc/www/nvu/work.bacc/mozilla/dist/include/nspr -I/usr/X11R6/include -fPIC -DPIC -I/home/roland/pkg/include -I/usr/include -I/usr/X11R6/include -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -pedantic -O2 -I/home/roland/pkg/include -I/usr/include -Dunix -pthread -pipe -DDEBUG -D_DEBUG -DDEBUG_roland -DTRACING -g -I/home/roland/pkg/include/glib/glib-1.2 -I/home/roland/pkg/lib/glib/include -I/usr/pkg/include/orbit-1.0 -I/home/roland/pkg/include -I/usr/include -I/usr/X11R6/include -include ../../../mozilla-config.h -DMOZILLA_CLIENT -Wp,-MD,.deps/xpidl.pp xpidl.c In file included from xpidl.c:42: xpidl.h:53:24: libIDL/IDL.h: No such file or directory In file included from xpidl.c:42: xpidl.h:132: error: parse error before "IDL_ns" [...] d4196 4 a4199 4 $ echo ../../*/*idl* ../../devel/py-idle ../../wip/idled ../../x11/acidlaunch $ echo ../../*/*IDL* ../../net/libIDL d4209 2 a4210 2 CPPFLAGS+= -I${BUILDLINK_PREFIX.libIDL}/include/libIDL-2.0 BUILDLINK_TRANSFORM+= -l:IDL:IDL-2 d4227 5 a4231 5 $ bmake CHECK_FILES=no install [...] $ bmake print-PLIST >PLIST $ bmake deinstall $ bmake install d4312 9 a4320 9 archivers cross geography meta-pkgs security audio databases graphics misc shells benchmarks devel ham multimedia sysutils biology editors inputmethod net textproc cad emulators lang news time chat finance mail parallel wm comms fonts math pkgtools www converters games mbone print x11 d4510 1 a4510 1 PATCHDIR= ${.CURDIR}/../xemacs/patches d4571 6 a4576 4
    case ${target_os} in
    		netbsd*) have_kvm=yes ;;
    		*)       have_kvm=no  ;;
    		esac
    d4579 3 a4581 1
    AC_CHECK_LIB(kvm, kvm_open, have_kvm=yes, have_kvm=no)
    d4587 5 a4591 3
    #if defined(__NetBSD__)
    		#  include <sys/event.h>
    		#endif
    d4594 5 a4598 3
    #if defined(HAVE_SYS_EVENT_H)
    		#  include <sys/event.h>
    		#endif
    d4604 12 a4615 10
    int
    	      monitor_file(...)
    	      {
    	      #if defined(__NetBSD__)
    	      int fd = kqueue();
    	      ...
    	      #else
    	      ...
    	      #endif
    	      }
    d4618 12 a4629 10
    int
    		monitor_file(...)
    		{
    		#if defined(HAVE_KQUEUE)
    		int fd = kqueue();
    		...
    		#else
    		...
    		#endif
    		}
    d4714 2 a4715 2 MESSAGE_SUBST+= SOMEVAR="somevalue" d4809 2 a4810 2 FILESDIR=${.CURDIR}/../xemacs/files d4857 10 a4866 10 wrong: @@echo "line 1" > ${.TARGET} @@echo "line 2" >> ${.TARGET} @@false correct: @@echo "line 1" > ${.TARGET}.tmp @@echo "line 2" >> ${.TARGET}.tmp @@false @@mv ${.TARGET}.tmp ${.TARGET} d4964 10 a4973 10 STRING= foo * bar `date` INT_LIST= # empty ANOTHER_INT_LIST= apache-[0-9]*:../../www/apache EXT_LIST= # empty ANOTHER_EXT_LIST= a=b c=d INT_LIST+= ${STRING} # 1 INT_LIST+= ${ANOTHER_INT_LIST} # 2 EXT_LIST+= ${STRING:Q} # 3 EXT_LIST+= ${ANOTHER_EXT_LIST} # 4 d4985 4 a4988 4 EXT_LIST= # empty .for i in ${INT_LIST} EXT_LIST+= ${i:Q}"" .endfor d5003 2 a5004 2 STRING= foo bar < > * `date` $$HOME ' " EXT_LIST= string=${STRING:Q} x=second\ item d5006 8 a5013 8 all: echo ${STRING} # 1 echo "${STRING}" # 2 echo "${STRING:Q}" # 3 echo ${STRING:Q} # 4 echo x${STRING:Q} | sed 1s,.,, # 5 printf "%s\\n" ${STRING:Q}"" # 6 env ${EXT_LIST} /bin/sh -c 'echo "$$string"; echo "$$x"' d5066 9 a5074 9 CPPFLAGS= # empty CPPFLAGS+= -Wundef -DPREFIX=\"${PREFIX:Q}\" CPPFLAGS+= ${MY_CPPFLAGS} CONFIGURE_ARGS+= CPPFLAGS=${CPPFLAGS:M*:Q} all: echo x${CPPFLAGS:Q}x # leading and trailing whitespace echo x${CONFIGURE_ARGS}x # properly trimmed d5094 11 a5104 11 EMPTY= # empty empty_test: for i in a ${EMPTY:Q} c; do \ echo "$$i"; \ done for_test: .for i in a:\ a:\test.txt echo ${i:Q} echo "foo" .endfor d5131 1 a5131 1 VAR:= ${VAR:N${_othervar_:C/-//}} d5169 1 a5169 1 @@comment $NetBSD$ d5200 1 a5200 1 PRINT_PLIST_AWK+= /^libdata\/foo/ { next; } d5206 1 a5206 1 PRINT_PLIST_AWK+= /^@@dirrm share\/specific/ { print "@@comment " $$0; next; } d5258 1 a5258 1 PLIST_SUBST+= SOMEVAR="somevalue" d5314 1 a5314 1 @@unexec ${RMDIR} %D/path/to/shared/directory 2>/dev/null || ${TRUE} d5333 2 a5334 2 % cd .../pkgsrc % ls -d */*-dirs d5345 1 a5345 1 USE_DIRS+= xdg-1.1 d5424 2 a5425 2 DEPENDS+= foo>=1.1.0:../../category/foo d5428 2 a5429 2 .include "../../category/foo/buildlink3.mk" d5434 3 a5436 3 BUILDLINK_API_DEPENDS.foo+= foo>=1.1.0 .include "../../category/foo/buildlink3.mk" d5502 1 a5502 1 # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $ d5504 2 a5505 2 BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ TIFF_BUILDLINK3_MK:= ${TIFF_BUILDLINK3_MK}+ d5507 3 a5509 3 .if !empty(BUILDLINK_DEPTH:M+) BUILDLINK_DEPENDS+= tiff .endif d5511 2 a5512 2 BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Ntiff} BUILDLINK_PACKAGES+= tiff d5514 4 a5517 4 .if !empty(TIFF_BUILDLINK3_MK:M+) BUILDLINK_API_DEPENDS.tiff+= tiff>=3.6.1 BUILDLINK_PKGSRCDIR.tiff?= ../../graphics/tiff .endif # TIFF_BUILDLINK3_MK d5519 2 a5520 2 .include "../../devel/zlib/buildlink3.mk" .include "../../graphics/jpeg/buildlink3.mk" d5522 2 a5523 2 BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} d5705 36 a5740 39 .if !defined(IS_BUILTIN.foo) # # IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo" # genuinely exists in the system or not. # IS_BUILTIN.foo?= no # BUILTIN_PKG.foo should be set here if "foo" is built-in and its package # version can be determined. # . if !empty(IS_BUILTIN.foo:M[yY][eE][sS]) BUILTIN_PKG.foo?= foo-1.0 . endif .endif # IS_BUILTIN.foo .if !defined(USE_BUILTIN.foo) USE_BUILTIN.foo?= ${IS_BUILTIN.foo} . if defined(BUILTIN_PKG.foo) . for _depend_ in ${BUILDLINK_API_DEPENDS.foo} . if !empty(USE_BUILTIN.foo:M[yY][eE][sS]) USE_BUILTIN.foo!= \ if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo}; then \ ${ECHO} "yes"; \ else \ ${ECHO} "no"; \ fi . endif . endfor . endif .endif # USE_BUILTIN.foo CHECK_BUILTIN.foo?= no .if !empty(CHECK_BUILTIN.foo:M[nN][oO]) # # Here we place code that depends on whether USE_BUILTIN.foo is set to # "yes" or "no". # .endif # CHECK_BUILTIN.foo d5809 3 a5811 3 PREFER_PKGSRC= yes PREFER_NATIVE= getopt skey tcp_wrappers d5920 1 a5920 1 MAKE_DIRS_PERMS+= ${VARBASE}/foo/private ${ROOT_USER} ${ROOT_GROUP} 0700 d5959 1 a5959 1 SUPPORT_FILES_PERMS+= ${PREFIX}/share/somefile ${VARBASE}/somefile ${ROOT_USER} ${ROOT_GROUP} 0700 d6041 1 a6041 1 CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} d6071 2 a6072 2 EGDIR= ${PREFIX}/share/doc/mutt/samples CONF_FILES= ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc d6105 1 a6105 1 RCD_SCRIPTS+= cupsd d6142 1 a6142 1 user:group d6159 1 a6159 1 group d6183 1 a6183 1 PKG_SHELL= ${PREFIX}/bin/zsh d6209 1 a6209 1 FONTS_DIRS.ttf= ${PREFIX}/lib/X11/fonts/TTF d6257 45 a6301 45 PKG_OPTIONS_VAR= PKG_OPTIONS.wibble PKG_SUPPORTED_OPTIONS= wibble-foo ldap PKG_OPTIONS_OPTIONAL_GROUPS= database PKG_OPTIONS_GROUP.database= mysql pgsql PKG_SUGGESTED_OPTIONS= wibble-foo PKG_OPTIONS_LEGACY_VARS+= WIBBLE_USE_OPENLDAP:ldap PKG_OPTIONS_LEGACY_OPTS+= foo:wibble-foo .include "../../mk/bsd.prefs.mk" # this package was previously named wibble2 .if defined(PKG_OPTIONS.wibble2) PKG_LEGACY_OPTIONS+= ${PKG_OPTIONS.wibble2} PKG_OPTIONS_DEPRECATED_WARNINGS+= \ "Deprecated variable PKG_OPTIONS.wibble2 used, use ${PKG_OPTIONS_VAR} instead." .endif .include "../../mk/bsd.options.mk" # Package-specific option-handling ### ### FOO support ### .if !empty(PKG_OPTIONS:Mwibble-foo) CONFIGURE_ARGS+= --enable-foo .endif ### ### LDAP support ### .if !empty(PKG_OPTIONS:Mldap) . include "../../databases/openldap-client/buildlink3.mk" CONFIGURE_ARGS+= --enable-ldap=${BUILDLINK_PREFIX.openldap-client} .endif ### ### database support ### .if !empty(PKG_OPTIONS:Mmysql) . include "../../mk/mysql.buildlink3.mk" .endif .if !empty(PKG_OPTIONS:Mpgsql) . include "../../mk/pgsql.buildlink3.mk" .endif d6382 1 a6382 1 .if !empty(PKG_OPTIONS:Moption) d6546 5 a6550 5 EVAL_PREFIX+= GTKDIR=gtk+ CONFIGURE_ARGS+= --with-guile-prefix=${LOCALBASE:Q} CONFIGURE_ARGS+= --with-gtk-prefix=${GTKDIR:Q} CONFIGURE_ARGS+= --enable-multibyte d6555 2 a6556 2 GTKDIR_DEFAULT= ${LOCALBASE} d6640 2 a6641 2 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} additional-files.tar.gz d6652 6 a6657 6 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} DISTFILES+= foo-file.tar.gz SITES.foo-file.tar.gz= \ http://www.somewhere.com/somehow/ \ http://www.somewhereelse.com/mirror/somehow/ d6668 2 a6669 2 MASTER_SITES= http://www.example.com/download.cgi?file= d6675 26 a6700 26 ${MASTER_SITE_APACHE} ${MASTER_SITE_BACKUP} ${MASTER_SITE_CYGWIN} ${MASTER_SITE_DEBIAN} ${MASTER_SITE_FREEBSD} ${MASTER_SITE_FREEBSD_LOCAL} ${MASTER_SITE_GENTOO} ${MASTER_SITE_GNOME} ${MASTER_SITE_GNU} ${MASTER_SITE_GNUSTEP} ${MASTER_SITE_IFARCHIVE} ${MASTER_SITE_KDE} ${MASTER_SITE_MOZILLA} ${MASTER_SITE_MYSQL} ${MASTER_SITE_OPENOFFICE} ${MASTER_SITE_PERL_CPAN} ${MASTER_SITE_PGSQL} ${MASTER_SITE_R_CRAN} ${MASTER_SITE_SOURCEFORGE} ${MASTER_SITE_SOURCEFORGE_JP} ${MASTER_SITE_SUNSITE} ${MASTER_SITE_SUSE} ${MASTER_SITE_TEX_CTAN} ${MASTER_SITE_XCONTRIB} ${MASTER_SITE_XEMACS} d6711 3 a6713 3 MASTER_SITES= ${MASTER_SITE_GNU:=subdirectory/name/} MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=project_name/} d6726 2 a6727 2 ${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS} d6881 6 a6886 5 .for d in ${CONFIGURE_DIRS} cd ${WRKSRC} && cd ${d} && env ${CONFIGURE_ENV} \ ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} .endfor d6915 9 a6923 6 .for d in ${BUILD_DIRS} cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \ ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} \ -f ${MAKE_FILE} ${BUILD_TARGET} .endfor d6960 9 a6968 6 .for d in ${INSTALL_DIRS} cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \ ${MAKE_PROGRAM} ${INSTALL_MAKE_FLAGS} \ -f ${MAKE_FILE} ${BUILD_TARGET} .endfor d7519 1 a7519 1 17.4.1. d7529 1 a7529 1 17.4.2. d7540 1 a7540 1 17.4.3. d7606 1 a7606 1
    18.6.3. Installing score files
    d7688 1 a7688 1 INTERACTIVE_STAGE= build d7692 1 a7692 1 INTERACTIVE_STAGE= configure install d7744 1 a7744 1 LICENSE= xv-license d7750 6 a7755 6 % make ===> xv-3.10anb9 has an unacceptable license: xv-license. ===> To view the license, enter "/usr/bin/make show-license". ===> To indicate acceptance, add this line to your /etc/mk.conf: ===> ACCEPTABLE_LICENSES+=xv-license *** Error code 1 d7763 1 a7763 1 ACCEPTABLE_LICENSES+=xv-license d7877 1 a7877 1 <pre-req-package-name>:../../<category>/<pre-req-package> d7888 1 a7888 1 .include "../../graphics/jpeg/buildlink3.mk" d7897 1 a7897 1 BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf d7906 1 a7906 1 DEPENDS+= xpm-3.4j:../../graphics/xpm d7910 1 a7910 1 DEPENDS+= xpm-[0-9]*:../../graphics/xpm d7925 1 a7925 1 DEPENDS+= tiff>=3.5.4:../../graphics/tiff d7939 1 a7939 1 ABI_DEPENDS+= tiff>=3.6.1:../../graphics/tiff d7973 1 a7973 1 DEPENDS+= teTeX-[0-9]*:../../print/teTeX d8001 1 a8001 1 CONFLICTS= Xaw-Xpm-[0-9]* d8005 1 a8005 1 CONFLICTS= Xaw3d-[0-9]* d8078 2 a8079 2 DISTNAME= foo-17.42 PKGREVISION= 9 d8090 1 a8090 1 DISTNAME= foo-17.43 d8103 10 a8112 7
          Changing HOMEPAGE, MAINTAINER,
          or comments in Makefile.
          Changing build variables if the resulting binary package is the same.
          Changing DESCR.
          Adding PKG_OPTIONS if the default options don't change.
        
    d8115 8 a8122 5
          Security fixes
          Changes or additions to a patch file
          Changes to the PLIST
        
    d8135 7 a8141 7 SUBST_CLASSES+= fix-paths SUBST_STAGE.fix-paths= pre-configure SUBST_MESSAGE.fix-paths= Fixing absolute paths. SUBST_FILES.fix-paths= src/*.c SUBST_FILES.fix-paths+= scripts/*.sh SUBST_SED.fix-paths= -e 's,"/usr/local,"${PREFIX},g' SUBST_SED.fix-paths+= -e 's,"/var/log,"${VARBASE}/log,g' d8205 3 a8207 3 FETCH_MESSAGE= "Please download the files" FETCH_MESSAGE+= " "${DISTFILES:Q} FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"." d8276 5 a8280 2 ${LIBTOOL} --mode=link ${CC} -o ${.TARGET:.a=.la} ${OBJS:.o=.lo} \ -rpath ${PREFIX}/lib -version-info major:minor d8295 1 a8295 1 So, libtool library versions are described by three integers: d8297 2 a8298 2 CURRENT The most recent interface number that this library implements. d8300 2 a8301 2 REVISION The implementation number of the CURRENT interface. d8303 5 a8307 5 AGE The difference between the newest and oldest interfaces that this library implements. In other words, the library implements all the interface numbers in the range from number `CURRENT - AGE' to `CURRENT'. d8309 2 a8310 2 If two libraries have identical CURRENT and AGE numbers, then the dynamic linker chooses the library with the greater REVISION number. d8346 1 a8346 1 ${LIBTOOL} --mode=link ${CC} -o someprog -L../somelib -lsomelib d8350 1 a8350 1 ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la d8360 1 a8360 1 ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib d8421 3 a8423 3 AUTOCONF_REQD= 2.50 # if default version is not good enough USE_TOOLS+= autoconf # use "autoconf213" for autoconf-2.13 ... d8425 2 a8426 2 pre-configure: cd ${WRKSRC}; autoconf d8428 1 a8428 1 ... d8432 7 a8438 8 AUTOMAKE_REQD= 1.7.1 # if default version is not good enough USE_TOOLS+= automake # use "automake14" for automake-1.4 ... pre-configure: cd ${WRKSRC}; \ aclocal; autoheader; \ automake -a --foreign -i; autoconf d8440 1 a8440 1 ... d8556 6 a8561 6 #include <sys/param.h> #if (defined(BSD) && BSD >= 199306) /* BSD-specific code goes here */ #else /* non-BSD-specific code goes here */ #endif d8566 8 a8573 8 FreeBSD __FreeBSD__ DragonFly __DragonFly__ Interix __INTERIX IRIX __sgi (TODO: get a definite source for this) Linux linux, __linux, __linux__ NetBSD __NetBSD__ OpenBSD __OpenBSD__ Solaris sun, __sun d8580 3 a8582 3 i386 i386, __i386, __i386__ MIPS __mips SPARC sparc, __sparc d8589 4 a8592 4 GCC __GNUC__ (major version), __GNUC_MINOR__ MIPSpro _COMPILER_VERSION (0x741 for MIPSpro 7.41) SunPro __SUNPRO_C (0x570 for Sun C 5.7) SunPro C++ __SUNPRO_CC (0x580 for Sun C++ 5.8) d8679 1 a8679 1 extern int extern_func(int); d8681 3 a8683 3 static inline int inline_func(int x) { d8685 1 a8685 1 } d8687 2 a8688 2 int main(void) { d8690 1 a8690 1 } d8724 2 a8725 2 ${INSTALL_DATA_DIR} ${PREFIX}/dir1 ${INSTALL_DATA_DIR} ${PREFIX}/dir2 d8763 1 a8763 1 18.6.3. Installing score files d8791 5 a8795 5 REPLACE_INTERPRETER+= tcl REPLACE.tcl.old= .*/bin/tclsh REPLACE.tcl.new= ${PREFIX}/bin/tclsh REPLACE_FILES.tcl= # list of tcl scripts which need to be fixed, # relative to ${WRKSRC}, just as in REPLACE_PERL d8823 1 a8823 1 PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist d9399 2 a9400 2 $ cd .../pkgsrc/category/pkgname $ cvs import pkgsrc/category/pkgname TNF pkgsrc-base d9522 1 a9522 1 21.1. d9538 1 a9538 1 21.2. d9556 1 a9556 1 21.3. d9574 1 a9574 1 21.4. d9587 1 a9587 1 21.5. d9603 1 a9603 1 21.6. d9627 1 a9627 1 21.7. d9652 1 a9652 1 21.8. d9700 1 a9700 1 21.9. d9819 2 a9820 1
    GNU_CONFIGURE=yes
    d9822 2
    a9823 1
    USE_TOOLS+=gmake
    d10151 1 a10151 1 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} additional-files.tar.gz d10186 3 a10188 3 CONFIGURE_ARGS= # none CFLAGS= -O CONFIGURE_ARGS+= CFLAGS=${CFLAGS:Q} d10190 1 a10190 1 CONFIGURE_ARGS:= ${CONFIGURE_ARGS} d10192 1 a10192 1 CFLAGS+= -Wall d10545 2 a10546 2 # $NetBSD$ # d10548 3 a10550 3 DISTNAME= bison-1.25 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_GNU} d10552 3 a10554 3 MAINTAINER= thorpej@@NetBSD.org HOMEPAGE= http://www.gnu.org/software/bison/bison.html COMMENT= GNU yacc clone d10556 2 a10557 2 GNU_CONFIGURE= yes INFO_FILES= bison.info d10559 1 a10559 1 .include "../../mk/bsd.pkg.mk" d10566 3 a10568 3 GNU version of yacc. Can make re-entrant parsers, and numerous other improvements. Why you would want this when Berkeley yacc(1) is part of the NetBSD source tree is beyond me. d10575 5 a10579 5 @@comment $NetBSD$ bin/bison man/man1/bison.1.gz share/bison.simple share/bison.hairy @ 1.98 log @Regen. @ text @d2786 6 a2791 2

    During the bulk build, all packages will be removed!

    d7503 1 a7503 1 17.4.1. d7513 1 a7513 1 17.4.2. d7524 1 a7524 1 17.4.3. d7702 1 a7702 1 accidentially building a package with a non-free license; d7758 1 a7758 1 programs under the new licenes. The higher-level point is that d9498 1 a9498 1 21.1. d9514 1 a9514 1 21.2. d9532 1 a9532 1 21.3. d9550 1 a9550 1 21.4. d9563 1 a9563 1 21.5. d9579 1 a9579 1 21.6. d9603 1 a9603 1 21.7. d9628 1 a9628 1 21.8. d9676 1 a9676 1 21.9. @ 1.97 log @regen @ text @d644 4 d910 1 a910 1 2006Q4.

    d924 2 a925 2

    The tar file for the stable branch 2006Q4 is in the directory pkgsrc-2006Q4 and is also called pkgsrc-2006Q4.tar.gz.

    d972 1 a972 1 checkout -rpkgsrc-2006Q4 -P pkgsrc
    for the stable d1025 1 a1025 1 “-rpkgsrc-2006Q4” option.

    d1177 6 d1219 6 d3545 4 a3548 2 security/sudo) and then put the following into your /etc/mk.conf:

    d7004 4 a7007 10 beginning of the install phase. If this variable is set, NO_MTREE=“yes” is assumed, which means that the package claims to create all needed directories itself before installing files to it. Therefore this variable should only be set in Makefiles that are under control of the package's author. The directories are created with the correct ownership, depending on their name.

    d7499 1 a7499 1 17.4.1. d7509 1 a7509 1 17.4.2. d7520 1 a7520 1 17.4.3. d7680 29 a7708 14

    A package may be covered by a license which the user has or has not agreed to accept. For these cases, pkgsrc contains a mechanism to note that a package is covered by a particular license, and the package cannot be built unless the user has accepted the license. (Installation of binary packages are not currently subject to this mechanism.) Packages with licenses that are either Open Source according to the Open Source Initiative or Free according to the Free Software Foundation will not be marked with a license tag. Packages with licenses that have not been determined to meet either definition will be marked with a license tag referring to the license. This will prevent building unless pkgsrc is informed that the license is acceptable, and enables displaying the license.

    d7716 4 a7719 3 tags.

    Denoting that a package is covered by a particular license is done by placing the license in d7727 2 a7728 2 package is covered by a license which has not been accepted:

    d7738 4 a7741 4 show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

    d7745 3 a7747 3

    When adding a package with a new license, the license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this d7749 9 d7759 6 a7764 8 LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to denote acceptance of the license for a single package without accepting the same license text for another package. In particular, this can be inappropriate when e.g. one accepts a particular license to indicate to pkgsrc that a fee has been paid.

    d7770 17 a7786 1 In order to satisfy these restrictions, the package system d7794 4 a7797 1 string containing the reason for the restriction.

    d7801 4 a7804 3

    Binaries may not be placed on CD-ROM. Set this variable to ${RESTRICTED} whenever a binary package may not be included on a CD-ROM.

    d7808 4 a7811 4

    Binaries may not be placed on an FTP server. Set this variable to ${RESTRICTED} whenever a binary package may not be made available on the Internet.

    d7815 4 a7818 4

    Distfiles may not be placed on CD-ROM. Set this variable to ${RESTRICTED} if re-distribution of the source code or other distfile(s) is not allowed on CD-ROMs.

    d7822 4 a7825 5

    Distfiles may not be placed on FTP. Set this variable to ${RESTRICTED} if re-distribution of the source code or other distfile(s) via the Internet is not allowed. If this variable is not set, the distfile(s) will be mirrored on ftp.NetBSD.org.

    d9494 1 a9494 1 21.1. d9510 1 a9510 1 21.2. d9528 1 a9528 1 21.3. d9546 1 a9546 1 21.4. d9559 1 a9559 1 21.5. d9575 1 a9575 1 21.6. d9599 1 a9599 1 21.7. d9624 1 a9624 1 21.8. d9672 1 a9672 1 21.9. d10458 2 a10459 3 that does not explicitly set NO_MTREE. There have been some discussions about whether this file is needed at all, but with no result.

    @ 1.96 log @regen @ text @d69 1 a69 1
    2.1.3. Via CVS
    d207 10 a216 9
    11.1. Makefile variables
    11.1.1. Naming conventions
    11.2. Code snippets
    11.2.1. Adding things to a list
    11.2.2. Converting an internal list into an external list
    11.2.3. Passing variables to a shell command
    11.2.4. Quoting guideline
    11.2.5. Workaround for a bug in BSD Make
    d301 1 d767 1 a767 1
    2.1.3. Via CVS
    d880 1 a880 1
    2.1.3. Via CVS
    d948 1 a948 1 2.1.3. Via CVS d2325 3 d3697 10 a3706 9
    11.1. Makefile variables
    11.1.1. Naming conventions
    11.2. Code snippets
    11.2.1. Adding things to a list
    11.2.2. Converting an internal list into an external list
    11.2.3. Passing variables to a shell command
    11.2.4. Quoting guideline
    11.2.5. Workaround for a bug in BSD Make
    d3791 1 d4785 10 a4794 9
    11.1. Makefile variables
    11.1.1. Naming conventions
    11.2. Code snippets
    11.2.1. Adding things to a list
    11.2.2. Converting an internal list into an external list
    11.2.3. Passing variables to a shell command
    11.2.4. Quoting guideline
    11.2.5. Workaround for a bug in BSD Make
    d4814 34 a4847 1 11.1. Makefile variables d4905 1 a4905 1 11.1.1. Naming conventions d4922 1 a4922 1 11.2. Code snippets d4928 1 a4928 1 11.2.1. Adding things to a list d4949 1 a4949 1 11.2.2. Converting an internal list into an external list d4964 1 a4964 1 11.2.3. Passing variables to a shell command d5008 1 a5008 1 11.2.4. Quoting guideline d5091 1 a5091 1 11.2.5. Workaround for a bug in BSD Make d6421 3 d6430 4 d6552 3 d6709 6 d6871 5 a6875 1 USE_X11BASE instead.)

    d6906 2 d6997 4 d7016 5 d7392 1 d7467 56 a7910 5

    Please also note the BUILD_USES_GETTEXT_M4 definition, which is provided as convenience definition. It adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8141 2 d8148 3 a8150 1 subdirectory of the local distfiles directory. In case this d8157 1 d8487 1 d8508 3 a8510 2 SunPro __SUNPRO_C (0x570 for version 5.7) SunPro C++ __SUNPRO_CC (0x580 for version 5.8) d9440 1 a9440 1 21.1. d9456 1 a9456 1 21.2. d9474 1 a9474 1 21.3. d9492 1 a9492 1 21.4. d9505 1 a9505 1 21.5. d9521 1 a9521 1 21.6. d9545 1 a9545 1 21.7. d9570 1 a9570 1 21.8. d9618 1 a9618 1 21.9. @ 1.95 log @regen @ text @d904 1 a904 1 2006Q3.

    d918 2 a919 2

    The tar file for the stable branch 2006Q3 is in the directory pkgsrc-2006Q3 and is also called pkgsrc-2006Q3.tar.gz.

    d966 1 a966 1 checkout -rpkgsrc-2006Q3 -P pkgsrc
    for the stable d1019 1 a1019 1 “-rpkgsrc-2006Q3” option.

    d1752 14 a1765 8

    You should set CC, CXX and optionally, CPP in /etc/mk.conf, e.g.:

    	  CC=     cc
    	  CXX=    CC
    	  CPP=    /usr/ccs/lib/cpp
    	
    d1770 2 a1771 22

    Building 64-bit binaries is a little trickier. First, you need to bootstrap pkgsrc in 64-bit mode. One problem here is that while building one of the programs in the bootstrap kit (bmake), the CFLAGS variable is not honored, even if it is set in the environment. To work around this bug, you can create a simple shell script called cc64 and put it somewhere in the PATH:

    	  #! /bin/sh
    	  exec /opt/SUNWspro/bin/cc -xtarget=ultra -xarch=v9 ${1+"$@@"}
    	

    Then, pass the definition for CC in the environment of the bootstrap command:

    	  $ cd bootstrap
    	  $ CC=cc64 ./bootstrap
    	

    After bootstrapping, there are two alternative ways, depending on whether you want to find bugs in packages or get your system ready quickly. If you just want a running system, add the following lines to your mk.conf d1774 9 a1782 25 CC= cc64 CXX= CC64 PKGSRC_COMPILER= sunpro

    This way, all calls to the compiler will be intercepted by the above wrapper and therefore get the necessary ABI options automatically. (Don't forget to create the shell script CC64, too.)

    To find packages that ignore the user-specified CFLAGS and CXXFLAGS, add the following lines to your mk.conf file:

    	  CC=                     cc
    	  CXX=                    CC
    	  PKGSRC_COMPILER=        sunpro
    	  CFLAGS=                 -xtarget=ultra -xarch=v9
    	  CXXFLAGS=               -xtarget=ultra -xarch=v9
    	  LDFLAGS=                -xtarget=ultra -xarch=v9
    	

    Packages that don't use the flags provided in the configuration file will try to build 32-bit binaries and fail during linking. Detecting this is useful to prevent bugs on other platforms where the error would not show up but pass silently.

    d9309 1 a9309 1 21.1. d9325 1 a9325 1 21.2. d9343 1 a9343 1 21.3. d9361 1 a9361 1 21.4. d9374 1 a9374 1 21.5. d9390 1 a9390 1 21.6. d9414 1 a9414 1 21.7. d9439 1 a9439 1 21.8. d9487 1 a9487 1 21.9. @ 1.94 log @clarify that PKGSRC_COMPILER= sunpro gcc is not how this variable is meant to be used. Partially addresses PR/35433. @ text @d1320 1 a1320 1 # ./darwindiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste d1406 1 a1406 1 Interix 5.x subsystem not been tested with pkgsrc.

    d5570 1 a5570 1
  • BUILDLINK_TRANSFORM.pkg d9339 1 a9339 1 21.1. d9355 1 a9355 1 21.2. d9373 1 a9373 1 21.3. d9391 1 a9391 1 21.4. d9404 1 a9404 1 21.5. d9420 1 a9420 1 21.6. d9444 1 a9444 1 21.7. d9469 1 a9469 1 21.8. d9517 1 a9517 1 21.9. @ 1.93 log @regen @ text @d2448 4 a2451 2 variable should always be terminated with a value for a real compiler.

    d4449 1 a4449 1 should contain only changed for a single file, and no file should be d6112 1 a6112 1 user's shell, and defaults to /sbinno/login if d9339 1 a9339 1 21.1. d9355 1 a9355 1 21.2. d9373 1 a9373 1 21.3. d9391 1 a9391 1 21.4. d9404 1 a9404 1 21.5. d9420 1 a9420 1 21.6. d9444 1 a9444 1 21.7. d9469 1 a9469 1 21.8. d9517 1 a9517 1 21.9. @ 1.92 log @regen @ text @d189 5 a193 2
    10.3.1. Patching guidelines
    10.3.2. Feedback to the author
    d450 1 a450 1 200xQy: d655 1 a655 1 or by building one's own copy using the NetBSD package system. d904 1 a904 1 2006Q1.

    d918 2 a919 2

    The tar file for the stable branch 2006Q1 is in the directory 2006Q1 and is also called pkgsrc.tar.gz.

    d966 1 a966 1 checkout -rpkgsrc-2006Q1 -P pkgsrc for the stable d1019 1 a1019 1 “-rpkgsrc-2006Q1” option.

    d1172 3 a1174 3 20051010 binary kit binary packages d1202 1 a1202 1 20040507 d1214 1 a1214 1 20031023 d1232 3 a1234 3 20041208 binary kit binary packages d1401 6 a1406 3

    Services for Unix 3.5, current as of this writing, has been tested. 3.0 or 3.1 may work, but are not officially supported. (The main difference in 3.0/3.1 is lack of pthreads.)

    d1437 10 a1511 5

    Also, StarNet Communications has graciously provided a free version of their X-Win32 product that accepts connections only from localhost: X-Win32 LX, recommended by the maintainer of Interix pkgsrc support.

    d1610 1 a1610 1 but want to make sure that MIPRPro is used, please set your PATH d1735 1 a1735 1

    Binary packages of gcc can be found through http://www.sun.com/bigadmin/common/freewareSearch.html.

    d1763 1 a1763 1 3.3.7.3. Buildling 64-bit binaries with SunPro d2022 1 a2022 1 Through security/audit-packages, d2028 1 a2028 1 There are two components to d2050 1 a2050 1 Install pkgtools/pkglint and run d2151 1 a2151 1 meta-pkgs/kde3), the build process may d2366 4 a2369 1 List of sites carrying binary pkgs.

  • d2400 1 a2400 4 information. rel and arch are replaced with OS release (“2.0”, etc.) and architecture (“mipsel”, etc.).

  • d2663 2 a2664 1 6.3.1.1. build.conf d2724 1 a2724 1 (pkgsrc/mk/bsd.pkg.check.mk) can be set to d2728 1 a2728 1 (pkgsrc/mk/bsd.pkg.check.mk) can be set to d2745 2 a2746 1 6.3.1.3. pre-build.local d2988 2 a2989 2
    RSYNC_DST=ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload 

    Please use appropriate values for "pkgsrc-200xQy", d2994 1 a2994 1

    RSYNC_DST=hubertf@@ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload
    d2998 1 a2998 1
    nbftp% mkdir -p -m 750 /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload
    d3040 1 a3040 1 nbftp% cd /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch d3118 1 a3118 1 PKGDBDIR= /var/db/pkg d3126 1 a3126 1 PKGDBDIR= ${HOME}/pkg/var/db/pkg d3149 2 a3150 1 7.1. File system layout in ${LOCALBASE} d3215 2 a3216 1 7.2. File system layout in ${VARBASE} d3396 1 a3396 1 installation targets. These directories can be overriden by the d3702 5 a3706 2
    10.3.1. Patching guidelines
    10.3.2. Feedback to the author
    d4246 5 a4250 2
    10.3.1. Patching guidelines
    10.3.2. Feedback to the author
    d4268 2 a4269 1 10.1. Makefile d4407 2 a4408 1 10.2. distinfo d4431 8 a4438 7

    This directory contains files that are used by the patch(1) command to modify the sources as distributed in the distribution file into a form that will compile and run perfectly on NetBSD. The files are applied successively in alphabetic order (as returned by a shell “patches/patch-*” glob expansion), so patch-aa is applied before d4440 3 d4445 32 a4476 9 problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do not put changes for more than one file into a single patch file, as this will make future modifications more difficult.

    Similar, a file should be patched at most once, not several times by several different patches. If a file needs several patches, they should be combined into one file.

    One important thing to mention is to pay attention that no RCS IDs get stored in the patch files, as these will cause problems when d4478 2 a4479 3 pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    d4500 4 d4510 1 a4510 1 d4527 1 d4530 1 a4530 1 10.3.1. Patching guidelines d4632 1 a4632 1 10.3.2. Feedback to the author d4640 2 a4641 2

    This generally involves cleaning up the patches as described in the following section (because sometimes the patches that are d4768 2 a4769 1 10.6. work* d4782 2 a4783 1 10.7. files/* d5135 2 a5136 1 12.3. Tweaking output of make print-PLIST d5232 2 a5233 1 12.6. Changing PLIST source with PLIST_SRC d5415 1 a5415 1 either Postgres 7.4, 8.0, or 8.1, whichever is found installed. See d6117 1 a6117 1

    The numeric GID of the group may be set by defining d6204 2 a6205 1 15.2. Converting packages to use bsd.options.mk d6538 1 a6538 1 where all work takes place. The distfiles are extraced to this d6627 1 d6649 2 a6650 2 for packages that are maintained in ftp://ftp.NetBSD.org:/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}. MASTER_SITE_LOCAL contains local package source distributions that are maintained in ftp://ftp.NetBSD.org:/pub/NetBSD/packages/distfiles/LOCAL_PORTS/.

    d6668 1 a6668 1 (DISTDIR), which can be set by the pkgsrc d6710 1 a6710 1 program, mk/scripts/extract, which d6718 1 a6718 1 mk/scripts/extract.

    d6721 2 a6722 1 pax, tar or an d7171 1 a7171 1 packages. You will need to install pkgsrc/pkgtools/pkg_tarup for this d7509 2 a7510 1 18.1.2. How to pull in user-settable variables from mk.conf d7654 1 a7654 1 whenever a binary package may not not be made available d7759 1 a7759 1 not to denote recommendations such as d8049 1 a8049 1 PATCHFILES for this package will be put in that d8495 1 a8495 1 d8501 1 a8501 1 d8892 2 a8893 2

    If a package uses intltool during its build, include the ../../textproc/intltool/buildlink3.mk file, d9106 1 a9106 1

    # pkgadd .../examplepkg.tgz
    d9173 1 a9173 1 removals in pkgsrc/doc/CHANGES. It's very d9183 1 a9183 1 pkgsrc/doc/CHANGES if it is security d9188 1 a9188 1 CHANGES entries: make d9191 1 a9191 1 usage is to first make sure that your CHANGES d9200 1 a9200 1 the changes to pkgsrc/doc/CHANGES!

    d9296 1 a9296 1
    21.1. What is the difference between d9300 1 a9300 1
    21.2. What is the difference between d9304 1 a9304 1
    21.3. What is the difference between d9308 1 a9308 1
    21.4. What is the difference between d9313 1 a9313 1
    21.5. Why does make show-var d9317 1 a9317 1
    21.6. What does d9322 1 a9322 1
    21.7. Which mailing lists are there for package d9325 1 a9325 1
    21.8. Where is the pkgsrc d9337 1 a9337 1 21.1. d9353 1 a9353 1 21.2. d9371 1 a9371 1 21.3. d9389 1 a9389 1 21.4. d9402 1 a9402 1 21.5. d9418 1 a9418 1 21.6. d9442 1 a9442 1 21.7. d9467 1 a9467 1 21.8. d9504 1 a9504 1 information, use the the cvs annotate command d9515 1 a9515 1 21.9. d9523 1 a9523 1

    This is not really an FAQ yet, but here's the answer d9647 2 a9648 1

  • If the package uses intltool, be sure to include the pkgsrc/textproc/intltool/buildlink3.mk file d9793 1 a9793 1

    % cvs diff gnome-devel gnome-base gnome | grep '^+D' >todo.txt
    d9800 1 a9800 1 commited until the entire set is completed because there are chances d9815 1 a9815 1 fixes you do to a GNOME package to the mainstream developers (see Section 10.3.2, “Feedback to the author”). This is the only way to get d9832 1 a9832 1 guidelines (Section 10.3.1, “Patching guidelines”) for more d10105 3 a10107 2 23.6.1. The order in bsd.prefs.mk

    The very first action in bsd.pkg.mk d10133 2 a10134 1 23.6.2. The order in bsd.pkg.mk d10138 1 a10138 1 not been defined by the the package. These variables may later d10280 1 a10280 1

    bootstrap/mods/mk/MyOS.sys.mk
    d10292 1 a10292 1
    mk/platform/MyOS.mk
    d10297 1 a10297 1
    mk/platform/MyOS.pkg.dist
    d10304 1 a10304 1
    mk/platform/MyOS.x11.dist
    d10315 1 a10315 1
    mk/tools/MyOS.mk
    d10398 2 a10399 1 A.1.4. Checking a package with pkglint d10649 1 a10649 1 200xQy: d10712 1 a10712 1 200xQy: @ 1.91 log @regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.23 2006/09/19 17:50:38 rillig Exp $

    a168 1
    8.19. I have a little time to kill. What shall I do?
    a861 1
    8.19. I have a little time to kill. What shall I do?
    a3243 1
    8.19. I have a little time to kill. What shall I do?
    a3656 19

    8.19. I have a little time to kill. What shall I do?

    This is not really an FAQ yet, but here's the answer anyway.

    • Run pkg_chk -N (from the pkgtools/pkg_chk package). It will tell you about newer versions of installed packages that are available, but not yet updated in pkgsrc.

    • Browse pkgsrc/doc/TODO — it contains a list of suggested new packages and a list of cleanups and enhancements for pkgsrc that would be nice to have.

    • Review packages for which review was requested on the pkgsrc-wip review mailing list.

    d8367 1 a8367 1

    This compiler error often means that a package did not d8426 25 d9234 1 a9234 1

    21.1. What is the difference between d9238 1 a9238 1
    21.2. What is the difference between d9242 1 a9242 1
    21.3. What is the difference between d9246 1 a9246 1
    21.4. What is the difference between d9251 1 a9251 1
    21.5. Why does make show-var d9255 1 a9255 1
    21.6. What does d9260 1 a9260 1
    21.7. Which mailing lists are there for package d9263 1 a9263 1
    21.8. Where is the pkgsrc d9266 3 d9275 1 a9275 1 21.1. d9291 1 a9291 1 21.2. d9309 1 a9309 1 21.3. d9327 1 a9327 1 21.4. d9340 1 a9340 1 21.5. d9356 1 a9356 1 21.6. d9380 1 a9380 1 21.7. d9405 1 a9405 1 21.8. d9428 3 a9430 1 pkgsrc user and package authors.

  • d9451 27 @ 1.90 log @regen @ text @d8 1 a8 5 d145 1 a145 1
    7.1. File system layout in ${PREFIX}
    d175 9 d501 1 a501 1
  • www/apache - The Apache d503 1 a503 1

  • www/firefox - The Firefox d505 1 a505 1

  • meta-pkgs/gnome - The GNOME d507 1 a507 1

  • meta-pkgs/kde3 - The K d549 14 d576 1 a576 1 d641 1 a641 1
    d643 1 d839 1 a839 1

    7.1. File system layout in ${PREFIX}
    d886 8 a893 9

    The most common location where pkgsrc is installed is /usr/pkgsrc for the “package sources” and /usr/pkg for the installed binary packages. You are though free to install the sources and binary packages wherever you want in your filesystem, provided that both paths do not contain white-space or other characters that are interpreted specially by the shell and some other programs. A safe bet is to use only letters, digits, underscores and dashes in the names.

    d921 2 a922 2 /usr. Then, run tar xfz pkgsrc.tar.gz to extract the files.

    d1071 1 a1071 1 d1242 1 a1242 1
    d1244 1 a1244 1

    d1518 1 a1518 1 audio/esound package does d1521 1 a1521 1 emulators/cygwin_esound package d1724 1 a1724 1 lang/gcc or install a binary gcc d1811 1 a1811 1 scripts, for example by installing shells/bash and adding the following lines d1817 1 a1817 1

    Then, rebuild the devel/libtool-base package.

    d1959 1 a1959 1 security/audit-packages regularly, d2013 1 a2013 1 Through security/audit-packages, d2020 1 a2020 1 security/audit-packages. The first d2030 1 a2030 1 One can set up security/audit-packages to download the d2034 1 a2034 1 file for security/audit-packages. d2041 1 a2041 1 Install pkgtools/pkglint and run d2084 1 a2084 1 all packages, viewable with any web browser such as www/lynx or www/firefox.

    d2118 7 d2142 1 a2142 1 meta-pkgs/kde3), the build process may d2461 1 a2461 1 the devel/cpuflags package if d2626 1 a2626 1 continuation of the above misc/figlet example.

    d2722 9 d2883 1 a2883 1

    /etc/resolv.conf (for security/smtpd and mail):

    d2891 1 a2891 1

    /etc/localtime (for security/smtpd):

    d2896 1 a2896 1 e. g. for sysutils/aperture):

    d3042 1 a3042 1 pkgtools/cdpack package provides d3088 1 a3088 1
    7.1. File system layout in ${PREFIX}
    d3099 20 a3118 1

    There are mainly three root directories for pkgsrc:

    d3138 1 a3138 1 7.1. File system layout in ${PREFIX} d3140 1 a3140 1 in ${PREFIX}.

    d3299 1 a3299 1
  • 10. Programming in Makefiles
    10.1. Makefile variables
    10.1.1. Naming conventions
    10.2. Code snippets
    10.2.1. Adding things to a list
    10.2.2. Converting an internal list into an external list
    10.2.3. Passing variables to a shell command
    10.2.4. Quoting guideline
    10.2.5. Workaround for a bug in BSD Make
    11. PLIST issues
    11.1. RCS ID
    11.2. Semi-automatic PLIST generation
    11.3. Tweaking output of make print-PLIST
    11.4. Variable substitution in PLIST
    11.5. Man page compression
    11.6. Changing PLIST source with PLIST_SRC
    11.7. Platform-specific and differing PLISTs
    11.8. Sharing directories between packages
    12. Buildlink methodology
    12.1. Converting packages to use buildlink3
    12.2. Writing buildlink3.mk files
    12.2.1. Anatomy of a buildlink3.mk file
    12.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    12.3. Writing builtin.mk files
    12.3.1. Anatomy of a builtin.mk file
    12.3.2. Global preferences for native or pkgsrc software
    13. The pkginstall framework
    13.1. Files and directories outside the installation prefix
    13.1.1. Directory manipulation
    13.1.2. File manipulation
    13.2. Configuration files
    13.2.1. How PKG_SYSCONFDIR is set
    13.2.2. Telling the software where configuration files are
    13.2.3. Patching installations
    13.2.4. Disabling handling of configuration files
    13.3. System startup scripts
    13.3.1. Disabling handling of system startup scripts
    13.4. System users and groups
    13.5. System shells
    13.5.1. Disabling shell registration
    13.6. Fonts
    13.6.1. Disabling automatic update of the fonts databases
    14. Options handling
    14.1. Global default options
    14.2. Converting packages to use bsd.options.mk
    14.3. Option Names
    15. The build process
    15.1. Introduction
    15.2. Program location
    15.3. Directories used during the build process
    15.4. Running a phase
    15.5. The fetch phase
    15.5.1. What to fetch and where to get it from
    15.5.2. How are the files fetched?
    15.6. The checksum phase
    15.7. The extract phase
    15.8. The patch phase
    15.9. The tools phase
    15.10. The wrapper phase
    15.11. The configure phase
    15.12. The build phase
    15.13. The test phase
    15.14. The install phase
    15.15. The package phase
    15.16. Cleaning up
    15.17. Other helpful targets
    16. Tools needed for building or running
    16.1. Tools for pkgsrc builds
    16.2. Tools needed by packages
    16.3. Tools provided by platforms
    17. Making your package work
    17.1. General operation
    17.1.1. Portability of packages
    17.1.2. How to pull in user-settable variables from mk.conf
    17.1.3. User interaction
    17.1.4. Handling licenses
    17.1.5. Restricted packages
    17.1.6. Handling dependencies
    17.1.7. Handling conflicts with other packages
    17.1.8. Packages that cannot or should not be built
    17.1.9. Packages which should not be deleted, once installed
    17.1.10. Handling packages with security problems
    17.1.11. How to handle incrementing versions when fixing an existing package
    17.1.12. Substituting variable text in the package files (the SUBST framework)
    17.2. Fixing problems in the fetch phase
    17.2.1. Packages whose distfiles aren't available for plain downloading
    17.2.2. How to handle modified distfiles with the 'old' name
    17.3. Fixing problems in the configure phase
    17.3.1. Shared libraries - libtool
    17.3.2. Using libtool on GNU packages that already support libtool
    17.3.3. GNU Autoconf/Automake
    17.4. Programming languages
    17.4.1. C, C++, and Fortran
    17.4.2. Java
    17.4.3. Packages containing perl scripts
    17.4.4. Other programming languages
    17.5. Fixing problems in the build phase
    17.5.1. Compiling C and C++ code conditionally
    17.5.2. How to handle compiler bugs
    17.5.3. Undefined reference to “...
    17.5.4. Running out of memory
    17.6. Fixing problems in the install phase
    17.6.1. Creating needed directories
    17.6.2. Where to install documentation
    17.6.3. Installing score files
    17.6.4. Packages with hardcoded paths to other interpreters
    17.6.5. Packages installing perl modules
    17.6.6. Packages installing info files
    17.6.7. Packages installing man pages
    17.6.8. Packages installing GConf2 data files
    17.6.9. Packages installing scrollkeeper data files
    17.6.10. Packages installing X11 fonts
    17.6.11. Packages installing GTK2 modules
    17.6.12. Packages installing SGML or XML data
    17.6.13. Packages installing extensions to the MIME database
    17.6.14. Packages using intltool
    17.6.15. Packages installing startup scripts
    17.6.16. Packages installing TeX modules
    17.6.17. Packages supporting running binaries in d356 2 a357 2
    17.6.18. Packages installing hicolor theme icons
    17.6.19. Packages installing desktop files
    d359 1 a359 1
    17.7. Marking packages as having problems
    d361 2 a362 2
    18. Debugging
    19. Submitting and Committing
    d364 14 a377 14
    19.1. Submitting binary packages
    19.2. Submitting source packages (for non-NetBSD-developers)
    19.3. General notes when adding, updating, or removing packages
    19.4. Committing: Importing a package into CVS
    19.5. Updating a package to a newer version
    19.6. Moving a package in pkgsrc
    20. Frequently Asked Questions
    21. GNOME packaging and porting
    21.1. Meta packages
    21.2. Packaging a GNOME application
    21.3. Updating GNOME to a newer version
    21.4. Patching guidelines
    d382 1 a382 1
    22. Design of the pkgsrc infrastructure
    d384 3 a386 3
    22.1. The meaning of variable definitions
    22.2. Avoiding problems before they arise
    22.3. Variable evaluation
    d388 2 a389 2
    22.3.1. At load time
    22.3.2. At runtime
    d391 2 a392 2
    22.4. How can variables be specified?
    22.5. Designing interfaces for Makefile fragments
    d394 2 a395 2
    22.5.1. Procedures with parameters
    22.5.2. Actions taken on behalf of parameters
    d397 1 a397 1
    22.6. The order in which files are loaded
    d399 2 a400 2
    22.6.1. The order in bsd.prefs.mk
    22.6.2. The order in bsd.pkg.mk
    d403 1 a403 1
    23. Regression tests
    d405 3 a407 3
    23.1. The regression tests framework
    23.2. Running the regression tests
    23.3. Adding a new regression test
    d409 2 a410 2
    23.3.1. Overridable functions
    23.3.2. Helper functions
    d413 1 a413 1
    24. Porting pkgsrc
    d415 2 a416 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d460 1 a460 1
    9.1. Patching examples d462 1 a462 1
    21.1. PLIST handling for GNOME packages d817 6 a822 1
    7. Frequently Asked Questions
    d824 11 a834 11
    7.1. Are there any mailing lists for pkg-related discussion?
    7.2. Where's the pkgviews documentation?
    7.3. Utilities for package management (pkgtools)
    7.4. How to use pkgsrc as non-root
    7.5. How to resume transfers when fetching distfiles?
    7.6. How can I install/use XFree86 from pkgsrc?
    7.7. How can I install/use X.org from pkgsrc?
    7.8. How to fetch files from behind a firewall
    7.9. How do I tell make fetch to do passive FTP?
    7.10. How to fetch all distfiles at once
    7.11. What does “Don't know how to make d836 8 a843 8
    7.12. What does “Could not find bsd.own.mk” mean?
    7.13. Using 'sudo' with pkgsrc
    7.14. How do I change the location of configuration files?
    7.15. Automated security checks
    7.16. Why do some packages ignore my CFLAGS?
    7.17. A package does not build. What shall I do?
    7.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    7.19. I have a little time to kill. What shall I do?
    d2361 1 a2361 1 See Section 9.3, “patches/*” for more d2601 1 a2601 1

    See Chapter 19, Submitting and Committing for information on how to submit d2607 1 a2607 1

    See Section 15.17, “Other helpful targets”.

    d3049 121 a3169 1 Chapter 7. Frequently Asked Questions d3173 11 a3183 11
    7.1. Are there any mailing lists for pkg-related discussion?
    7.2. Where's the pkgviews documentation?
    7.3. Utilities for package management (pkgtools)
    7.4. How to use pkgsrc as non-root
    7.5. How to resume transfers when fetching distfiles?
    7.6. How can I install/use XFree86 from pkgsrc?
    7.7. How can I install/use X.org from pkgsrc?
    7.8. How to fetch files from behind a firewall
    7.9. How do I tell make fetch to do passive FTP?
    7.10. How to fetch all distfiles at once
    7.11. What does “Don't know how to make d3185 8 a3192 8
    7.12. What does “Could not find bsd.own.mk” mean?
    7.13. Using 'sudo' with pkgsrc
    7.14. How do I change the location of configuration files?
    7.15. Automated security checks
    7.16. Why do some packages ignore my CFLAGS?
    7.17. A package does not build. What shall I do?
    7.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean?
    7.19. I have a little time to kill. What shall I do?
    d3200 1 a3200 1 7.1. Are there any mailing lists for pkg-related discussion? d3231 1 a3231 1 7.2. Where's the pkgviews documentation? d3238 1 a3238 1 7.3. Utilities for package management (pkgtools) d3315 1 a3315 1 7.4. How to use pkgsrc as non-root d3336 1 a3336 1 7.5. How to resume transfers when fetching distfiles? d3360 1 a3360 1 7.6. How can I install/use XFree86 from pkgsrc? d3371 1 a3371 1 7.7. How can I install/use X.org from pkgsrc? d3387 1 a3387 1 7.8. How to fetch files from behind a firewall d3402 1 a3402 1 7.9. How do I tell make fetch to do passive FTP? d3422 1 a3422 1 7.10. How to fetch all distfiles at once d3454 1 a3454 1 7.11. What does “Don't know how to make d3468 1 a3468 1 7.12. What does “Could not find bsd.own.mk” mean? d3480 1 a3480 1 7.13. Using 'sudo' with pkgsrc d3496 1 a3496 1 7.14. How do I change the location of configuration files? d3518 1 a3518 1 7.15. Automated security checks d3552 1 a3552 1 7.16. Why do some packages ignore my CFLAGS? d3574 1 a3574 1 7.17. A package does not build. What shall I do? d3595 1 a3595 1 7.18. What does “Makefile appears to contain unresolved cvs/rcs/??? merge conflicts” mean? d3608 1 a3608 1 7.19. I have a little time to kill. What shall I do? d3639 2 a3640 2
    8. Creating a new pkgsrc package from scratch
    9. Package components - files, directories and contents
    d3642 174 a3815 174
    9.1. Makefile
    9.2. distinfo
    9.3. patches/*
    9.3.1. Patching guidelines
    9.3.2. Feedback to the author
    9.4. Other mandatory files
    9.5. Optional files
    9.5.1. Files affecting the binary package
    9.5.2. Files affecting the build process
    9.5.3. Files affecting nothing at all
    9.6. work*
    9.7. files/*
    10. Programming in Makefiles
    10.1. Makefile variables
    10.1.1. Naming conventions
    10.2. Code snippets
    10.2.1. Adding things to a list
    10.2.2. Converting an internal list into an external list
    10.2.3. Passing variables to a shell command
    10.2.4. Quoting guideline
    10.2.5. Workaround for a bug in BSD Make
    11. PLIST issues
    11.1. RCS ID
    11.2. Semi-automatic PLIST generation
    11.3. Tweaking output of make print-PLIST
    11.4. Variable substitution in PLIST
    11.5. Man page compression
    11.6. Changing PLIST source with PLIST_SRC
    11.7. Platform-specific and differing PLISTs
    11.8. Sharing directories between packages
    12. Buildlink methodology
    12.1. Converting packages to use buildlink3
    12.2. Writing buildlink3.mk files
    12.2.1. Anatomy of a buildlink3.mk file
    12.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    12.3. Writing builtin.mk files
    12.3.1. Anatomy of a builtin.mk file
    12.3.2. Global preferences for native or pkgsrc software
    13. The pkginstall framework
    13.1. Files and directories outside the installation prefix
    13.1.1. Directory manipulation
    13.1.2. File manipulation
    13.2. Configuration files
    13.2.1. How PKG_SYSCONFDIR is set
    13.2.2. Telling the software where configuration files are
    13.2.3. Patching installations
    13.2.4. Disabling handling of configuration files
    13.3. System startup scripts
    13.3.1. Disabling handling of system startup scripts
    13.4. System users and groups
    13.5. System shells
    13.5.1. Disabling shell registration
    13.6. Fonts
    13.6.1. Disabling automatic update of the fonts databases
    14. Options handling
    14.1. Global default options
    14.2. Converting packages to use bsd.options.mk
    14.3. Option Names
    15. The build process
    15.1. Introduction
    15.2. Program location
    15.3. Directories used during the build process
    15.4. Running a phase
    15.5. The fetch phase
    15.5.1. What to fetch and where to get it from
    15.5.2. How are the files fetched?
    15.6. The checksum phase
    15.7. The extract phase
    15.8. The patch phase
    15.9. The tools phase
    15.10. The wrapper phase
    15.11. The configure phase
    15.12. The build phase
    15.13. The test phase
    15.14. The install phase
    15.15. The package phase
    15.16. Cleaning up
    15.17. Other helpful targets
    16. Tools needed for building or running
    16.1. Tools for pkgsrc builds
    16.2. Tools needed by packages
    16.3. Tools provided by platforms
    17. Making your package work
    17.1. General operation
    17.1.1. Portability of packages
    17.1.2. How to pull in user-settable variables from mk.conf
    17.1.3. User interaction
    17.1.4. Handling licenses
    17.1.5. Restricted packages
    17.1.6. Handling dependencies
    17.1.7. Handling conflicts with other packages
    17.1.8. Packages that cannot or should not be built
    17.1.9. Packages which should not be deleted, once installed
    17.1.10. Handling packages with security problems
    17.1.11. How to handle incrementing versions when fixing an existing package
    17.1.12. Substituting variable text in the package files (the SUBST framework)
    17.2. Fixing problems in the fetch phase
    17.2.1. Packages whose distfiles aren't available for plain downloading
    17.2.2. How to handle modified distfiles with the 'old' name
    17.3. Fixing problems in the configure phase
    17.3.1. Shared libraries - libtool
    17.3.2. Using libtool on GNU packages that already support libtool
    17.3.3. GNU Autoconf/Automake
    17.4. Programming languages
    17.4.1. C, C++, and Fortran
    17.4.2. Java
    17.4.3. Packages containing perl scripts
    17.4.4. Other programming languages
    17.5. Fixing problems in the build phase
    17.5.1. Compiling C and C++ code conditionally
    17.5.2. How to handle compiler bugs
    17.5.3. Undefined reference to “...
    17.5.4. Running out of memory
    17.6. Fixing problems in the install phase
    17.6.1. Creating needed directories
    17.6.2. Where to install documentation
    17.6.3. Installing score files
    17.6.4. Packages with hardcoded paths to other interpreters
    17.6.5. Packages installing perl modules
    17.6.6. Packages installing info files
    17.6.7. Packages installing man pages
    17.6.8. Packages installing GConf2 data files
    17.6.9. Packages installing scrollkeeper data files
    17.6.10. Packages installing X11 fonts
    17.6.11. Packages installing GTK2 modules
    17.6.12. Packages installing SGML or XML data
    17.6.13. Packages installing extensions to the MIME database
    17.6.14. Packages using intltool
    17.6.15. Packages installing startup scripts
    17.6.16. Packages installing TeX modules
    17.6.17. Packages supporting running binaries in d3817 2 a3818 2
    17.6.18. Packages installing hicolor theme icons
    17.6.19. Packages installing desktop files
    d3820 1 a3820 1
    17.7. Marking packages as having problems
    d3822 2 a3823 2
    18. Debugging
    19. Submitting and Committing
    d3825 14 a3838 14
    19.1. Submitting binary packages
    19.2. Submitting source packages (for non-NetBSD-developers)
    19.3. General notes when adding, updating, or removing packages
    19.4. Committing: Importing a package into CVS
    19.5. Updating a package to a newer version
    19.6. Moving a package in pkgsrc
    20. Frequently Asked Questions
    21. GNOME packaging and porting
    21.1. Meta packages
    21.2. Packaging a GNOME application
    21.3. Updating GNOME to a newer version
    21.4. Patching guidelines
    d3845 1 a3845 1 Chapter 8. Creating a new pkgsrc package from scratch d3904 1 a3904 1 consult Chapter 17, Making your package work.

    d3929 1 a3929 1 Chapter 9. Package components - files, directories and contents d3933 13 a3945 13
    9.1. Makefile
    9.2. distinfo
    9.3. patches/*
    9.3.1. Patching guidelines
    9.3.2. Feedback to the author
    9.4. Other mandatory files
    9.5. Optional files
    9.5.1. Files affecting the binary package
    9.5.2. Files affecting the build process
    9.5.3. Files affecting nothing at all
    d3947 2 a3948 2
    9.6. work*
    9.7. files/*
    d3956 1 a3956 1 9.1. Makefile d4012 1 a4012 1 Section 15.5, “The fetch phase”.

    d4089 1 a4089 1
  • If the package installs any info files, see Section 17.6.6, “Packages installing info files”.

  • d4094 1 a4094 1 9.2. distinfo d4104 1 a4104 1 patches directory (see Section 9.3, “patches/*”).

    d4116 1 a4116 1 9.3. patches/* d4153 1 a4153 1 makepatchsum command, see Section 9.2, “distinfo.

    d4185 1 a4185 1 9.3.1. Patching guidelines d4209 1 a4209 1

    Table 9.1. Patching examples

    d4287 1 a4287 1 9.3.2. Feedback to the author d4308 1 a4308 1 9.4. Other mandatory files d4320 1 a4320 1 inserted files. See Chapter 11, PLIST issues for more d4326 1 a4326 1 9.5. Optional files d4329 1 a4329 1 9.5.1. Files affecting the binary package d4338 1 a4338 1 pkg_create(1) for more information. See also Section 13.1, “Files and directories outside the installation prefix”.

    d4379 1 a4379 1 9.5.2. Files affecting the build process d4391 1 a4391 1 for the buildlink3 framework (see Chapter 12, Buildlink methodology).

    d4400 1 a4400 1 package-specific options (see Chapter 14, Options handling) that can be d4408 1 a4408 1 9.5.3. Files affecting nothing at all d4423 1 a4423 1 9.6. work* d4436 1 a4436 1 9.7. files/* d4455 1 a4455 1 Chapter 10. Programming in Makefiles d4459 9 a4467 9
    10.1. Makefile variables
    10.1.1. Naming conventions
    10.2. Code snippets
    10.2.1. Adding things to a list
    10.2.2. Converting an internal list into an external list
    10.2.3. Passing variables to a shell command
    10.2.4. Quoting guideline
    10.2.5. Workaround for a bug in BSD Make
    d4487 1 a4487 1 10.1. Makefile variables d4545 1 a4545 1 10.1.1. Naming conventions d4562 1 a4562 1 10.2. Code snippets d4568 1 a4568 1 10.2.1. Adding things to a list d4589 1 a4589 1 10.2.2. Converting an internal list into an external list d4604 1 a4604 1 10.2.3. Passing variables to a shell command d4648 1 a4648 1 10.2.4. Quoting guideline d4731 1 a4731 1 10.2.5. Workaround for a bug in BSD Make d4747 1 a4747 1 Chapter 11. PLIST issues d4751 8 a4758 8
    11.1. RCS ID
    11.2. Semi-automatic PLIST generation
    11.3. Tweaking output of make print-PLIST
    11.4. Variable substitution in PLIST
    11.5. Man page compression
    11.6. Changing PLIST source with PLIST_SRC
    11.7. Platform-specific and differing PLISTs
    11.8. Sharing directories between packages
    d4771 1 a4771 1 11.1. RCS ID d4780 1 a4780 1 11.2. Semi-automatic PLIST generation d4783 1 a4783 1 was extracted. See Section 15.17, “Other helpful targets” for d4788 1 a4788 1 11.3. Tweaking output of make print-PLIST d4790 1 a4790 1 Section 11.8, “Sharing directories between packages”, you may have noticed that d4816 1 a4816 1 11.4. Variable substitution in PLIST d4861 1 a4861 1 following way, similar to MESSAGE_SUBST (see Section 9.5, “Optional files”):

    d4871 1 a4871 1 11.5. Man page compression d4884 1 a4884 1 11.6. Changing PLIST source with PLIST_SRC d4894 1 a4894 1 11.7. Platform-specific and differing PLISTs d4908 1 a4908 1 11.8. Sharing directories between packages d4963 1 a4963 1 Chapter 12. Buildlink methodology d4967 2 a4968 2
    12.1. Converting packages to use buildlink3
    12.2. Writing buildlink3.mk files
    d4970 2 a4971 2
    12.2.1. Anatomy of a buildlink3.mk file
    12.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d4973 1 a4973 1
    12.3. Writing builtin.mk files
    d4975 2 a4976 2
    12.3.1. Anatomy of a builtin.mk file
    12.3.2. Global preferences for native or pkgsrc software
    d5004 1 a5004 1 12.1. Converting packages to use buildlink3 d5081 1 a5081 1 12.2. Writing buildlink3.mk files d5101 1 a5101 1 12.2.1. Anatomy of a buildlink3.mk file d5238 1 a5238 1 12.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files d5261 1 a5261 1

    See Section 17.1.6, “Handling dependencies” for d5280 1 a5280 1 12.3. Writing builtin.mk files d5305 1 a5305 1 12.3.1. Anatomy of a builtin.mk file d5395 1 a5395 1 12.3.2. Global preferences for native or pkgsrc software d5428 1 a5428 1 Chapter 13. The pkginstall framework d5432 1 a5432 1

    13.1. Files and directories outside the installation prefix
    d5434 2 a5435 2
    13.1.1. Directory manipulation
    13.1.2. File manipulation
    d5437 1 a5437 1
    13.2. Configuration files
    d5439 12 a5450 12
    13.2.1. How PKG_SYSCONFDIR is set
    13.2.2. Telling the software where configuration files are
    13.2.3. Patching installations
    13.2.4. Disabling handling of configuration files
    13.3. System startup scripts
    13.3.1. Disabling handling of system startup scripts
    13.4. System users and groups
    13.5. System shells
    13.5.1. Disabling shell registration
    13.6. Fonts
    13.6.1. Disabling automatic update of the fonts databases
    d5476 1 a5476 1 13.1. Files and directories outside the installation prefix d5509 1 a5509 1 13.1.1. Directory manipulation d5536 1 a5536 1 13.1.2. File manipulation d5576 1 a5576 1 13.2. Configuration files d5588 1 a5588 1 13.2.1. How PKG_SYSCONFDIR is set d5636 1 a5636 1 automatically added to OWN_DIRS. See Section 13.1.1, “Directory manipulation” what this means.

    d5640 1 a5640 1 13.2.2. Telling the software where configuration files are d5657 1 a5657 1 13.2.3. Patching installations d5674 1 a5674 1 used. Check out Section 13.1.2, “File manipulation” for information d5686 1 a5686 1 13.2.4. Disabling handling of configuration files d5694 1 a5694 1 13.3. System startup scripts d5697 1 a5697 1 installation prefix. Therefore, the same rules described in Section 13.1, “Files and directories outside the installation prefix” apply, and the same solutions d5732 1 a5732 1 13.3.1. Disabling handling of system startup scripts d5742 1 a5742 1 13.4. System users and groups d5779 1 a5779 1 13.5. System shells d5794 1 a5794 1 13.5.1. Disabling shell registration d5802 1 a5802 1 13.6. Fonts d5820 1 a5820 1 13.6.1. Disabling automatic update of the fonts databases d5829 1 a5829 1 Chapter 14. Options handling d5833 3 a5835 3
    14.1. Global default options
    14.2. Converting packages to use bsd.options.mk
    14.3. Option Names
    d5847 1 a5847 1 14.1. Global default options d5855 1 a5855 1 14.2. Converting packages to use bsd.options.mk d5993 1 a5993 1 14.3. Option Names d6018 1 a6018 1 Chapter 15. The build process d6022 21 a6042 21
    15.1. Introduction
    15.2. Program location
    15.3. Directories used during the build process
    15.4. Running a phase
    15.5. The fetch phase
    15.5.1. What to fetch and where to get it from
    15.5.2. How are the files fetched?
    15.6. The checksum phase
    15.7. The extract phase
    15.8. The patch phase
    15.9. The tools phase
    15.10. The wrapper phase
    15.11. The configure phase
    15.12. The build phase
    15.13. The test phase
    15.14. The install phase
    15.15. The package phase
    15.16. Cleaning up
    15.17. Other helpful targets
    d6047 1 a6047 1 15.1. Introduction d6067 1 a6067 1 15.2. Program location d6078 1 a6078 1 these files are encoded. See Section 9.3, “patches/*” and Section 17.3.1, “Shared libraries - libtool” for more details.

    d6168 1 a6168 1 15.3. Directories used during the build process d6202 1 a6202 1 15.4. Running a phase d6212 1 a6212 1 15.5. The fetch phase d6219 1 a6219 1 15.5.1. What to fetch and where to get it from d6314 1 a6314 1 15.5.2. How are the files fetched? d6337 1 a6337 1 15.6. The checksum phase d6348 1 a6348 1 15.7. The extract phase d6387 1 a6387 1 15.8. The patch phase d6398 1 a6398 1 PATCH_DIST_ARGS. See Section 9.3, “patches/*” for more details.

    d6408 2 a6409 2 15.9. The tools phase

    This is covered in Chapter 16, Tools needed for building or running. d6414 1 a6414 1 15.10. The wrapper phase d6452 1 a6452 1 15.11. The configure phase d6492 1 a6492 1 15.12. The build phase d6522 1 a6522 1 15.13. The test phase d6527 1 a6527 1 15.14. The install phase d6611 1 a6611 1 15.15. The package phase d6626 1 a6626 1 15.16. Cleaning up d6634 1 a6634 1 15.17. Other helpful targets d6946 1 a6946 1

    See Section 11.3, “Tweaking output of make print-PLIST for more d6987 1 a6987 1 Chapter 16. Tools needed for building or running d6991 3 a6993 3

    16.1. Tools for pkgsrc builds
    16.2. Tools needed by packages
    16.3. Tools provided by platforms
    d7017 1 a7017 1 16.1. Tools for pkgsrc builds d7030 1 a7030 1 16.2. Tools needed by packages d7053 1 a7053 1 16.3. Tools provided by platforms d7071 1 a7071 1 Chapter 17. Making your package work d7075 1 a7075 1
    17.1. General operation
    d7077 57 a7133 57
    17.1.1. Portability of packages
    17.1.2. How to pull in user-settable variables from mk.conf
    17.1.3. User interaction
    17.1.4. Handling licenses
    17.1.5. Restricted packages
    17.1.6. Handling dependencies
    17.1.7. Handling conflicts with other packages
    17.1.8. Packages that cannot or should not be built
    17.1.9. Packages which should not be deleted, once installed
    17.1.10. Handling packages with security problems
    17.1.11. How to handle incrementing versions when fixing an existing package
    17.1.12. Substituting variable text in the package files (the SUBST framework)
    17.2. Fixing problems in the fetch phase
    17.2.1. Packages whose distfiles aren't available for plain downloading
    17.2.2. How to handle modified distfiles with the 'old' name
    17.3. Fixing problems in the configure phase
    17.3.1. Shared libraries - libtool
    17.3.2. Using libtool on GNU packages that already support libtool
    17.3.3. GNU Autoconf/Automake
    17.4. Programming languages
    17.4.1. C, C++, and Fortran
    17.4.2. Java
    17.4.3. Packages containing perl scripts
    17.4.4. Other programming languages
    17.5. Fixing problems in the build phase
    17.5.1. Compiling C and C++ code conditionally
    17.5.2. How to handle compiler bugs
    17.5.3. Undefined reference to “...
    17.5.4. Running out of memory
    17.6. Fixing problems in the install phase
    17.6.1. Creating needed directories
    17.6.2. Where to install documentation
    17.6.3. Installing score files
    17.6.4. Packages with hardcoded paths to other interpreters
    17.6.5. Packages installing perl modules
    17.6.6. Packages installing info files
    17.6.7. Packages installing man pages
    17.6.8. Packages installing GConf2 data files
    17.6.9. Packages installing scrollkeeper data files
    17.6.10. Packages installing X11 fonts
    17.6.11. Packages installing GTK2 modules
    17.6.12. Packages installing SGML or XML data
    17.6.13. Packages installing extensions to the MIME database
    17.6.14. Packages using intltool
    17.6.15. Packages installing startup scripts
    17.6.16. Packages installing TeX modules
    17.6.17. Packages supporting running binaries in d7135 2 a7136 2
    17.6.18. Packages installing hicolor theme icons
    17.6.19. Packages installing desktop files
    d7138 1 a7138 1
    17.7. Marking packages as having problems
    d7143 1 a7143 1 17.1. General operation d7146 1 a7146 1 17.1.1. Portability of packages d7155 1 a7155 1 17.1.2. How to pull in user-settable variables from mk.conf d7182 1 a7182 1 17.1.3. User interaction d7211 1 a7211 1 17.1.4. Handling licenses d7280 1 a7280 1 17.1.5. Restricted packages d7329 1 a7329 1 17.1.6. Handling dependencies d7337 1 a7337 1 See Chapter 12, Buildlink methodology for more information.

    d7434 1 a7434 1 vulnerabilities file. See Section 17.1.10, “Handling packages with security problems” for more d7466 1 a7466 1 17.1.7. Handling conflicts with other packages d7492 1 a7492 1 17.1.8. Packages that cannot or should not be built d7520 1 a7520 1 17.1.9. Packages which should not be deleted, once installed d7531 1 a7531 1 17.1.10. Handling packages with security problems d7547 1 a7547 1 17.1.11. How to handle incrementing versions when fixing an existing package d7600 1 a7600 1 17.1.12. Substituting variable text in the package files (the SUBST framework) d7660 1 a7660 1 17.2. Fixing problems in the fetch phase d7663 1 a7663 1 17.2.1. Packages whose distfiles aren't available for plain downloading d7684 1 a7684 1 17.2.2. How to handle modified distfiles with the 'old' name d7712 1 a7712 1 17.3. Fixing problems in the configure phase d7715 1 a7715 1 17.3.1. Shared libraries - libtool d7837 1 a7837 1 17.3.2. Using libtool on GNU packages that already support libtool d7878 1 a7878 1 17.3.3. GNU Autoconf/Automake d7920 1 a7920 1 17.4. Programming languages d7923 1 a7923 1 17.4.1. C, C++, and Fortran d7927 1 a7927 1 framework, see Chapter 12, Buildlink methodology).

    d7938 1 a7938 1 17.4.2. Java d7961 1 a7961 1 17.4.3. Packages containing perl scripts d7973 1 a7973 1

    See Section 17.6.5, “Packages installing perl modules” for information d7978 1 a7978 1 17.4.4. Other programming languages d7988 1 a7988 1 17.5. Fixing problems in the build phase d7997 1 a7997 1 17.5.1. Compiling C and C++ code conditionally d8017 1 a8017 1 17.5.1.1. C preprocessor macros to identify the operating system d8042 1 a8042 1 17.5.1.2. C preprocessor macros to identify the hardware architecture d8051 1 a8051 1 17.5.1.3. C preprocessor macros to identify the compiler d8061 1 a8061 1 17.5.2. How to handle compiler bugs d8076 1 a8076 1 17.5.3. Undefined reference to “...” d8139 1 a8139 1 17.5.4. Running out of memory d8153 1 a8153 1 17.6. Fixing problems in the install phase d8156 1 a8156 1 17.6.1. Creating needed directories d8172 1 a8172 1 17.6.2. Where to install documentation d8201 1 a8201 1 17.6.3. Installing score files d8222 1 a8222 1 17.6.4. Packages with hardcoded paths to other interpreters d8244 1 a8244 1 17.6.5. Packages installing perl modules d8273 1 a8273 1 17.6.6. Packages installing info files d8320 1 a8320 1 17.6.7. Packages installing man pages d8352 1 a8352 1

    See Section 11.5, “Man page compression” for d8357 1 a8357 1 17.6.8. Packages installing GConf2 data files d8377 1 a8377 1 Section 7.14, “How do I change the location of configuration files?” for more information.

    d8391 1 a8391 1 17.6.9. Packages installing scrollkeeper data files d8411 1 a8411 1 17.6.10. Packages installing X11 fonts d8428 1 a8428 1 17.6.11. Packages installing GTK2 modules d8456 1 a8456 1 17.6.12. Packages installing SGML or XML data d8484 1 a8484 1 17.6.13. Packages installing extensions to the MIME database d8514 1 a8514 1 17.6.14. Packages using intltool d8525 1 a8525 1 17.6.15. Packages installing startup scripts d8536 1 a8536 1 17.6.16. Packages installing TeX modules d8574 1 a8574 1 17.6.17. Packages supporting running binaries in d8591 1 a8591 1 17.6.18. Packages installing hicolor theme icons d8613 1 a8613 1 17.6.19. Packages installing desktop files d8632 1 a8632 1 17.7. Marking packages as having problems d8659 1 a8659 1 Chapter 18. Debugging d8698 1 a8698 1 necessary; see Section 9.1, “Makefile.

    d8737 1 a8737 1
  • Submit (or commit, if you have cvs access); see Chapter 19, Submitting and Committing.

  • d8742 1 a8742 1 Chapter 19. Submitting and Committing d8746 6 a8751 6
    19.1. Submitting binary packages
    19.2. Submitting source packages (for non-NetBSD-developers)
    19.3. General notes when adding, updating, or removing packages
    19.4. Committing: Importing a package into CVS
    19.5. Updating a package to a newer version
    19.6. Moving a package in pkgsrc
    d8756 1 a8756 1 19.1. Submitting binary packages d8767 1 a8767 1 19.2. Submitting source packages (for non-NetBSD-developers) d8769 1 a8769 1 runs well; see Chapter 18, Debugging and the rest of this d8794 1 a8794 1 19.3. General notes when adding, updating, or removing packages d8827 1 a8827 1 19.4. Committing: Importing a package into CVS d8853 1 a8853 1 19.5. Updating a package to a newer version d8877 1 a8877 1 19.6. Moving a package in pkgsrc d8911 1 a8911 1 Chapter 20. Frequently Asked Questions d8919 1 a8919 1
    20.1. What is the difference between d8923 1 a8923 1
    20.2. What is the difference between d8927 1 a8927 1
    20.3. What is the difference between d8931 1 a8931 1
    20.4. What is the difference between d8936 1 a8936 1
    20.5. Why does make show-var d8940 1 a8940 1
    20.6. What does d8945 1 a8945 1
    20.7. Which mailing lists are there for package d8948 1 a8948 1
    20.8. Where is the pkgsrc d8957 1 a8957 1 20.1. d8973 1 a8973 1 20.2. d8991 1 a8991 1 20.3. d9009 1 a9009 1 20.4. d9022 1 a9022 1 20.5. d9038 1 a9038 1 20.6. d9062 1 a9062 1 20.7. d9087 1 a9087 1 20.8. d9137 1 a9137 1 Chapter 21. GNOME packaging and porting d9141 4 a9144 4
    21.1. Meta packages
    21.2. Packaging a GNOME application
    21.3. Updating GNOME to a newer version
    21.4. Patching guidelines
    d9181 1 a9181 1 21.1. Meta packages d9215 1 a9215 1 21.2. Packaging a GNOME application d9273 1 a9273 1

    Table 21.1. PLIST handling for GNOME packages

    d9286 1 a9286 1 See Section 17.6.9, “Packages installing scrollkeeper data files”. d9292 1 a9292 1 See Section 17.6.18, “Packages installing hicolor theme icons”. d9297 1 a9297 1 See Section 17.6.13, “Packages installing extensions to the MIME database”. d9303 1 a9303 1 See Section 17.6.19, “Packages installing desktop files”. d9311 1 a9311 1 21.3. Updating GNOME to a newer version d9400 1 a9400 1 21.4. Patching guidelines d9404 1 a9404 1 fixes you do to a GNOME package to the mainstream developers (see Section 9.3.2, “Feedback to the author”). This is the only way to get d9421 1 a9421 1 guidelines (Section 9.3.1, “Patching guidelines”) for more d9438 1 a9438 1
    22. Design of the pkgsrc infrastructure
    d9440 3 a9442 3
    22.1. The meaning of variable definitions
    22.2. Avoiding problems before they arise
    22.3. Variable evaluation
    d9444 2 a9445 2
    22.3.1. At load time
    22.3.2. At runtime
    d9447 2 a9448 2
    22.4. How can variables be specified?
    22.5. Designing interfaces for Makefile fragments
    d9450 2 a9451 2
    22.5.1. Procedures with parameters
    22.5.2. Actions taken on behalf of parameters
    d9453 1 a9453 1
    22.6. The order in which files are loaded
    d9455 2 a9456 2
    22.6.1. The order in bsd.prefs.mk
    22.6.2. The order in bsd.pkg.mk
    d9459 1 a9459 1
    23. Regression tests
    d9461 3 a9463 3
    23.1. The regression tests framework
    23.2. Running the regression tests
    23.3. Adding a new regression test
    d9465 2 a9466 2
    23.3.1. Overridable functions
    23.3.2. Helper functions
    d9469 1 a9469 1
    24. Porting pkgsrc
    d9471 2 a9472 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d9479 1 a9479 1 Chapter 22. Design of the pkgsrc infrastructure d9483 3 a9485 3
    22.1. The meaning of variable definitions
    22.2. Avoiding problems before they arise
    22.3. Variable evaluation
    d9487 2 a9488 2
    22.3.1. At load time
    22.3.2. At runtime
    d9490 2 a9491 2
    22.4. How can variables be specified?
    22.5. Designing interfaces for Makefile fragments
    d9493 2 a9494 2
    22.5.1. Procedures with parameters
    22.5.2. Actions taken on behalf of parameters
    d9496 1 a9496 1
    22.6. The order in which files are loaded
    d9498 2 a9499 2
    22.6.1. The order in bsd.prefs.mk
    22.6.2. The order in bsd.pkg.mk
    d9509 1 a9509 1 22.1. The meaning of variable definitions d9540 1 a9540 1 22.2. Avoiding problems before they arise d9564 1 a9564 1 22.3. Variable evaluation d9567 1 a9567 1 22.3.1. At load time d9609 1 a9609 1 22.3.2. At runtime d9617 1 a9617 1 22.4. How can variables be specified? d9626 1 a9626 1 22.5. Designing interfaces for Makefile fragments d9633 1 a9633 1 22.5.1. Procedures with parameters d9667 1 a9667 1 22.5.2. Actions taken on behalf of parameters d9679 1 a9679 1 22.6. The order in which files are loaded d9694 1 a9694 1 22.6.1. The order in bsd.prefs.mk d9721 1 a9721 1 22.6.2. The order in bsd.pkg.mk d9753 1 a9753 1 Chapter 23. Regression tests d9757 3 a9759 3
    23.1. The regression tests framework
    23.2. Running the regression tests
    23.3. Adding a new regression test
    d9761 2 a9762 2
    23.3.1. Overridable functions
    23.3.2. Helper functions
    d9776 1 a9776 1 23.1. The regression tests framework d9781 1 a9781 1 23.2. Running the regression tests d9789 1 a9789 1 23.3. Adding a new regression test d9798 1 a9798 1 23.3.1. Overridable functions d9825 1 a9825 1 23.3.2. Helper functions d9848 1 a9848 1 Chapter 24. Porting pkgsrc d9852 2 a9853 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d9862 1 a9862 1 24.1. Porting pkgsrc to a new operating system d9913 1 a9913 1 24.2. Adding support for a new compiler d10009 1 a10009 1 PLIST (see Chapter 9, Package components - files, directories and contents) @ 1.88 log @regen (various improvements and additional documentation). @ text @d8 5 a12 1 a113 1
    4.2.4. Selecting the compiler
    d122 3 a124 2
    5.3.1. Additional flags to the compiler (CFLAGS)
    5.3.2. Additional flags to the linker (LDFLAGS)
    d167 2 a168 1
    7.18. I have a little time to kill. What shall I do?
    d552 1 a552 1
    d617 1 a617 1
    a618 1
    a778 1
    4.2.4. Selecting the compiler
    d787 3 a789 2
    5.3.1. Additional flags to the compiler (CFLAGS)
    5.3.2. Additional flags to the linker (LDFLAGS)
    d832 2 a833 1
    7.18. I have a little time to kill. What shall I do?
    d1042 1 a1042 1
    d1213 1 a1213 1
    d1215 1 a1215 1

    d1269 1 a1269 1 image, or a UFS d1276 2 a1277 2

    If you already have a UFS partition, or have a spare partition that you can format as UFS, it is recommended to use that instead of d1283 1 a1283 1 requires the file system to be case-sensitive. You can, however, use a case-sensitive HFS+ file system as found in Darwin 7.0 and newer.

    d1295 1 a1295 1

    darwindiskimage will mount the filesystem nosuid, which will cause problems for packages that depend on setgid. It will also mount the filesystem asynchronous, which is somewhat dangerous according to the mount(8) man page.

    d1297 2 a1298 2

    Allow suid and synchronous writes:

    # sudo mount -u -o suid,sync /Volumes/NetBSD
    d1302 1 a1302 1
    3.3.1.2. Using a UFS partition d1307 1 a1307 1 file system. Obviously, another symlink is required if you want to d1312 1 a1312 1 and formatted the target partition as UFS, it should automatically d1314 1 a1314 1 machine boots. If you are (re)formatting a partition as UFS, you need d1316 1 a1316 1 “Apple_UFS” and not “Apple_HFS”.

    d1325 2 a1326 2 to be UFS, and Format it Apple UFS. Quit the Disk Utility, quit the installer which will reboot your machine. The new UFS file system a1814 1
    4.2.4. Selecting the compiler
    a2246 41

    4.2.4. Selecting the compiler

    By default, pkgsrc will use GCC to build packages. This may be overridden by setting the following variables in /etc/mk.conf:

    PKGSRC_COMPILER:

    This is a list of values specifying the chain of compilers to invoke when building packages. Valid values are:

    • distcc: distributed C/C++ (chainable)

    • ccache: compiler cache (chainable)

    • gcc: GNU C/C++ Compiler

    • mipspro: Silicon Graphics, Inc. MIPSpro (n32/n64)

    • mipspro: Silicon Graphics, Inc. MIPSpro (o32)

    • sunpro: Sun Microsystems, Inc. WorkShip/Forte/Sun ONE Studio

    The default is “gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This variable should always be terminated with a value for a real compiler.

    GCC_REQD:

    This specifies the minimum version of GCC to use when building packages. If the system GCC doesn't satisfy this requirement, then pkgsrc will build and install one of the GCC packages to use instead.

    d2259 3 a2261 2
    5.3.1. Additional flags to the compiler (CFLAGS)
    5.3.2. Additional flags to the linker (LDFLAGS)
    d2267 17 d2288 4 a2291 5 pkgsrc packages. The preferred method of setting these variables is by setting them in /etc/mk.conf. A complete list of the variables that can be configured by the user is available in mk/defaults/mk.conf, together with some comments that describe the variable's intent.

    d2346 1 a2346 1 — it is an internal definition which refers to the d2374 42 a2415 1 5.3.1. Additional flags to the compiler (CFLAGS) d2430 1 a2430 1 5.3.2. Additional flags to the linker (LDFLAGS) a2443 1

    See also Section 17.5.3, “Undefined reference to “...””.

    d2851 1 a2851 1 e. g. for sysutils/aperture):

    d3061 2 a3062 1
    7.18. I have a little time to kill. What shall I do?
    d3465 14 a3478 1 7.18. I have a little time to kill. What shall I do? d3487 1 a3487 1 — it contains a list of suggested new packages and a list of d4065 1 a4065 1 kqueue support, add a check that detects kqueue itself — d4080 1 a4080 1
    d4145 1 a4145 1
    d4147 1 a4147 1

    For more information, please read the Making d4388 1 a4388 1

    No rule without exception—the .for d8789 1 a8789 1

    20.1. What is the difference between d8793 1 a8793 1
    20.2. What is the difference between d8797 1 a8797 1
    20.3. What is the difference between d8801 1 a8801 1
    20.4. What is the difference between d8806 1 a8806 1
    20.5. Why does make show-var d8810 1 a8810 1
    20.6. What does d8815 1 a8815 1
    20.7. Which mailing lists are there for package d8818 1 a8818 1
    20.8. Where is the pkgsrc d8827 1 a8827 1 20.1. d8834 1 a8834 1 d8843 1 a8843 1 20.2. d8850 1 a8850 1 d8861 1 a8861 1 20.3. d8868 1 a8868 1 d8879 1 a8879 1 20.4. d8887 1 a8887 1 d8892 1 a8892 1 20.5. d8899 1 a8899 1 d8908 1 a8908 1 20.6. d8916 1 a8916 1 d8932 1 a8932 1 20.7. d8938 1 a8938 1 d8957 1 a8957 1 20.8. d8963 1 a8963 1 d9117 9 a9125 3 the default) and change the location of installed HTML files:

    CONFIGURE_ARGS+=--disable-gtk-doc
    CONFIGURE_ARGS+=--with-html-dir=${PREFIX}/share/doc
    d9144 1 a9144 1
    d9176 1 a9176 1
    a9177 1
    d9506 2 a9507 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d10112 5 a10116 3 ftp.NetBSD.org is /pub/pkgsrc. This directory contains some subdirectories, which are explained below.

    d10174 3 a10176 3 snapshot of the CVS repository, which is updated on a regularly basis. The file pkgsrc.tar.gz contains the same as the directory, ready to be downloaded as a whole.

    @ 1.87 log @regen @ text @d58 1 a58 4
    1.3.1. Commonly used abbreviations
    1.3.2. Roles involved in pkgsrc
    d118 4 a121 1
    5.3.1. Additional flags to the compiler (CFLAGS)
    d162 2 a163 1
    7.17. A package does not build. What shall I do?
    d275 2 a276 1
    15.16. Other helpful targets
    d469 1 a469 4
    1.3.1. Commonly used abbreviations
    1.3.2. Roles involved in pkgsrc
    d680 3 a682 3

    The piece of software to be installed which will be constructed from all the files in the distfile by the actions defined in the corresponding package.

    d686 1 a686 10 1.3.1. Commonly used abbreviations
    ICE

    Internal Compiler Error

    1.3.2. Roles involved in pkgsrc

    d783 4 a786 1
    5.3.1. Additional flags to the compiler (CFLAGS)
    d827 2 a828 1
    7.17. A package does not build. What shall I do?
    d1815 5 a1819 5 is to only install the package tools and to use binary packages that someone else has prepared. This is the “pkg” in pkgsrc. The second way is to install the “src” of pkgsrc, too. Then you are able to build your own packages, and you can still use binary packages from someone else.

    d1824 5 a1828 5 them. On NetBSD, these tools are already installed. On all other operating systems, you need to install them first. For the following platforms, prebuilt versions of the package tools are available and can simply be downloaded and unpacked in the / directory:

    d1852 5 a1856 5 /usr/pkg for the base directory, and /var/db/pkg for the database of installed packages. If you cannot use these directories for whatever reasons (maybe because you're not root), you have to build the package tools yourself, which is explained in Section 3.2, “Bootstrapping pkgsrc”.

    d1861 2 a1862 2 where to get them. You can get them on CD-ROMs, DVDs, or via FTP or HTTP.

    d1864 1 a1864 1 locations.

    d1892 9 a1900 9 multiple platforms. Select the appropriate subdirectories, according to your machine architecture and operating system, until you find a directory called All. This directory contains all the binary packages. Further, there are subdirectories for categories that contain symbolic links that point to the actual binary package in ../All. This directory layout is used for all package repositories, no matter if they are accessed via HTTP, FTP, NFS, CD-ROM, or the local filesystem.

    d1906 2 a1907 2 your hard disk, you can install them with the following command (be sure to su to root first):

    d1910 2 a1911 2 packages via FTP prior to installation, you can do this automatically by giving pkg_add an FTP URL:

    d1914 2 a1915 2 package in question will be installed, too, assuming they are present where you install from.

    d1917 3 a1919 3 PKG_PATH environment variable to a semicolon-separated list of paths (including remote URLs); trailing slashes are not allowed.

    d1921 12 a1932 12 there exists a vulnerable directory to which binary packages with known vulnerabilities are moved, since removing them could cause missing dependencies. To use these packages, add the vulnerable directory to your PKG_PATH. However, you should run security/audit-packages regularly, especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration. An example PKG_PATH would be: ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/vulnerable Please note that semicolon (';') is a shell meta-character, so you'll probably have to quote it.

    d1934 3 a1936 3 /usr/pkg/bin and /usr/pkg/sbin in your PATH so you can actually start the just installed program.

    d1942 9 a1950 9 installed from source code or from a binary package. The pkg_delete command does not know it anyway. To delete a package, you can just run pkg_delete package-name. The package name can be given with or without version number. Wildcards can also be used to deinstall a set of packages, for example *emacs*. Be sure to include them in quotes, so that the shell does not expand them before pkg_delete sees them.

    d1952 2 a1953 2 removes all the packages that require the package in question and then removes the package itself. For example: d1955 1 a1955 1

    d1957 2 a1958 2 # pkg_delete -r jpeg d1961 2 a1962 2 will remove jpeg and all the packages that used it; this allows upgrading the jpeg package.

    d1968 1 a1968 1 installed packages or binary package files.

    d1974 5 a1978 5 The NetBSD Security-Officer and Packages Groups maintain a list of known security vulnerabilities to packages which are (or have been) included in pkgsrc. The list is available from the NetBSD FTP site at ftp://ftp.NetBSD.org/pub/pkgsrc/distfiles/vulnerabilities.

    d1980 5 a1984 5 Through security/audit-packages, this list can be downloaded automatically, and a security audit of all packages installed on a system can take place.

    d1986 8 a1993 8 There are two components to security/audit-packages. The first component, “download-vulnerability-list”, is for downloading the list of vulnerabilities from the NetBSD FTP site. The second component, “audit-packages”, checks to see if any of your installed packages are vulnerable. If a package is vulnerable, you will see output similar to the following:

    d1995 1 a1995 1 http://www.samba.org/samba/whatsnew/macroexploit.html d1997 6 a2002 6 One can set up security/audit-packages to download the vulnerabilities file daily, and include a package audit in the daily security script. Details on this are located in the MESSAGE file for security/audit-packages.

    d2008 6 a2013 5 Install pkgtools/pkglint and run lintpkgsrc with the “-i” argument to check if your packages are up-to-date, e.g.

    % lintpkgsrc -i
    d2015 2
    a2016 1
    Version mismatch: 'tcsh' 6.09.00 vs 6.10.00
    d2018 2 a2019 2 package on your system and rebuild any dependencies.

    d2025 1 a2025 1 administrative functions on the package system.

    d2031 5 a2035 5 expressed in the pkg_add(1) manual page about the inherent dangers of installing binary packages which you did not create yourself, and the security holes that can be introduced onto your system by indiscriminate adding of such files.

    d2037 4 a2040 4 install from source when you haven't completely read and understood the source code of the package, the compiler that is used to build the package and all the other tools that are involved.

    d2046 15 a2060 16

    After obtaining pkgsrc, the pkgsrc directory now contains a set of packages, organized into categories. You can browse the online index of packages, or run make readme from the pkgsrc directory to build local README.html files for all packages, viewable with any web browser such as www/lynx or www/firefox.

    The default prefix for installed packages is /usr/pkg. If you wish to change this, you should do so by setting LOCALBASE in mk.conf. You should not try to use multiple different LOCALBASE definitions on the same system (inside a chroot is an exception).

    The rest of this chapter assumes that the package is already in pkgsrc. If it is not, see Part II, “The pkgsrc developer's guide” for instructions how to create your own packages.

    d2065 5 a2069 5 compiler. On NetBSD, you need to install the “comp” and the “text” distribution sets. If you want to build X11-related packages, the “xbase” and “xcomp” distribution sets are required, too.

    d2075 7 a2081 8 distfiles (i.e. the unmodified source). If they have not yet been downloaded, pkgsrc will fetch them automatically.

    If you have all files that you need in the distfiles directory, you don't need to connect. If the distfiles are on CD-ROM, you can mount the CD-ROM on /cdrom and add:

    d2084 12 a2095 9 to your mk.conf.

    You can overwrite some of the major distribution sites to fit to sites that are close to your own. Have a look at pkgsrc/mk/defaults/mk.conf to find some examples — in particular, look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY definitions. This may save some of your bandwidth and time.

    d2097 3 a2099 3 if you want to keep the settings, by editing the /etc/mk.conf file, and adding the definitions there.

    d2101 6 a2106 6 If a package depends on many other packages (such as meta-pkgs/kde3), the build process may alternate between periods of downloading source, and compiling. To ensure you have all the source downloaded initially you can run the command:

    d2109 4 a2112 4 which will output and run a set of shell commands to fetch the necessary files into the distfiles directory. You can also choose to download the files manually.

    d2118 5 a2122 5 Once the software has downloaded, any patches will be applied, then it will be compiled for you. This may take some time depending on your computer, and how many other packages the software depends on and their compile time.

    d2126 2 a2127 2 use the pkgsrc bmake command instead of “make” in the examples in this guide.

    d2130 4 a2133 2
    % cd misc/figlet
    % make
    d2135 1 a2135 1 package.

    d2137 1 a2137 1 program onto your system. Do this by entering: d2139 1 a2139 1

    d2141 2 a2142 2 % make install d2145 2 a2146 2 while you are still in the directory for whatever package you are installing.

    d2148 3 a2150 3 be root. However, pkgsrc has a just-in-time-su feature, which allows you to only become root for the actual installation step.

    d2152 1 a2152 1 You can now enter: d2154 1 a2154 1

    d2156 2 a2157 2 % make clean d2160 4 a2163 4 to remove the compiled files in the work directory, as you shouldn't need them any more. If other packages were also added to your system (dependencies) to allow your program to compile, you can tidy these up also with the command:

    d2165 2 a2166 2 % make clean-depends d2168 30 a2197 26 system by building as shown in Appendix B, Build logs.

    The program is installed under the default root of the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your environment, and it will use that value as the root of your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your environment. Please note that you should use a directory which is dedicated to packages and not shared with other programs (i.e., do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent possible conflicts between programs and other files installed by the package system and whatever else may have been installed there.

    Some packages look in /etc/mk.conf to alter some configuration options at build time. Have a look at pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in /etc/mk.conf to save having to remember to set them each time you want to use pkgsrc.

    Occasionally, people want to “look under the covers” to see what is going on when a package is building or being installed. This may be for debugging purposes, or out of simple curiosity. A number of utility values have been added to help with this.

    d2200 3 a2202 2

    If you invoke the make(1) command with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

    d2204 2 a2205 2

    will show all the commands that are invoked, up to and including the “patch” stage.

    d2208 7 a2214 5

    If you want to know the value of a certain make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the make(1) variable LOCALBASE:

    % make show-var VARNAME=LOCALBASE
    d2217 1
    a2217 1
              
    d2221 21 a2241 19 created yourself (see next section), that you put into pkgsrc/packages manually or that is located on a remote FTP server, you can use the "bin-install" target. This target will install a binary package - if available - via pkg_add(1), else do a make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITES, which defaults to ftp.NetBSD.org. Any flags that should be added to pkg_add(1) can be put into BIN_INSTALL_FLAGS. See pkgsrc/mk/defaults/mk.conf for more details.

    A final word of warning: If you set up a system that has a non-standard setting for LOCALBASE, be sure to set that before any packages are installed, as you cannot use several directories for the same purpose. Doing so will result in pkgsrc not being able to properly detect your installed packages, and fail miserably. Note also that precompiled binary packages are usually built with the default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

    d2247 1 a2247 1 overridden by setting the following variables in /etc/mk.conf:

    d2252 2 a2253 2 compilers to invoke when building packages. Valid values are:

    d2256 1 a2256 1 distributed C/C++ (chainable)

    d2258 1 a2258 1 compiler cache (chainable)

    d2260 1 a2260 1 GNU C/C++ Compiler

    d2262 1 a2262 1 Silicon Graphics, Inc. MIPSpro (n32/n64)

    d2264 1 a2264 1 Silicon Graphics, Inc. MIPSpro (o32)

    d2266 1 a2266 1 Sun Microsystems, Inc. WorkShip/Forte/Sun ONE Studio

    d2269 7 a2275 7 “gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This variable should always be terminated with a value for a real compiler.

    d2279 3 a2281 3 when building packages. If the system GCC doesn't satisfy this requirement, then pkgsrc will build and install one of the GCC packages to use instead.

    d2295 4 a2298 1
    5.3.1. Additional flags to the compiler (CFLAGS)
    d2407 18 d2437 4 a2440 3
  • make sure patches apply with zero fuzz

  • run check-shlibs to see that all binaries will find their shared libs.

  • d2445 9 a2453 10
  • PKG_DEBUG_LEVEL: The level of debugging output which is displayed whilst making and installing the package. The default value for this is 0, which will not display the commands as they are executed (normal, default, quiet operation); the value 1 will display all shell commands before their invocation, and the value 2 will display both the shell commands before their invocation, and their actual execution progress with set -x will be displayed.

  • d2461 3 a2463 3

    Some packages have build time options, usually to select between different dependencies, enable optional support for big dependencies or enable experimental features.

    d2465 2 a2466 2 options are mutually exclusive, run make show-options, for example:

    d2481 9 a2489 8 /etc/mk.conf to select which options to enable for a package: PKG_DEFAULT_OPTIONS, which can be used to select or disable options for all packages that support them, and PKG_OPTIONS.pkgbase, which can be used to select or disable options specifically for package pkgbase. Options listed in these variables are selected, options preceded by “-” are disabled. A few examples:

    d2495 3 a2497 2

    The following settings are consulted in the order given, and the last setting that selects or disables an option is used:

    d2500 1 a2500 1 maintainer

    d2502 1 a2502 1 variables (see below)

    d2507 16 a2522 15 selected is used, all others are automatically disabled. If an option of the group is explicitly disabled, the previously selected option, if any, is used. It is an error if no option from a required group of options is selected, and building the package will fail.

    Before the options framework was introduced, build options were selected by setting a variable (often named USE_FOO) in /etc/mk.conf for each option. To ease transition to the options framework for the user, these legacy variables are converted to the appropriate options setting (PKG_OPTIONS.pkgbase) automatically. A warning is issued to prompt the user to update /etc/mk.conf to use the options framework directly. Support for the legacy variables will be removed eventually.

    d2577 1 a2577 1

    See Section 15.16, “Other helpful targets”.

    d3040 2 a3041 1
    7.17. A package does not build. What shall I do?
    d3272 3 a3274 3

    You would like to download all the distfiles in a single batch from work or university, where you can't run a make fetch. There is an archive of distfiles on ftp.NetBSD.org, d3291 4 a3294 4 all distfiles (even ones that aren't for your machine architecture), you can do so by using the above-mentioned make fetch-list approach, or fetch the distfiles directly by running:

    d3423 1 a3423 1 7.17. A package does not build. What shall I do? d3442 19 d3582 2 a3583 1
    15.16. Other helpful targets
    d3919 3 a3921 2 installed in compressed form by the package; see comment in bsd.pkg.mk.

    d3923 3 a3925 3 “${PREFIX}” in all files (see patches, below).

  • If the package installs any info files, see Section 17.6.6, “Packages installing info files”.

  • d4619 1 a4619 1 was extracted. See Section 15.16, “Other helpful targets” for d4892 6 a4897 4
  • motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif.

  • d5877 2 a5878 1
    15.16. Other helpful targets
    d5911 1 a5911 1 for pkgs in the “cross” category. The value of d5918 8 a5925 7
  • PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own installation path, use “${PREFIX}”.

  • LOCALBASE is where all non-X11 pkgs are installed. If you need to construct a -I or -L argument to the compiler to find includes and libraries installed by another non-X11 pkg, use “${LOCALBASE}”. The name d5930 8 a5937 7

  • X11BASE is where the actual X11 distribution (from xsrc, etc.) is installed. When looking for standard X11 includes (not those installed by a pkg), use “${X11BASE}”.

  • X11-based packages are special in that they may be installed in either X11BASE or LOCALBASE.

    d5939 5 a5943 4 LOCALBASE whenever possible. Note that you will need to include ../../mk/x11.buildlink3.mk in them to request the presence of X11 and to get the right compilation flags.

    d5960 17 a5976 13
  • X11PREFIX should be used to refer to the installed location of an X11 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is installed.

  • If xpkgwedge is installed, it is possible to have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME=<package>”, and the make(1) variable DIRNAME will be set to the prefix of the installed package <package>, or “${X11PREFIX}” if the package is not installed.

    d5986 3 a5988 2

    Specific defaults can be defined for the packages evaluated using EVAL_PREFIX, by using a definition of the form:

    d6050 3 a6052 3 distribution files (distfiles) from the sites that are providing them. This is the task of the fetch phase.

    d6056 15 a6070 14

    In simple cases, MASTER_SITES defines all URLs from where the distfile, whose name is derived from the DISTNAME variable, is fetched. The more complicated cases are described below.

    The variable DISTFILES specifies the list of distfiles that have to be fetched. Its value defaults to ${DISTNAME}${EXTRACT_SUFX}, so that most packages don't need to define it at all. EXTRACT_SUFX is .tar.gz by default, but can be changed freely. Note that if your package requires additional distfiles to the default one, you cannot just append the additional filenames using the += operator, but you have write for example:

    d6072 18 a6089 17 DISTFILES= ${DISTNAME}${EXTRACT_SUFX} additional-files.tar.gz

    Each of the distfiles is fetched from a list of sites, usually MASTER_SITES. If the package has multiple DISTFILES or multiple PATCHFILES from different sites, you can set SITES.distfile to the list of URLs where the file distfile (including the suffix) can be found.

        DISTFILES=      ${DISTNAME}${EXTRACT_SUFX}
        DISTFILES+=     foo-file.tar.gz
        SITES.foo-file.tar.gz= \
                http://www.somewhere.com/somehow/ \
                http://www.somewhereelse.com/mirror/somehow/
    
    d6091 8 a6098 7 MASTER_SITES or SITES.* gets the name of each distfile appended to it, without an intermediate slash. Therefore, all site values have to end with a slash or other separator character. This allows for example to set MASTER_SITES to a URL of a CGI script that gets the name of the distfile as a parameter. In this case, the definition would look like:

    d6100 2 a6101 2 MASTER_SITES= http://www.example.com/download.cgi?file= d6103 38 a6140 2 MASTER_SITES, which can be used in packages. The names of the variables should speak for themselves.

    d6142 3 a6144 34 ${MASTER_SITE_APACHE} ${MASTER_SITE_BACKUP} ${MASTER_SITE_CYGWIN} ${MASTER_SITE_DEBIAN} ${MASTER_SITE_FREEBSD} ${MASTER_SITE_FREEBSD_LOCAL} ${MASTER_SITE_GNOME} ${MASTER_SITE_GNU} ${MASTER_SITE_GNUSTEP} ${MASTER_SITE_IFARCHIVE} ${MASTER_SITE_KDE} ${MASTER_SITE_MOZILLA} ${MASTER_SITE_MYSQL} ${MASTER_SITE_OPENOFFICE} ${MASTER_SITE_PERL_CPAN} ${MASTER_SITE_PGSQL} ${MASTER_SITE_R_CRAN} ${MASTER_SITE_SOURCEFORGE} ${MASTER_SITE_SOURCEFORGE_JP} ${MASTER_SITE_SUNSITE} ${MASTER_SITE_SUSE} ${MASTER_SITE_TEX_CTAN} ${MASTER_SITE_XCONTRIB} ${MASTER_SITE_XEMACS}

    If you choose one of these predefined sites, you may want to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

        MASTER_SITES=   ${MASTER_SITE_GNU:=subdirectory/name/}
        MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE:=project_name/}
    
    d6146 1 a6146 1 name.

    d6151 5 a6155 7

    The fetch phase makes sure that all the distfiles exist in a local directory (DISTDIR), which can be set by the pkgsrc user). If the files do not exist, they are fetched using commands of the form

    d6157 12 a6168 14 ${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS}

    where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES.file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    d6174 7 a6180 6

    After the distfile(s) are fetched, their checksum is generated and compared with the checksums stored in the distinfo file. If the checksums don't match, the build is aborted. This is to ensure the same distfile is used for building, and that the distfile wasn't changed, e.g. by some malign force, deliberately changed distfiles on the master distribution site or network lossage.

    d6186 2 a6187 2 need to be extracted, as they usually come in the form of some compressed archive format.

    d6189 8 a6196 8 extracted. If you only need some of them, you can set the EXTRACT_ONLY variable to the list of those files.

    Extracting the files is usually done by a little program, mk/scripts/extract, which already knows how to extract various archive formats, so most likely you will not need to change anything here. But if you need, the following variables may help you:

    d6200 2 a6201 2 options for an extract command, which are defined in mk/scripts/extract.

  • d6204 4 a6207 3 pax, tar or an absolute pathname pointing to the command with which tar archives should be extracted.

    d6209 8 a6216 8

    If the extract program doesn't serve your needs, you can also override the EXTRACT_CMD variable, which holds the command used for extracting the files. This command is executed in the ${WRKSRC} directory. During execution of this command, the shell variable extract_file holds the absolute pathname of the file that is going to be extracted.

    d6218 2 a6219 2 do-extract target in the package Makefile.

    d6225 16 a6240 14 PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See Section 9.3, “patches/*” for more details.

    By default patch(1) is given special args to make it fail if the patches apply with some lines of fuzz. Please fix (regen) the patches so that they apply cleanly. The rationale behind this is that patches that don't apply cleanly may end up being applied in the wrong place, and cause severe harm there.

    d6245 2 a6246 3

    This is covered in Chapter 16, Tools needed for building or running.

    d6252 2 a6253 2 linkers. The following variables can be used to tweak the wrappers.

    d6257 3 a6259 3 messages. Does nothing by default. Set to ${ECHO} to see the progress messages.

    d6262 3 a6264 4 yes (default) or no, depending on whether you want additional information in the wrapper log file.

    d6267 6 a6272 6 yes or no, depending on whether the wrapper should use its cache, which will improve the speed. The default value is yes, but is forced to no if the platform does not support it.

    d6274 7 a6280 8

    A list of reordering commands. A reordering command has the form reorder:l:lib1:lib2. It ensures that that -llib1 occurs before -llib2.

    d6283 1 a6283 1 investigate further]

    d6289 36 a6324 31

    Most pieces of software need information on the header files, system calls, and library routines which are available on the platform they run on. The process of determining this information is known as configuration, and is usually automated. In most cases, a script is supplied with the distfiles, and its invocation results in generation of header files, Makefiles, etc.

    If the package contains a configure script, this can be invoked by setting HAS_CONFIGURE to “yes”. If the configure script is a GNU autoconf script, you should set GNU_CONFIGURE to “yes” instead. What happens in the configure phase is roughly:

        .for d in ${CONFIGURE_DIRS}
                cd ${WRKSRC} && cd ${d} && env ${CONFIGURE_ENV} \
                    ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}
        .endfor
    

    CONFIGURE_DIRS (default: “.”) is a list of pathnames relative to WRKSRC. In each of these directories, the configure script is run with the environment CONFIGURE_ENV and arguments CONFIGURE_ARGS. The variables CONFIGURE_ENV, CONFIGURE_SCRIPT (default: “./configure”) and CONFIGURE_ARGS may all be changed by the package.

    If the program uses an Imakefile for configuration, the appropriate steps can be invoked by setting USE_IMAKE to “yes”. (If you only want the package installed in ${X11PREFIX} but xmkmf not being run, set USE_X11BASE instead.)

    d6329 2 a6330 2

    For building a package, a rough equivalent of the following code is executed.

    d6332 17 a6348 14 .for d in ${BUILD_DIRS} cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \ ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} \ -f ${MAKE_FILE} ${BUILD_TARGET} .endfor

    BUILD_DIRS (default: “.”) is a list of pathnames relative to WRKSRC. In each of these directories, MAKE_PROGRAM is run with the environment MAKE_ENV and arguments BUILD_MAKE_FLAGS. The variables MAKE_ENV, BUILD_MAKE_FLAGS, MAKE_FILE and BUILD_TARGET may all be changed by the package.

    d6350 5 a6354 4 “gmake” if USE_TOOLS contains “gmake”, “make” otherwise. The default value of MAKE_FILE is “Makefile”, and BUILD_TARGET defaults to “all”.

    d6365 2 a6366 2 install the software in public directories, so users can access the programs and files.

    d6368 10 a6377 10 equivalent of the following code is executed. Additionally, before and after this code, much magic is performed to do consistency checks, registering the package, and so on.

        .for d in ${INSTALL_DIRS}
                cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \
                    ${MAKE_PROGRAM} ${INSTALL_MAKE_FLAGS} \
                        -f ${MAKE_FILE} ${BUILD_TARGET}
        .endfor
    
    d6379 7 a6385 6 build phase. INSTALL_DIRS defaults to BUILD_DIRS. INSTALL_TARGET is “install” by default, plus “install.man” if USE_IMAKE is defined.

    d6387 5 a6391 5 variables are useful. They are all variations of the install(1) command that have the owner, group and permissions preset. INSTALL is the plain install command. The specialized variants, together with their intended use, are:

    d6394 2 a6395 1

    directories that contain binaries

    d6397 2 a6398 1

    directories that contain scripts

    d6400 2 a6401 1

    directories that contain shared and static libraries

    d6403 2 a6404 1

    directories that contain data files

    d6406 2 a6407 1

    directories that contain man pages

    d6409 2 a6410 1

    binaries that can be stripped from debugging symbols

    d6412 2 a6413 1

    binaries that cannot be stripped

    d6415 2 a6416 1

    game binaries

    d6418 2 a6419 1

    shared and static libraries

    d6423 2 a6424 1

    data files for games

    d6432 11 a6442 11 PREFIX that are created by pkgsrc at the beginning of the install phase. If this variable is set, NO_MTREE=“yes” is assumed, which means that the package claims to create all needed directories itself before installing files to it. Therefore this variable should only be set in Makefiles that are under control of the package's author. The directories are created with the correct ownership, depending on their name.

    d6448 19 a6466 1

    [TODO]

    d6470 1 a6470 1 15.16. Other helpful targets d6473 2 a6474 2

    For any of the main targets described in the previous section, two auxiliary targets exist with d6477 5 a6481 4 invoked before and after the main target is called, allowing extra configuration or installation steps be performed from a package's Makefile, for example, which a program's configure script or install target omitted.

    d6483 7 a6489 6

    Should one of the main targets do the wrong thing, and should there be no variable to fix this, you can redefine it with the do-* target. (Note that redefining the target itself instead of the do-* target is a bad idea, as the pre-* and post-* targets won't be called anymore, etc.) You will not usually need to do this.

    d6491 12 a6502 4

    If you did a make install and you noticed some file was not installed properly, you can repeat the installation with this target, which will ignore the “already installed” flag.

    d6505 4 a6508 3

    This target does a pkg_delete(1) in the current directory, effectively de-installing the package. The following variables can be used to tune the behaviour:

    d6513 4 a6516 3

    Remove all packages that require (depend on) the given package. This can be used to remove any packages that may have been pulled in by a given package, e.g. if make deinstall d6518 4 a6521 2 pkgsrc/x11/kde, this is likely to remove whole KDE. Works by adding “-R” to the pkg_delete(1) command line.

    d6524 9 d6535 29 a6563 21

    This target causes the current package to be updated to the latest version. The package and all depending packages first get de-installed, then current versions of the corresponding packages get compiled and installed. This is similar to manually noting which packages are currently installed, then performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    You can use the “update” target to resume package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise, you lose the ability to automatically update the current package along with the dependent packages you have installed.

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    The following variables can be used either on the command line or in /etc/mk.conf to alter the behaviour of make update:

    d6566 9 a6574 4

    Install target to recursively use for the updated package and the dependent packages. Defaults to DEPENDS_TARGET if set, “install” otherwise for make update. e.g. make update UPDATE_TARGET=package

    d6576 9 a6584 6

    Don't clean up after updating. Useful if you want to leave the work sources of the updated packages around for inspection or other purposes. Be sure you eventually clean up the source tree (see the “clean-update” target below) or you may run into troubles with old source code still lying around on your next make or make update.

    d6586 6 a6591 4

    Deinstall each package before installing (making DEPENDS_TARGET). This may be necessary if the “clean-update” target (see below) was called after interrupting a running make update.

    d6593 11 a6603 7

    Allows you to disable recursion and hardcode the target for packages. The default is “update” for the update target, facilitating a recursive update of prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    d6608 19 a6626 15

    Clean the source tree for all packages that would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    If you are unsure about whether your tree is clean, you can either perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running make update for the first time, otherwise you lose all the packages you wanted to update!):

    d6632 4 a6635 3

    The following variables can be used either on the command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    d6638 9 a6646 6

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see above).

    d6649 15 d6666 22 a6687 2 package. You can use this to check which version of a package is installed.

    d6689 21 a6709 16

    This target generates a README.html file, which can be viewed using a browser such as www/firefox or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d6711 9 a6719 6

    Use this target to create a file README-all.html which contains a list of all packages currently available in the NetBSD Packages Collection, together with the category they belong to and a short description. This file is compiled from the pkgsrc/*/README.html files, so be sure to run this after a make readme.

    d6721 7 a6727 5

    This is very much the same as the “readme” target (see above), but is to be used when generating a pkgsrc tree to be written to a CD-ROM. This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and d6730 4 a6733 3

    This target shows which distfiles and patchfiles are needed to build the package (ALLFILES, which contains all DISTFILES and d6737 7 a6743 5

    This target shows nothing if the package is not installed. If a version of this package is installed, but is not the version provided in this version of pkgsrc, then a warning message is displayed. This target can be used to show which of your installed packages are downlevel, and so the old versions can be deleted, and the current ones added.

    d6745 7 a6751 5

    This target shows the directory in the pkgsrc hierarchy from which the package can be built and installed. This may not be the same directory as the one from which the package was installed. This target is intended to be used by people who may wish to upgrade many packages on a single host, and can be invoked from the top-level pkgsrc Makefile by using the d6754 4 a6757 3

    This target shows which installed packages match the current package's DEPENDS. Useful if out of date dependencies are causing build problems.

    d6759 4 a6762 3

    After a package is installed, check all its binaries and (on ELF platforms) shared libraries to see if they find the shared libs they need. Run by default if PKG_DEVELOPER is set in d6767 4 a6770 4 upgraded pkg, this prints out an attempt to generate a new PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is d6776 3 a6778 3

    If the package installs files via tar(1) or other methods that don't update file access times, be sure to add these files manually to your d6787 10 a6796 9

    Used to do bulk builds. If an appropriate binary package already exists, no action is taken. If not, this target will compile, install and package it (and its depends, if PKG_DEPENDS is set properly. See Section 6.3.1, “Configuration”). After creating the binary package, the sources, the just-installed package and its required packages are removed, preserving free disk space.

    Beware that this target may deinstall all packages installed on a system!

    d6800 4 a6803 3

    Used during bulk-installs to install required packages. If an up-to-date binary package is available, it will be installed via pkg_add(1). If not, make bulk-package will be executed, d6805 9 a6813 7

    A binary package is considered “up-to-date” to be installed via pkg_add(1) if:

    • None of the package's files (Makefile, ...) were modified since it was built.

    • None of the package's required (binary) packages were modified since it was built.

    • d6815 2 a6816 2

      Beware that this target may deinstall all packages installed on a system!

      d7019 2 a7020 2

      Occasionally, packages require interaction from the user, and this can be in a number of ways:

      d7025 2 a7026 1
    • When extracting the distfiles, some packages may ask for passwords.

    • d7031 4 a7034 3

      The INTERACTIVE_STAGE definition is provided to notify the pkgsrc mechanism of an interactive stage which will be needed, and this should be set in the package's Makefile, e.g.:

      d7042 2 d7167 7 a7173 8 - and there are various ways of expressing this dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, the USE_TOOLS definition, as well as dependencies via buildlink3.mk, which is the preferred way to handle dependencies, and which uses the variables named above. See Chapter 12, Buildlink methodology for more information.

      d7294 5 a7298 8

      Please also note the BUILD_USES_MSGFMT and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

      d7305 2 a7306 2 installs the same set of files like another package in our pkgsrc tree.

      d7330 1 a7330 1 instructed to not build under certain circumstances. If the d7339 8 d7349 3 a7351 3 PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive d8496 4 a8499 4

      To check out all the gotchas when building a package, here are the steps that I do in order to get a package working. Please note this is basically the same as what was explained in the previous sections, only with some debugging aids.

      d8501 2 a8502 2
    • Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

    • d8505 2 a8506 2 create a directory for a new package, change into it, then run url2pkg:

      d8515 2 a8516 2 configure step to the package's Makefile.

      d8526 6 a8531 6

      Doing as non-root user will ensure that no files are modified that shouldn't be, especially during the build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

      d8533 2 a8534 2
    • Look at the Makefile, fix if necessary; see Section 9.1, “Makefile.

    • d8542 2 a8543 2

      You usually need to be root to do this. Look if there are any files left:

      d8546 1 a8546 1 PLIST, add them.

      d8549 2 a8550 2

      Now that the PLIST is OK, install the package again and make a binary package:

      d8556 1 a8556 1
      # pkg_delete blub
      d8559 2 a8560 2

      Repeat the above make print-PLIST command, which shouldn't find anything now:

      d8565 1 a8565 1
      # pkgadd .../blub.tgz
      d8567 1 a8567 1
    • Play with it. Make sure everything works.

    • d8569 2 a8570 3

      Run pkglint from pkgtools/pkglint, and fix the problems it reports:

      d8573 1 a8573 2
    • Submit (or commit, if you have cvs access); see Chapter 19, Submitting and Committing.

    • d8755 1 a8755 1
      20.1. What is the difference between d8759 1 a8759 1
      20.2. What is the difference between d8763 1 a8763 1
      20.3. What is the difference between d8767 1 a8767 1
      20.4. What is the difference between d8772 1 a8772 1
      20.5. Why does make show-var d8776 1 a8776 1
      20.6. What does d8781 1 a8781 1
      20.7. Which mailing lists are there for package d8784 1 a8784 1
      20.8. Where is the pkgsrc d8793 1 a8793 1 20.1. d8809 1 a8809 1 20.2. d8827 1 a8827 1 20.3. d8845 1 a8845 1 20.4. d8858 1 a8858 1 20.5. d8874 1 a8874 1 20.6. d8898 1 a8898 1 20.7. d8923 1 a8923 1 20.8. d9182 1 a9182 1
      $ echo ls "*.tar.bz2" | \
      d9185 1
      a9185 1
      $ echo ls "*.tar.bz2" | \
      d9213 1
      a9213 1
      
      $ cvs diff gnome-devel gnome-base gnome | grep '^+D' >todo.txt
      d9857 1 a9857 1
      # make makesum
      @ 1.86 log @ fix spelling @ text @d310 1 a310 1
      17.4. Fixing problems in the build phase
      d312 34 a345 25
      17.4.1. Compiling C and C++ code conditionally
      17.4.2. How to handle compiler bugs
      17.4.3. Undefined reference to “...
    17.5. Fixing problems in the install phase
    17.5.1. Creating needed directories
    17.5.2. Where to install documentation
    17.5.3. Installing score files
    17.5.4. Packages containing perl scripts
    17.5.5. Packages with hardcoded paths to other interpreters
    17.5.6. Packages installing perl modules
    17.5.7. Packages installing info files
    17.5.8. Packages installing man pages
    17.5.9. Packages installing GConf2 data files
    17.5.10. Packages installing scrollkeeper data files
    17.5.11. Packages installing X11 fonts
    17.5.12. Packages installing GTK2 modules
    17.5.13. Packages installing SGML or XML data
    17.5.14. Packages installing extensions to the MIME database
    17.5.15. Packages using intltool
    17.5.16. Packages installing startup scripts
    17.5.17. Packages installing TeX modules
    17.5.18. Packages installing hicolor theme icons
    17.5.19. Packages installing desktop files
    d347 1 d649 5 a653 7

    This is the former name of “pkgsrc”. It is part of the NetBSD operating system and can be bootstrapped to run on non-NetBSD operating systems as well. It handles building (compiling), installing, and removing of packages.

    d1237 2 a1238 1 # ./bootstrap d1240 8 a1247 8 pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, and /var/db/pkg for the package database directory where pkgsrc will do its internal bookkeeping. However, these can also be set using command-line arguments.

    d1249 4 a1252 4 available for supported platforms. An up-to-date list of these can be found on www.pkgsrc.org. Note that this only works for privileged builds that install into /usr/pkg.

    d1256 3 a1258 3 Use this bmake when building via pkgsrc. For examples in this guide, use bmake instead of “make”.

    d1273 4 a1276 4 Tools from Apple's Developer Connection. See http://developer.apple.com/macosx/ for details. Also, make sure you install X11 for Mac OS X and the X11 SDK from http://www.apple.com/macosx/x11/download/ if you intend to build packages that use the X11 Window System.

    d1278 3 a1280 3 that you can format as UFS, it is recommended to use that instead of the disk image. It'll be somewhat faster and will mount automatically at boot time, where you must manually mount a disk image.

    d1305 6 a1310 6 system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS file system. Obviously, another symlink is required if you want to place the package database directory outside the prefix. e.g.

    d1313 5 a1317 5 and formatted the target partition as UFS, it should automatically mount on /Volumes/<volume name> when the machine boots. If you are (re)formatting a partition as UFS, you need to ensure that the partition map correctly reflects “Apple_UFS” and not “Apple_HFS”.

    d1319 4 a1322 4 disk that is booted from. You can unmount the partition, but even if you newfs it, the partition type will be incorrect and the automounter won't mount it. It can be mounted manually, but it won't appear in Finder.

    d1324 5 a1328 5 the Installation program starts, go up to the menu and select Disk Utility. Now, you will be able to select the partition you want to be UFS, and Format it Apple UFS. Quit the Disk Utility, quit the installer which will reboot your machine. The new UFS file system will appear in Finder.

    d1330 1 a1330 1 by root only.

    d1332 1 a1332 1 Hopefully Apple will fix Disk Utility in 10.3 (Panther).

    d1338 2 a1339 3

    FreeBSD 4.7 and 5.0 have been tested and are supported, other versions may work.

    d1341 1 a1341 1 with the FreeBSD userland tools. There are several steps:

    d1344 4 a1347 4 /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    d1350 3 a1352 2 good idea to move them out of the way to avoid confusion, e.g.

    # cd /usr/sbin
    d1356 2
    a1357 1
    # mv pkg_info pkg_info.orig
    d1360 2 a1361 2 /etc/mk.conf.example file when you use the bootstrap script.

    d1368 4 a1371 4 providing a Unix-like environment with a tighter kernel integration than available with Cygwin. It is part of the Windows Services for Unix package, available for free for any licensed copy of Windows 2000, XP (not including XP Home), or 2003. SFU can be downloaded from http://www.microsoft.com/windows/sfu/.

    d1373 2 a1374 2 or 3.1 may work, but are not officially supported. (The main difference in 3.0/3.1 is lack of pthreads.)

    d1379 1 a1379 1 the Windows Services for Unix 3.5 distribution in order to use pkgsrc:

    d1387 3 a1389 3 "UNIX Perl". That is Perl 5.6 without shared module support, installed to /usr/local, and will only cause confusion. Instead, install Perl 5.8 from pkgsrc (or from a binary package).

    d1391 2 a1392 2 not need to be installed, but Remote Connectivity itself should be installed in order to have a working inetd.

    d1394 4 a1397 4 behavior for Interix programs, and whether to make pathnames default to case-sensitive. Setuid should be enabled, and case-sensitivity MUST be enabled. (Without case-sensitivity, a large number of packages including perl will not build.)

    d1399 6 a1404 6 works (via the Data Execution Prevention feature). In order to use pkgsrc and other gcc-compiled binaries reliably, a hotfix containing POSIX.EXE, PSXDLL.DLL, PSXRUN.EXE, and PSXSS.EXE (899522 or newer) must be installed. Hotfixes are available from Microsoft through a support contract; however, a NetBSD developer has made most Interix hotfixes available for personal use from http://www.duh.org/interix/hotfixes.php.

    d1410 1 a1410 1 with pkgsrc, note the following things.

    d1413 2 a1414 2 Windows Services for UNIX, then click Change. In the installer, choose Add or Remove, then uncheck Utilities->UNIX Perl.

    d1417 1 a1417 1 change the following registry key:

    d1423 1 a1423 1 following registry key:

    d1433 3 a1435 3 running "pkg_add") must be a member of the local Administrators group. Such a user must also be used to run the bootstrap. This is slightly relaxed from the normal pkgsrc requirement of "root".

    d1437 2 a1438 2 automatically complain if this is not the case. This ensures that directories written in /var/db/pkg are Administrators-group writeable.

    d1440 4 a1443 4 use an older version of pkgsrc's pkg_* tools. Ideally, these should NOT be used in conjunction with pkgsrc. If you choose to use them at the same time as the pkgsrc packages, ensure that you use the proper pkg_* tools for each type of binary package.

    d1445 3 a1447 3 invoked by the csh and ksh startup shortcuts) is "interix". Most systems don't have a termcap/terminfo entry for it, but the following .termcap entry provides adequate emulation in most cases:

    d1449 2 a1450 2 interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi: d1456 2 a1457 2 for a full Unix-like platform, it has some drawbacks that should be noted for those desiring to make the most of Interix.

    d1462 8 a1469 8 and can run X11 based applications, but it does not come with an X server. Some options are StarNet X-Win32, Hummingbird Exceed (available in a trimmed version for Interix from Interop Systems as the Interop X Server), and the free X11 server included with Cygwin.

    d1471 4 a1474 4 version of their X-Win32 product that accepts connections only from localhost: X-Win32 LX, recommended by the maintainer of Interix pkgsrc support.

    d1479 5 a1483 5 Win32 applications, it does not currently support various X11 protocol extensions for acceleration (such as MIT-SHM or DGA). Most interactive applications to a local X server will run reasonably fast, but full motion video and other graphics intensive applications may require a faster-than-expected CPU.

    d1488 7 a1494 7 support, pkgsrc uses the esound client/server audio system on Interix. Unlike on most platforms, the audio/esound package does not contain the esd server component. To output audio via an Interix host, the emulators/cygwin_esound package must also be installed.

    d1499 4 a1502 4 is not currently possible to access CD/DVD drives, USB devices, or SCSI devices through non-filesystem means. Among other things, this makes it impossible to use Interix directly for CD/DVD burning.

    d1507 4 a1510 4 drives are also not directly accessible in Interix. However, support is in work to make tape drive access possible by using Cygwin as a bridge (similarly to audio bridged via Cygwin's esound server).

    d1518 10 a1527 9 Windows system; any member of the local Administrators group will suffice. However, some packages currently assume that the user named "root" is the privileged user. To accommodate these, you may create such a user; make sure it is in the local group Administrators (or your language equivalent).

    "pkg_add" creates directories of mode 0755, not 0775, in $PKG_DBDIR. For the time being, install packages as the local Administrator (or your language equivalent), or run the following command after installing a package to work around the issue:

    d1529 2 a1530 1 # chmod -R g+w $PKG_DBDIR d1537 3 a1539 3 compiler (cc/c89). Please set the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can download a gcc tardist file from http://freeware.sgi.com/.

    d1541 2 a1542 2 version of IRIX providing support for if_indextoname(3), if_nametoindex(3), etc.

    d1548 4 a1551 4 CFLAGS in your environment or the /etc/mk.conf. Particularly, make sure that you do not try to link n32 object files with lib64 or vice versa. Check your /etc/compiler.defaults!

    d1553 3 a1555 3 please make sure to set WRKOBJDIR to a local directory, as it appears that IRIX linker occasionally runs into issues when trying to link over a network-mounted file system.

    d1557 3 a1559 3 as imake(1), but you may want to set some options depending on your local setup. Please see pkgsrc/mk/defaults/mk.conf and, of course, your compiler's man pages for details.

    d1562 1 a1562 1

    d1564 2 a1565 2 PKGSRC_COMPILER= mipspro d1568 4 a1571 4 in /etc/mk.conf. Otherwise, pkgsrc will assume you are using gcc and may end up passing invalid flags to the compiler. Note that bootstrap should create an appropriate mk.conf.example by default.

    d1573 4 a1576 4 but want to make sure that MIPRPro is used, please set your PATH to not include the location of gcc (often /usr/freeware/bin), and (important) pass the '--preserve-path' flag.

    d1581 7 a1587 8

    Some versions of Linux (for example Debian GNU/Linux) need either libtermcap or libcurses (libncurses). Installing the distributions libncurses-dev package (or equivalent) should fix the problem.

    pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++ Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested.

    d1589 1 a1589 1 directory:

    d1591 3 a1593 3 env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ ac_cv___attribute__=yes ./bootstrap d1599 5 a1603 5 function, which icc does not support. #undef'ing __attribute__ has the unfortunate side-effect of breaking many of the Linux header files, which cannot be compiled properly without __attribute__. The test must be overridden so that __attribute__ is assumed supported by the compiler.

    d1605 1 a1605 1 in /etc/mk.conf:

    d1607 2 a1608 2 PKGSRC_COMPILER= icc d1610 4 a1613 4 /opt/intel_cc_80, which is also the pkgsrc default. If you have installed it into a different directory, set ICCBASE in /etc/mk.conf:

    d1615 2 a1616 2 ICCBASE= /opt/icc d1618 9 a1626 8 provided by icc, so binaries can be run on other systems which do not have the shared libraries installed.

    Libtool, however, extracts a list of libraries from the ld(1) command run when linking a C++ shared library and records it, throwing away the -Bstatic and -Bdynamic options interspersed between the libraries. This means that libtool-linked C++ shared libraries will have a runtime dependency on the icc libraries until this is fixed in libtool.

    d1633 1 a1633 1 with the OpenBSD userland tools. There are several steps:

    d1636 4 a1639 4 /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    d1642 3 a1644 2 good idea to move them out of the way to avoid confusion, e.g.

    # cd /usr/sbin
    d1648 2
    a1649 1
    # mv pkg_info pkg_info.orig
    d1653 12 a1664 12 /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses /etc/mk.conf as well. You can work around this by enclosing all the pkgsrc-specific parts of the file with:

        .ifdef BSD_PKG_MK
        # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here
        .else
        # OpenBSD stuff
        .endif
    
    d1672 2 a1673 2 You will need a working C compiler. Both gcc 2.95.3 and Sun WorkShop 5 have been tested.

    d1675 1 a1675 1 process and to build packages.

    d1684 1 a1684 1 not supported, as of June 2006.

    d1686 3 a1688 3 your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} and e.g. /usr/pkg/{bin,sbin}.

    d1693 1 a1693 1 for building all packages.

    d1695 3 a1697 3 then either build gcc from lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d1704 1 a1704 1 5.0)

    d1707 1 a1707 1 - Sun WorkShop Compiler C 5.0

    d1709 1 a1709 1 - Sun WorkShop Compiler C++ 5.0

    d1711 1 a1711 1 - Sun WorkShop Incremental Linker

    d1713 1 a1713 1 - Sun WorkShop Compilers common components

    d1716 2 a1717 2 optionally, CPP in /etc/mk.conf, e.g.:

    d1719 4 a1722 4 CC= cc CXX= CC CPP= /usr/ccs/lib/cpp d1736 3 a1738 3 #! /bin/sh exec /opt/SUNWspro/bin/cc -xtarget=ultra -xarch=v9 ${1+"$@@"} d1742 3 a1744 3 $ cd bootstrap $ CC=cc64 ./bootstrap d1751 4 a1754 4 CC= cc64 CXX= CC64 PKGSRC_COMPILER= sunpro d1764 7 a1770 7 CC= cc CXX= CC PKGSRC_COMPILER= sunpro CFLAGS= -xtarget=ultra -xarch=v9 CXXFLAGS= -xtarget=ultra -xarch=v9 LDFLAGS= -xtarget=ultra -xarch=v9 d1781 8 a1788 8 /bin/ksh crashes with a segmentation fault. The workaround is to use another shell for the configure scripts, for example by installing shells/bash and adding the following lines to your mk.conf:

        CONFIG_SHELL=   ${LOCALBASE}/bin/bash
        WRAPPER_SHELL=  ${LOCALBASE}/bin/bash
    
    d1911 1 a1911 1

    If you have the files on a CD-ROM or downloaded them to d1915 1 a1915 1

    If you have FTP access and you don't want to download the d1917 1 a1917 2 automatically by giving pkg_add an FTP URL:

    d1921 1 a1921 1 present where you install from.

    d1942 1 a1942 1 installed program.

    d2050 1 a2050 2

    After obtaining pkgsrc, the pkgsrc directory d2095 1 a2095 1 — in particular, look for the MASTER_SORT, d2132 1 a2132 1

    For example, type

    d2239 1 a2239 2 overridden by setting the following variables in /etc/mk.conf:

    d2243 1 a2243 1

    This is a list of values specifying the chain of d2245 1 a2245 1 are:

    d2260 1 a2260 1

    The default is d2267 1 a2267 1 terminated with a value for a real compiler.

    d2270 1 a2270 1

    This specifies the minimum version of GCC to use d2273 1 a2273 1 install one of the GCC packages to use instead.

    d2355 1 a2355 1 — it is an internal definition which refers to the a2376 2

    d2413 1 a2413 1

    d2519 22 a2540 26

    Once you have built and installed a package, you can create a binary package which can be installed on another system with pkg_add(1). This saves having to build the same package on a group of hosts and wasting CPU time. It also provides a simple means for others to install your package, should you distribute it.

    To create a binary package, change into the appropriate directory in pkgsrc, and run make package:

    # cd misc/figlet
    # make package

    This will build and install your package (if not already done), and then build a binary package from what was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a gzipped tar file. See Section B.2, “Packaging figlet” for a continuation of the above misc/figlet example.

    See Chapter 19, Submitting and Committing for information on how to submit such a binary package.

    d2551 3 a2553 3 packages, this section describes how to get them. Beware that the bulk build will remove all currently installed packages from your system!

    d2555 6 a2560 6 machine doing the bulk builds or on a nearby NFS server can help to make the packages available to other machines that can then save time by installing only the binary packages. See ftpd(8) for more information. If you use a remote NFS server's storage, be sure to not actually compile on NFS storage, as this slows things down a lot.

    d2568 8 a2575 8 configuration file for bulk builds. You can configure how your copy of pkgsrc is kept up to date, how the distfiles are downloaded, how the packages are built and how the report is generated. You can find an annotated example file in pkgsrc/mk/bulk/build.conf-example. To use it, copy build.conf-example to build.conf and edit it, following the comments in that file.

    d2581 16 a2596 16 /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for details of the default settings. You will want to ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts all licenses.

        PACKAGES?=      ${_PKGSRCDIR}/packages/${MACHINE_ARCH}
        WRKOBJDIR?=     /usr/tmp/pkgsrc   # build here instead of in pkgsrc
        BSDSRCDIR=      /usr/src
        BSDXSRCDIR=     /usr/xsrc         # for x11/xservers
        OBJHOSTNAME?=   yes               # use work.`hostname`
        FAILOVER_FETCH= yes               # insist on the correct checksum
        PKG_DEVELOPER?= yes
        _ACCEPTABLE=    yes
    
    d2603 2 a2604 2 set USE_BULK_BROKEN_CHECK to “no”.

    d2606 3 a2608 3 copy of pkgsrc, you have to set BULKFILESDIR to the directory where all log files are created. Otherwise the log files are created in the pkgsrc directory.

    d2610 3 a2612 3 BULK_PREREQ, which is a list of packages that should be always available while building other packages.

    d2618 7 a2624 7 should be set to yes. The purpose of the bulk builds is creating binary packages, no matter if they are vulnerable or not. When uploading the packages to a public server, the vulnerable packages will be put into a directory of their own. Leaving this variable unset would prevent the bulk build system from even trying to build them, so possible building errors would not show up.

    d2626 3 a2628 3 (pkgsrc/mk/bsd.pkg.check.mk) can be set to “yes” to check that the installed set of files matches the PLIST.

    d2630 4 a2633 4 (pkgsrc/mk/bsd.pkg.check.mk) can be set to “yes” to check that the installed “#!”-scripts will find their interpreter.

    d2640 7 a2646 7 certain site-specific tasks at the end of the pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk, it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    d2648 1 a2648 1 > misc/openoffice/$BROKENF d2650 1 a2650 1 which requires nearly 3 GB of disk space.

    d2657 17 a2673 17 deleted at the start of bulk builds, make sure your login shell is placed somewhere else. Either drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via pkg_add(1) from /etc/rc.local, so you can login after a reboot (remember that your current process won't die if the package is removed, you just can't start any new instances of the shell any more). Also, if you use NetBSD earlier than 1.5, or you still want to use the pkgsrc version of ssh for some reason, be sure to install ssh before starting it from rc.local:

        ( cd /usr/pkgsrc/security/ssh ; make bulk-install )
        if [ -f /usr/pkg/etc/rc.d/sshd ]; then
            /usr/pkg/etc/rc.d/sshd
        fi
    
    d2675 2 a2676 2 via ssh after the bulk build is finished or if the machine gets rebooted or crashes. You have been warned! :)

    d2682 1 a2682 2 installed.

    d2686 1 a2686 1 removed!

    d2689 6 a2694 4 interfere with builds, like some libs installed in /usr/local, etc. then become root and type:

    # cd /usr/pkgsrc
    # sh mk/bulk/build
    d2696 2 a2697 2 failure, system panic, ...), you can continue it by running:

    d2699 4 a2702 6

    At the end of the bulk build, you will get a summary via mail, and find build logs in the directory specified by FTP in the build.conf file.

    d2710 3 a2712 4

    The script updates your pkgsrc tree via (anon)cvs, then cleans out any broken distfiles, and removes all packages installed.

    d2714 5 a2718 7

    This is basically “make bulk-package” with an optimised order in which packages will be built. Packages that don't require other packages will be built first, and packages with many dependencies will be built later.

    d2720 5 a2724 6

    Generates a report that's placed in the directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    d2726 9 a2734 11

    During the build, a list of broken packages will be compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    d2740 1 a2740 1 NetBSD 2.0/i386:

    d2742 10 a2751 18
  • 10 GB - distfiles (NFS ok)

  • 8 GB - full set of all binaries (NFS ok)

  • 5 GB - temp space for compiling (local disk recommended)

  • Note that all pkgs will be de-installed as soon as they are turned into a binary package, and that sources are removed, so there is no excessively huge demand to disk space. Afterwards, if the package is needed again, it will be installed via pkg_add(1) instead of building again, so there are no cycles wasted by recompiling.

    d2756 20 a2775 28

    If you don't want all the packages nuked from a machine (rendering it useless for anything but pkg compiling), there is the possibility of doing the package bulk build inside a chroot environment.

    The first step is to set up a chroot sandbox, e.g. /usr/sandbox. This can be done by using null mounts, or manually.

    There is a shell script called pkgsrc/mk/bulk/mksandbox which will set up the sandbox environment using null mounts. It will also create a script called sandbox in the root of the sandbox environment, which will allow the null mounts to be activated using the sandbox mount command and deactivated using the sandbox umount command.

    To set up a sandbox environment by hand, after extracting all the sets from a NetBSD installation or doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following items are present and properly configured:

    d2799 1 a2799 1 e. g. for sysutils/aperture):

    d2801 1 a2801 1 # ln -s cvs/src-2.0 src d2813 5 a2817 3 /usr/sandbox/usr/pkgsrc:

    # cd /usr/sandbox/usr
    # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc
    d2819 1 a2819 2 you do development in, as this will likely cause problems!

    d2822 3 a2824 4 /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    d2829 10 a2838 9 the build with the following steps:

    # cd /usr/sandbox/usr/pkgsrc
    # sh mk/bulk/do-sandbox-build

    This will just jump inside the sandbox and start building. At the end of the build, mail will be sent with the results of the build. Created binary pkgs will be in /usr/sandbox/usr/pkgsrc/packages (wherever that points/mounts to/from).

    d2843 5 a2847 5

    In addition to building a complete set of all packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting SPECIFIC_PKGS in /etc/mk.conf, the variables

    d2854 8 a2861 9

    will define the set of packages which should be built. The bulk build code will also include any packages which are needed as dependencies for the explicitly listed packages.

    One use of this is to do a bulk build with SPECIFIC_PKGS in a chroot sandbox periodically to have a complete set of the binary packages needed for your site available without the overhead of building extra packages that are not needed.

    d2866 14 a2879 22

    This section describes how pkgsrc developers can upload binary pkgs built by bulk builds to ftp.NetBSD.org.

    If you would like to automatically create checksum files for the binary packages you intend to upload, remember to set MKSUMS=yes in your mk/bulk/build.conf.

    If you would like to PGP sign the checksum files (highly recommended!), remember to set SIGN_AS=username@@NetBSD.org in your mk/bulk/build.conf. This will prompt you for your GPG password to sign the files before uploading everything.

    Then, make sure that you have RSYNC_DST set properly in your mk/bulk/build.conf file, i.e. adjust it to something like one of the following:

    d2882 8 a2889 10 "NetBSD-a.b.c" and "arch" here. If your login on ftp.NetBSD.org is different from your local login, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use:

    RSYNC_DST=hubertf@@ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload 

    A separate upload directory is used here to allow "closing" the directory during upload. To do so, run the following command on ftp.NetBSD.org next:

    d2891 10 a2900 13

    Please note that /pub/NetBSD/packages is only appropriate for packages for the NetBSD operating system. Binary packages for other operating systems should go into /pub/pkgsrc.

    Before uploading the binary pkgs, ssh authentication needs to be set up. This example shows how to set up temporary keys for the root account inside the sandbox (assuming that no keys should be present there usually):

    # chroot /usr/sandbox
    d2903 7
    a2909 10
    chroot-# cat $HOME/.ssh/id-dsa.pub 

    Now take the output of id-dsa.pub and append it to your ~/.ssh/authorized_keys file on ftp.NetBSD.org. You can remove the key after the upload is done!

    Next, test if your ssh connection really works:

    d2911 5 a2915 8

    Use "-l yourNetBSDlogin" here as appropriate!

    Now after all this works, you can exit the sandbox and start the upload:

    chroot-# exit
    d2917 8
    a2924 11
    # sh mk/bulk/do-sandbox-upload 

    The upload process may take quite some time. Use ls(1) or du(1) on the FTP server to monitor progress of the upload. The upload script will take care of not uploading restricted packages and putting vulnerable packages into the vulnerable subdirectory.

    After the upload has ended, first thing is to revoke ssh access:

    d2926 7 a2932 8 Gdd:x!

    Use whatever is needed to remove the key you've entered before! Last, move the uploaded packages out of the upload directory to have them accessible to everyone:

    nbftp% cd /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch
    d2935 2
    a2936 1
    nbftp% chmod 755 . 
    d2942 8 a2949 10

    After your pkgsrc bulk-build has completed, you may wish to create a CD-ROM set of the resulting binary packages to assist in installing packages on other machines. The pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for a given package on the same CD as that package.

    d2953 8 a2960 8

    Complete documentation for cdpack is found in the cdpack(1) man page. The following short example assumes that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

    # mkdir /u2/images
    d2962 8
    a2969 8
    # cdpack /usr/pkgsrc/packages/All /u2/images

    If you wish to include a common set of files (COPYRIGHT, README, etc.) on each CD in the collection, then you need to create a directory which contains these files. e.g.

    # mkdir /tmp/common
    d2975 2
    a2976 1
    # chmod 755 /tmp/common/bin/myscript
    d2980 2 a2981 2 COPYING, and bin/myscript in their root directories.

    d3070 1 a3070 2 non-BSD systems due to lack of native mtree.

    d3198 1 a3198 2 this X.org X11 implementation from pkgsrc.

    d3285 1 a3285 1

    You didn't install the compiler set, comp.tgz, d3362 3 a3364 4

    If this package is installed, pkgsrc builds will use it to perform a security check before building any package. See Section 5.2, “Variables affecting the build process” for ways to control this check.

    d3566 1 a3566 1
    17.4. Fixing problems in the build phase
    d3568 34 a3601 25
    17.4.1. Compiling C and C++ code conditionally
    17.4.2. How to handle compiler bugs
    17.4.3. Undefined reference to “...
    17.5. Fixing problems in the install phase
    17.5.1. Creating needed directories
    17.5.2. Where to install documentation
    17.5.3. Installing score files
    17.5.4. Packages containing perl scripts
    17.5.5. Packages with hardcoded paths to other interpreters
    17.5.6. Packages installing perl modules
    17.5.7. Packages installing info files
    17.5.8. Packages installing man pages
    17.5.9. Packages installing GConf2 data files
    17.5.10. Packages installing scrollkeeper data files
    17.5.11. Packages installing X11 fonts
    17.5.12. Packages installing GTK2 modules
    17.5.13. Packages installing SGML or XML data
    17.5.14. Packages installing extensions to the MIME database
    17.5.15. Packages using intltool
    17.5.16. Packages installing startup scripts
    17.5.17. Packages installing TeX modules
    17.5.18. Packages installing hicolor theme icons
    17.5.19. Packages installing desktop files
    d3603 1 d3734 3 a3736 3

    Whenever you're preparing a package, there are a number of files involved which are described in the following sections.

    d3741 4 a3744 5 controlled by the package's Makefile. The Makefile describes various things about a package, for example from where to get it, how to configure, build, and install it.

    d3746 1 a3746 1 sections that describe the package.

    d3748 3 a3750 3 should appear exactly in the order given here. The ordering and grouping of variables is mostly historical and has no further meaning.

    d3753 2 a3754 2 distribution file to be downloaded from the package's website.

    d3756 17 a3772 6 package, as used by pkgsrc. You only need to provide it if it differs from DISTNAME. Usually it is the directory name together with the version number. It must match the regular expression ^[A-Za-z0-9][A-Za-z0-9-_.+]*$, that is, it starts with a letter or digit, and contains only letters, digits, dashes, underscores, dots and plus signs.

    d3775 2 a3776 2 which the package fits in. You can choose any of the top-level directories of pkgsrc for it.

    d3778 2 a3779 2 CATEGORIES. If more than one is used, they need to be separated by spaces:

    d3781 9 a3789 9 archivers cross geography meta-pkgs security audio databases graphics misc shells benchmarks devel ham multimedia sysutils biology editors inputmethod net textproc cad emulators lang news time chat finance mail parallel wm comms fonts math pkgtools www converters games mbone print x11 d3792 4 a3795 4 DYNAMIC_MASTER_SITES, DIST_SUBDIR, EXTRACT_SUFX and DISTFILES are discussed in detail in Section 15.5, “The fetch phase”.

    d3798 2 a3799 2 downloaded patches, if any.

    d3802 6 a3807 6 Name(s) of additional files that contain distribution patches. There is no default. pkgsrc will look for them at PATCH_SITES. They will automatically be uncompressed before patching if the names end with .gz or .Z.

    d3809 2 a3810 2 Primary location(s) for distribution patch files (see PATCHFILES below) if not found locally.

    a3811 2

    d3813 1 a3813 1

    d3816 8 a3823 8 of the person who feels responsible for this package, and who is most likely to look at problems or questions regarding this package which have been reported with send-pr(1). Other developers should contact the MAINTAINER before making major changes to the package. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to .

    d3825 1 a3825 1 find more information about the package.

    d3827 2 a3828 2 description of the package (should not include the package name).

    a3829 2

    d3831 1 a3831 1

    d3834 3 a3836 3 interesting distribution files of the package are found. The default is ${WRKDIR}/${DISTNAME}, which works for most packages.

    d3838 9 a3846 8 (most GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC= ${WRKDIR}.

    If a package doesn't create a subdirectory with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}, for example WRKSRC= ${WRKDIR}/${DISTNAME}/unix. See lang/tcl and x11/tk for other examples.

    d3848 14 a3861 12 taken from the WRKDIR_BASENAME variable. By default, its value is work. If you want to use the same pkgsrc tree for building different kinds of binary packages, you can change the variable according to your needs. Two other variables handle common cases of setting WRKDIR_BASENAME individually. If OBJHOSTNAME is defined in /etc/mk.conf, the first component of the host's name is attached to the directory name. If OBJMACHINE is defined, the platform name is attached, which might look like work.i386 or work.sparc.

    a3862 2

    d3865 3 a3867 3
  • Add MANCOMPRESSED if man pages are installed in compressed form by the package; see comment in bsd.pkg.mk.

  • d3869 1 a3869 1 “${PREFIX}” in all files (see patches, below).

    d3871 1 a3871 1 Section 17.5.7, “Packages installing info files”.

    d3878 6 a3883 6 digest, or checksum, of each distfile needed for the package. This ensures that the distfiles retrieved from the Internet have not been corrupted during transfer or altered by a malign force to introduce a security hole. Due to recent rumor about weaknesses of digest algorithms, all distfiles are protected using both SHA1 and RMD160 message digests, as well as the file size.

    d3885 2 a3886 2 checksums for all the patches found in the patches directory (see Section 9.3, “patches/*”).

    d3888 2 a3889 2 make makedistinfo or make mdi command.

    d3891 4 a3894 4 the platform, for example www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d3900 7 a3906 7 patch(1) command to modify the sources as distributed in the distribution file into a form that will compile and run perfectly on NetBSD. The files are applied successively in alphabetic order (as returned by a shell “patches/patch-*” glob expansion), so patch-aa is applied before patch-ab, etc.

    d3908 5 a3912 5 diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do not put changes for more than one file into a single patch file, as this will make future modifications more difficult.

    d3914 2 a3915 2 several different patches. If a file needs several patches, they should be combined into one file.

    d3917 32 a3948 15 get stored in the patch files, as these will cause problems when later checked into the NetBSD CVS tree. Use the pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    For even more automation, we recommend using mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff.

    When you have finished a package, remember to generate the checksums for the patch files by using the make makepatchsum command, see Section 9.2, “distinfo.

    d3950 15 a3964 14 maintainers can be listed in $PATCHFILES.

    If it is desired to store any patches that should not be committed into pkgsrc, they can be kept outside the pkgsrc tree in the $LOCALPATCHES directory. The directory tree there is expected to have the same “category/package” structure as pkgsrc, and patches are expected to be stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example, if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch files, and they are applied after pkgsrc patches are applied.

    d3977 1 a3977 1 kqueue support, add a check that detects kqueue itself — d3985 1 a3985 1 clearner and there are chances they will work on many other d4008 3 a4010 3 netbsd*) have_kvm=yes ;; *) have_kvm=no ;; esac d4020 2 a4021 2 # include <sys/event.h> #endif d4025 2 a4026 2 # include <sys/event.h> #endif d4033 9 a4041 9 monitor_file(...) { #if defined(__NetBSD__) int fd = kqueue(); ... #else ... #endif } d4045 9 a4053 9 monitor_file(...) { #if defined(HAVE_KQUEUE) int fd = kqueue(); ... #else ... #endif } d4094 3 a4096 3 any credits where they are due. Please bear in mind that others do not share your sense of humour (or spelling idiosyncrasies), and that others will read everything that you write here.

    d4098 6 a4103 6

    This file governs the files that are installed on your system: all the binaries, manual pages, etc. There are other directives which may be entered in this file, to control the creation and deletion of directories, and the location of inserted files. See Chapter 11, PLIST issues for more information.

    d4115 6 a4120 6 First time after package extraction and before files are moved in place, the second time after the files to install are moved in place. This can be used to do any custom procedures not possible with @@exec commands in PLIST. See pkg_add(1) and pkg_create(1) for more information.

    d4123 5 a4127 5 this script's responsibility to clean up any additional messy details around the package's installation, since all pkg_delete knows is how to delete the files created in the original distribution. See pkg_delete(1) and pkg_create(1) for more information.

    d4131 6 a4136 6 Useful for things like legal notices on almost-free software and hints for updating config files after installing modules for apache, PHP etc. Please note that you can modify variables in it easily by using MESSAGE_SUBST in the package's Makefile:

    d4138 2 a4139 2 MESSAGE_SUBST+= SOMEVAR="somevalue" d4141 12 a4152 1 MESSAGE.

    d4207 8 a4214 8 unpacked into the directory denoted by WRKDIR. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp files. The directory gets removed completely on clean. The default is ${.CURDIR}/work or ${.CURDIR}/work.${MACHINE_ARCH} if OBJMACHINE is set.

    d4220 13 a4232 6 to configuration or building, you could place these files here and use a “${CP}” command in the “pre-configure” target to achieve this. Alternatively, you could simply diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d4300 1 a4300 1

    No rule without exception—the .for d4543 8 a4550 8

    The PLIST file contains a package's “packing list”, i.e. a list of files that belong to the package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the pkg_create(1) man page for a full list. This chapter addresses some issues that need attention when dealing with the PLIST file (or files, see below!).

    d4554 2 a4555 4

    Be sure to add a RCS ID line as the first thing in any PLIST file you write:

    d4557 2 a4558 2 @@comment $NetBSD$ d4564 3 a4566 3 to output a PLIST that matches any new files since the package was extracted. See Section 15.16, “Other helpful targets” for more information on this target.

    d4571 21 a4591 21

    If you have used any of the *-dirs packages, as explained in Section 11.8, “Sharing directories between packages”, you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with quoting.

    For example, to get all files inside the libdata/foo directory removed from the resulting PLIST:

        PRINT_PLIST_AWK+=       /^libdata\/foo/ { next; }
    

    And to get all the @@dirrm lines referring to a specific (shared) directory converted to @@comments:

    d4593 2 a4594 2 PRINT_PLIST_AWK+= /^@@dirrm share\/specific/ { print "@@comment " $$0; next; } d4599 3 a4601 4

    A number of variables are substituted automatically in PLISTs when a package is installed on a system. This includes the following variables:

    d4606 10 a4615 10 about which architecture they were built on into the pathnames where they install their files. To handle this case, PLIST will be preprocessed before actually used, and the symbol “${MACHINE_ARCH}” will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf-created configure scripts.

    d4619 4 a4622 4 “$ARCH” that was replaced by the output of uname -m, but that's no longer supported and has been removed.

    d4628 3 a4630 3 into some paths. To do this, use these variables in the PLIST:

    d4638 6 a4643 6

    For a complete list of values which are replaced by default, please look in bsd.pkg.mk (and search for PLIST_SUBST).

    If you want to change other variables not listed above, you can add variables and their expansions to this variable in the following way, similar to MESSAGE_SUBST (see Section 9.5, “Optional files”):

    d4645 2 a4646 2 PLIST_SUBST+= SOMEVAR="somevalue" d4648 2 a4649 1 in the PLIST with “somevalue”.

    d4655 8 a4662 8 MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix “.gz” is appended/removed automatically for man pages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    d4668 5 a4672 4 in generating the binary package, set the variable PLIST_SRC to the names of that file(s). The files are later concatenated using cat(1), and order of things is important.

    d4678 2 a4679 2 the operating system being used. These differences can be automatically handled by using the following files:

    d4691 15 a4705 16

    A “shared directory” is a directory where multiple (and unrelated) packages install files. These directories are problematic because you have to add special tricks in the PLIST to conditionally remove them, or have some centralized package handle them.

    Within pkgsrc, you'll find both approaches. If a directory is shared by a few unrelated packages, it's often not worth to add an extra package to remove it. Therefore, one simply does:

        @@unexec ${RMDIR} %D/path/to/shared/directory 2>/dev/null || ${TRUE}
    

    in the PLISTs of all affected packages, instead of the regular "@@dirrm" line.

    However, if the directory is shared across many packages, two different solutions are available:

    d4707 8 a4714 8
  • If the packages have a common dependency, the directory can be removed in that. For example, see textproc/scrollkeeper, which removes the shared directory share/omf.

  • If the packages using the directory are not related at all (they have no common dependencies), a *-dirs package is used.

  • d4716 2 a4717 2

    From now on, we'll discuss the second solution. To get an idea of the *-dirs packages available, issue:

    d4719 22 a4740 23 % cd .../pkgsrc % ls -d */*-dirs

    Their use from other packages is very simple. The USE_DIRS variable takes a list of package names (without the “-dirs” part) together with the required version number (always pick the latest one when writing new packages).

    For example, if a package installs files under share/applications, it should have the following line in it:

        USE_DIRS+=      xdg-1.1
    

    After regenerating the PLIST using make print-PLIST, you should get the right (commented out) lines.

    Note that even if your package is using $X11BASE, it must not depend on the *-x11-dirs packages. Just specify the name without that part and pkgsrc (in particular, mk/dirs.mk) will take care of it.

    d4763 2 a4764 2 are seen by a package's configure and build processes. This is implemented in a two step process:

    d4767 2 a4768 2 BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    d4770 6 a4775 6 tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    d4778 6 a4783 6 package may be built consistently despite what other software may be installed. Please note that the normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- buildlink3 is designed to insulate the package build from non-system-supplied software.

    d4788 2 a4789 2 framework (“bl3ifying”) is fairly straightforward. The things to keep in mind are:

    d4791 15 a4805 15
  • Ensure that the build always calls the wrapper scripts instead of the actual toolchain. Some packages are tricky, and the only way to know for sure is the check ${WRKDIR}/.work.log to see if the wrappers are being invoked.

  • Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files relative to “pkg_info -qp pkgname”.

  • Remember that only the buildlink3.mk files that you list in a package's Makefile are added as dependencies for that package.

  • d4807 2 a4808 2

    If a dependency on a particular package is required for its libraries and headers, then we replace:

    d4810 2 a4811 2 DEPENDS+= foo>=1.1.0:../../category/foo d4814 2 a4815 2 .include "../../category/foo/buildlink3.mk" d4818 1 a4818 2 files, then you can define it in your Makefile; for example:

    d4820 3 a4822 3 BUILDLINK_API_DEPENDS.foo+= foo>=1.1.0 .include "../../category/foo/buildlink3.mk" d4824 2 a4825 2 files in pkgsrc/mk that handle special package issues:

    d4828 3 a4830 3 the native or a pkgsrc Berkeley DB implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    d4832 2 a4833 2 comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    d4835 3 a4837 3 of KRB5_ACCEPTED to choose between adding a dependency on Heimdal or MIT-krb5 for packages that require a Kerberos 5 implementation.

    d4839 3 a4841 3 for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif.

    d4843 2 a4844 2 variables that may be used by packages that use the Open Sound System (OSS) API.

    d4846 2 a4847 2 either Postgres 7.3 or 7.4, whichever is found installed. See the file for more information.

    d4849 2 a4850 2 PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed.

    d4852 2 a4853 2 XAW_TYPE to choose a particular Athena widgets library.

    d4856 2 a4857 2 files provide a more complete description of how to use them properly.

    d4862 17 a4878 15

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    To generate an initial buildlink3.mk file for further editing, Rene Hexel's pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    % cd pkgsrc/category/pkgdir
    % createbuildlink >buildlink3.mk
    d4883 2 a4884 2 buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d4886 1 a4886 1 # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $ d4888 2 a4889 2 BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ TIFF_BUILDLINK3_MK:= ${TIFF_BUILDLINK3_MK}+ d4891 60 a4950 64 .if !empty(BUILDLINK_DEPTH:M+) BUILDLINK_DEPENDS+= tiff .endif BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Ntiff} BUILDLINK_PACKAGES+= tiff .if !empty(TIFF_BUILDLINK3_MK:M+) BUILDLINK_API_DEPENDS.tiff+= tiff>=3.6.1 BUILDLINK_PKGSRCDIR.tiff?= ../../graphics/tiff .endif # TIFF_BUILDLINK3_MK .include "../../devel/zlib/buildlink3.mk" .include "../../graphics/jpeg/buildlink3.mk" BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}

    The header and footer manipulate BUILDLINK_DEPTH, which is common across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    The first section controls if the dependency on pkg is added. BUILDLINK_DEPENDS is the global list of packages for which dependencies are added by buildlink3.

    The second section advises pkgsrc that the buildlink3.mk file for pkg has been included at some point. BUILDLINK_PACKAGES is the global list of packages for which buildlink3.mk files have been included. It must always be appended to within a buildlink3.mk file.

    The third section is protected from multiple inclusion and controls how the dependency on pkg is added. Several important variables are set in the section:

    • BUILDLINK_API_DEPENDS.pkg is the actual dependency recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the first version of the package that had an API change.

    • BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc directory.

    • BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to “build”. By default, the full dependency is used.

    • BUILDLINK_INCDIRS.pkg d4957 2 a4958 3 respectively.

    • BUILDLINK_CPPFLAGS.pkg d4964 1 a4964 1 above.

    • d4966 5 a4970 5

      The following variables are all optionally defined within this second section (protected against multiple inclusion) and control which package files are symlinked into ${BUILDLINK_DIR} and how their names are transformed during the symlinking:

      d4972 1 a4972 2
    • BUILDLINK_FILES.pkg d4977 11 a4987 14 e.g. include/*.h.

    • BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The resulting files are to be symlinked into ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    • BUILDLINK_CONTENTS_FILTER.pkg d4998 2 a4999 4 lib directories.

    • BUILDLINK_TRANSFORM.pkg d5003 1 a5003 2 "s|/curses.h|/ncurses.h|g".

    • d5005 10 a5014 11

      The last section includes any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included.

      d5019 1 a5019 2

      The situation that requires increasing the dependency listed in d5022 13 a5034 14 header files change.

      In this case, BUILDLINK_API_DEPENDS.pkg should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_API_DEPENDS.pkg adjusted, too. This is needed so pkgsrc will require the correct package dependency and not settle for an older one when building the source.

      BUILDLINK_ABI_DEPENDS.pkg d5040 2 a5041 3 contain the necessary shared libraries.

      See Section 17.1.6, “Handling dependencies” for d5044 9 a5052 10 ABI_DEPENDS definitions.

      Please take careful consideration before adjusting BUILDLINK_API_DEPENDS.pkg or BUILDLINK_ABI_DEPENDS.pkg as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

      Also it is not needed to set d5055 1 a5055 1 BUILDLINK_API_DEPENDS.pkg.

      d5061 1 a5061 2

      Some packages in pkgsrc install headers and libraries that d5067 3 a5069 4 appropriate.

      The only requirements of a builtin.mk file for pkg are:

      d5071 11 a5081 14
    • It should set USE_BUILTIN.pkg to either “yes” or “no” after it is included.

    • It should not override any USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    • It should be written to allow multiple inclusion. This is very important and takes careful attention to Makefile coding.

    • d5087 1 a5087 1 files:

      d5089 83 a5171 85 .if !defined(IS_BUILTIN.foo) # # IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo" # genuinely exists in the system or not. # IS_BUILTIN.foo?= no # BUILTIN_PKG.foo should be set here if "foo" is built-in and its package # version can be determined. # . if !empty(IS_BUILTIN.foo:M[yY][eE][sS]) BUILTIN_PKG.foo?= foo-1.0 . endif .endif # IS_BUILTIN.foo .if !defined(USE_BUILTIN.foo) USE_BUILTIN.foo?= ${IS_BUILTIN.foo} . if defined(BUILTIN_PKG.foo) . for _depend_ in ${BUILDLINK_API_DEPENDS.foo} . if !empty(USE_BUILTIN.foo:M[yY][eE][sS]) USE_BUILTIN.foo!= \ if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo}; then \ ${ECHO} "yes"; \ else \ ${ECHO} "no"; \ fi . endif . endfor . endif .endif # USE_BUILTIN.foo CHECK_BUILTIN.foo?= no .if !empty(CHECK_BUILTIN.foo:M[nN][oO]) # # Here we place code that depends on whether USE_BUILTIN.foo is set to # "yes" or "no". # .endif # CHECK_BUILTIN.foo

      The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be “yes” if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

      The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is “yes”). This variable is only used internally within the builtin.mk file.

      The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_API_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_API_DEPENDS.pkg. USE_BUILTIN.pkg must be set to the correct value by the end of the builtin.mk file. Note that USE_BUILTIN.pkg may be “yes” even if IS_BUILTIN.pkg is “no” because we may make the determination that the built-in version of the software is similar enough to be used as a replacement.

      The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding additional dependency restrictions and listing additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

      d5176 27 a5202 29

      When building packages, it's possible to choose whether to set a global preference for using either the built-in (native) version or the pkgsrc version of software to satisfy a dependency. This is controlled by setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either “yes”, “no”, or a list of packages. PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

          PREFER_PKGSRC=  yes
          PREFER_NATIVE=  getopt skey tcp_wrappers
      

      A package must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

      d5264 23 a5286 9 ${PKG_SYSCONFDIR}.

      The only way to achieve this is to create such files during installation time by using the installation scripts. These scripts can run arbitrary commands, so they have the potential to create and manage files anywhere in the file system. Here is where pkginstall comes into play: it provides generic scripts to abstract the manipulation of such files and directories based on variables set in the package's Makefile. The rest of this section describes these variables.

      d5531 12 a5542 12

      Further specification of user details may be done by setting per-user variables. PKG_UID.user is the numeric UID for the user. PKG_GECOS.user is the user's description or comment. PKG_HOME.user is the user's home directory, and defaults to /nonexistent if not specified. PKG_SHELL.user is the user's shell, and defaults to /sbinno/login if not specified.

      d5828 9 a5836 9 built. Building a package is separated into different phases (for example fetch, build, install), all of which are described in the following sections. Each phase is splitted into so-called stages, which take the name of the containing phase, prefixed by one of pre-, do- or post-. (Examples are pre-configure, post-build.) Most of the actual work is done in the do-* stages.

      d5838 5 a5842 5 the program's source (distfile) must be brought to the local system and then extracted. After any pkgsrc-specific patches to compile properly are applied, the software can be configured, then built (usually by compiling), and finally the generated binaries, etc. can be put into place on the system.

      d5848 2 a5849 2 the next section, here's a brief discussion on where programs are installed, and which variables influence this.

      d5851 7 a5857 7 where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the “cross” category. The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See Section 9.3, “patches/*” and Section 17.3.1, “Shared libraries - libtool” for more details.

      d5859 1 a5859 1 follow the following rules:

      d5862 2 a5863 2 pkg will be installed. When referring to a pkg's own installation path, use “${PREFIX}”.

      d5865 7 a5871 7 If you need to construct a -I or -L argument to the compiler to find includes and libraries installed by another non-X11 pkg, use “${LOCALBASE}”. The name LOCALBASE stems from FreeBSD, which installed all packages in /usr/local. As pkgsrc leaves /usr/local for the system administrator, this variable is a misnomer.

      d5873 3 a5875 3 xsrc, etc.) is installed. When looking for standard X11 includes (not those installed by a pkg), use “${X11BASE}”.

      d5878 1 a5878 1 either X11BASE or LOCALBASE.

      d5880 4 a5883 4 LOCALBASE whenever possible. Note that you will need to include ../../mk/x11.buildlink3.mk in them to request the presence of X11 and to get the right compilation flags.

      d5885 5 a5889 5 under LOCALBASE: those that come with app-defaults files. These packages are special and they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your package.

      d5891 8 a5898 8 to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to look in both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge package is enabled by default.

      d5901 3 a5903 3 location of an X11 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is installed.

      d5906 7 a5912 7 in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME=<package>”, and the make(1) variable DIRNAME will be set to the prefix of the installed package <package>, or “${X11PREFIX}” if the package is not installed.

      d5915 1 a5915 1 pkgsrc/wm/scwm/Makefile:

      d5917 5 a5921 5 EVAL_PREFIX+= GTKDIR=gtk+ CONFIGURE_ARGS+= --with-guile-prefix=${LOCALBASE:Q} CONFIGURE_ARGS+= --with-gtk-prefix=${GTKDIR:Q} CONFIGURE_ARGS+= --enable-multibyte d5923 1 a5923 1 EVAL_PREFIX, by using a definition of the form:

      d5925 2 a5926 2 GTKDIR_DEFAULT= ${LOCALBASE} d5928 2 a5929 2 to the first definition in the EVAL_PREFIX pair.

      d5932 3 a5934 3 install files according to hier(7), with the exception that manual pages go into ${PREFIX}/man, not ${PREFIX}/share/man.

      d5941 2 a5942 2 source files, temporary files, pkgsrc-internal files, and so on. These directories are explained here.

      d5944 4 a5947 4 are two common base directories for these relative directories: PKGSRCDIR/PKGPATH is used for directories that are pkgsrc-specific. WRKSRC is used for directories inside the package itself.

      d5951 2 a5952 2 root directory. Generally, you don't need it.

      d5955 2 a5956 2 PKGSRCDIR that points to the current package.

      d5959 4 a5962 4 where all work takes place. The distfiles are extraced to this directory. It also contains temporary directories and log files used by the various pkgsrc frameworks, like buildlink or the wrappers.

      d5965 4 a5968 4 where the distfiles are extracted. It is usually a direct subdirectory of WRKDIR, and often it's the only directory entry that isn't hidden. This variable may be changed by a package Makefile.

      d5975 5 a5979 5 phase
      , where phase is the name of the phase. This will automatically run all phases that are required for this phase. The default phase is build, that is, when you run make without parameters in a package directory, the package will be built, but not installed.

      d6260 1 a6260 1 -f ${MAKEFILE} ${BUILD_TARGET} d6269 1 a6269 1 MAKEFILE and BUILD_TARGET may all d6274 1 a6274 1 of MAKEFILE is “Makefile”, and d6296 1 a6296 1 -f ${MAKEFILE} ${BUILD_TARGET} d6365 8 a6372 8

      For any of the main targets described in the previous section, two auxiliary targets exist with “pre-” and “post-” used as a prefix for the main target's name. These targets are invoked before and after the main target is called, allowing extra configuration or installation steps be performed from a package's Makefile, for example, which a program's configure script or install target omitted.

      d6374 6 a6379 5

      Should one of the main targets do the wrong thing, and should there be no variable to fix this, you can redefine it with the do-* target. (Note that redefining the target itself instead of the do-* target is a bad idea, as the pre-* and post-* targets won't be called anymore, etc.) You will not usually need to do this.

      d6381 4 a6384 3

      If you did a make install and you noticed some file was not installed properly, you can repeat the installation with this target, which will ignore the “already installed” flag.

      d6388 2 a6389 2 effectively de-installing the package. The following variables can be used to tune the behaviour:

      d6395 5 a6399 5 This can be used to remove any packages that may have been pulled in by a given package, e.g. if make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, this is likely to remove whole KDE. Works by adding “-R” to the pkg_delete(1) command line.

      d6405 6 a6410 6 version. The package and all depending packages first get de-installed, then current versions of the corresponding packages get compiled and installed. This is similar to manually noting which packages are currently installed, then performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

      d6412 6 a6417 6 updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise, you lose the ability to automatically update the current package along with the dependent packages you have installed.

      d6419 3 a6421 3 long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

      d6423 2 a6424 2 /etc/mk.conf to alter the behaviour of make update:

      d6428 3 a6430 3 dependent packages. Defaults to DEPENDS_TARGET if set, “install” otherwise for make update. e.g. make update UPDATE_TARGET=package

      d6433 5 a6437 5 work sources of the updated packages around for inspection or other purposes. Be sure you eventually clean up the source tree (see the “clean-update” target below) or you may run into troubles with old source code still lying around on your next make or make update.

      d6440 3 a6442 3 DEPENDS_TARGET). This may be necessary if the “clean-update” target (see below) was called after interrupting a running make update.

      d6445 6 a6450 6 packages. The default is “update” for the update target, facilitating a recursive update of prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

      d6456 8 a6463 8 make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

      d6465 7 a6471 6 perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running make update for the first time, otherwise you lose all the packages you wanted to update!):

      # make clean-update
      d6473 2
      a6474 1
      # make update
      d6476 2 a6477 2 /etc/mk.conf to alter the behaviour of make clean-update:

      d6481 5 a6485 5 directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see above).

      d6490 2 a6491 2 package. You can use this to check which version of a package is installed.

      d6511 5 a6515 5 which contains a list of all packages currently available in the NetBSD Packages Collection, together with the category they belong to and a short description. This file is compiled from the pkgsrc/*/README.html files, so be sure to run this after a make readme.

      d6518 5 a6522 5 above), but is to be used when generating a pkgsrc tree to be written to a CD-ROM. This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

      d6524 5 a6528 3

      This target shows which distfiles and patchfiles are needed to build the package. (DISTFILES and PATCHFILES, but not patches/*)

      d6531 4 a6534 4 of this package is installed, but is not the version provided in this version of pkgsrc, then a warning message is displayed. This target can be used to show which of your installed packages are downlevel, and so the old versions can be deleted, and the current ones added.

      d6537 5 a6541 5 package can be built and installed. This may not be the same directory as the one from which the package was installed. This target is intended to be used by people who may wish to upgrade many packages on a single host, and can be invoked from the top-level pkgsrc Makefile by using the “show-host-specific-pkgs” target.

      d6544 2 a6545 2 DEPENDS. Useful if out of date dependencies are causing build problems.

      d6548 3 a6550 3 platforms) shared libraries to see if they find the shared libs they need. Run by default if PKG_DEVELOPER is set in /etc/mk.conf.

      d6554 9 a6562 9 upgraded pkg, this prints out an attempt to generate a new PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is strongly recommended to review the result before putting it into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

      d6564 7 a6570 7 methods that don't update file access times, be sure to add these files manually to your PLIST, as the “find -newer” command used by this target won't catch them!

      See Section 11.3, “Tweaking output of make print-PLIST for more information on this target.

      d6575 6 a6580 6 no action is taken. If not, this target will compile, install and package it (and its depends, if PKG_DEPENDS is set properly. See Section 6.3.1, “Configuration”). After creating the binary package, the sources, the just-installed package and its required packages are removed, preserving free disk space.

      d6582 1 a6582 1 packages installed on a system!

      d6587 5 a6591 5 up-to-date binary package is available, it will be installed via pkg_add(1). If not, make bulk-package will be executed, but the installed binary won't be removed.

      A binary package is considered “up-to-date” to be installed via pkg_add(1) if:

      d6594 1 a6594 1 ...) were modified since it was built.

      d6596 1 a6596 1 modified since it was built.

      d6599 1 a6599 1 packages installed on a system!

      d6615 1 a6615 2

      The USE_TOOLS definition is used both internally d6621 2 a6622 4 package will not be used.

      When building a package, the replacement tools are d6625 4 a6628 8 system, this helps with consistent builds.

      A tool may be needed to help build a specific package. For example, perl, GNU make (gmake) or yacc may be needed.

      Also a tool may be needed, for example, because the native system's supplied d6631 3 a6633 6 yacc) or a better sed.

      The tools used by a package can be listed by running make show-tools.

      d6637 1 a6637 2

      The default set of tools used by pkgsrc is defined in d6642 2 a6643 4 make show-var VARNAME=USE_TOOLS.

      If a package needs a specific program to build d6645 1 a6645 2 to define the tools needed.

      d6650 1 a6650 2

      In the following examples, the :pkgsrc means to use the pkgsrc version d6656 1 a6656 2 and pkg-config:build.)

      d6661 1 a6661 2

      When using the tools framework, a d6665 2 a6666 4 on Linux systems.

      If you always need a pkgsrc version of the a6667 1 d6673 1 a6673 2

      When improving or porting pkgsrc to a new platform, have a look d6720 1 a6720 1

      17.4. Fixing problems in the build phase
      d6722 34 a6755 25
      17.4.1. Compiling C and C++ code conditionally
      17.4.2. How to handle compiler bugs
      17.4.3. Undefined reference to “...
    17.5. Fixing problems in the install phase
    17.5.1. Creating needed directories
    17.5.2. Where to install documentation
    17.5.3. Installing score files
    17.5.4. Packages containing perl scripts
    17.5.5. Packages with hardcoded paths to other interpreters
    17.5.6. Packages installing perl modules
    17.5.7. Packages installing info files
    17.5.8. Packages installing man pages
    17.5.9. Packages installing GConf2 data files
    17.5.10. Packages installing scrollkeeper data files
    17.5.11. Packages installing X11 fonts
    17.5.12. Packages installing GTK2 modules
    17.5.13. Packages installing SGML or XML data
    17.5.14. Packages installing extensions to the MIME database
    17.5.15. Packages using intltool
    17.5.16. Packages installing startup scripts
    17.5.17. Packages installing TeX modules
    17.5.18. Packages installing hicolor theme icons
    17.5.19. Packages installing desktop files
    d6757 1 d6767 4 a6770 4 different platforms. As a result, it is important to ensure, where possible, that packages in pkgsrc are portable. This chapter mentions some particular details you should pay attention to while working on pkgsrc.

    d6776 7 a6782 7 variables in the file pointed to by MAKECONF, which is /etc/mk.conf by default. When you want to use those variables in the preprocessor directives of make(1) (for example .if or .for), you need to include the file ../../mk/bsd.prefs.mk before, which in turn loads the user preferences.

    d6784 8 a6791 8 after ../../mk/bsd.prefs.mk has been included, as they may contain references to variables that are not yet defined. In shell commands this is no problem, since variables are actually macros, which are only expanded when they are used. But in the preprocessor directives mentioned above and in dependency lines (of the form target: dependencies) the variables are expanded at load time.

    d6795 2 a6796 2 variables that tells you whether they can be used at load time or only at run time, but it is in preparation.

    d6803 1 a6803 1 in a number of ways:

    d6806 2 a6807 2 interaction such as entering username/password or accepting a license on a web page.

    d6814 2 a6815 2 the pkgsrc mechanism of an interactive stage which will be needed, and this should be set in the package's Makefile, e.g.:

    d6817 2 a6818 2 INTERACTIVE_STAGE= build d6821 2 a6822 2 INTERACTIVE_STAGE= configure install d6828 13 a6840 13 or has not agreed to accept. For these cases, pkgsrc contains a mechanism to note that a package is covered by a particular license, and the package cannot be built unless the user has accepted the license. (Installation of binary packages are not currently subject to this mechanism.) Packages with licenses that are either Open Source according to the Open Source Initiative or Free according to the Free Software Foundation will not be marked with a license tag. Packages with licenses that have not been determined to meet either definition will be marked with a license tag referring to the license. This will prevent building unless pkgsrc is informed that the license is acceptable, and enables displaying the license.

    d6842 26 a6867 29 copyright-related issues surrounding building, installing and using a package, and not to address redistribution issues (see RESTRICTED and NO_SRC_ON_FTP, etc.). However, the above definition of licenses for which tags are not needed implies that packages with redistribution restrictions should have tags.

    Denoting that a package is covered by a particular license is done by placing the license in pkgsrc/licenses and setting the LICENSE variable to a string identifying the license, e.g. in graphics/xv:

        LICENSE=        xv-license
    

    When trying to build, the user will get a notice that the package is covered by a license which has not been accepted:

        % make
        ===> xv-3.10anb9 has an unacceptable license: xv-license.
        ===>     To view the license, enter "/usr/bin/make show-license".
        ===>     To indicate acceptance, add this line to your /etc/mk.conf:
        ===>     ACCEPTABLE_LICENSES+=xv-license
        *** Error code 1
    
    d6869 4 a6872 4 show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

    d6874 2 a6875 2 ACCEPTABLE_LICENSES+=xv-license d6877 6 a6882 6 text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/defaults/mk.conf.

    d6884 8 a6891 8 LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to denote acceptance of the license for a single package without accepting the same license text for another package. In particular, this can be inappropriate when e.g. one accepts a particular license to indicate to pkgsrc that a fee has been paid.

    d6897 3 a6899 3 In order to satisfy these restrictions, the package system defines five make variables that can be set to note these restrictions:

    d6904 2 a6905 2 exists (regardless of its kind). Set this variable to a string containing the reason for the restriction.

    d6910 2 a6911 2 variable to ${RESTRICTED} whenever a binary package may not be included on a CD-ROM.

    d6916 3 a6918 3 this variable to ${RESTRICTED} whenever a binary package may not not be made available on the Internet.

    d6923 3 a6925 3 variable to ${RESTRICTED} if re-distribution of the source code or other distfile(s) is not allowed on CD-ROMs.

    d6930 4 a6933 3 to ${RESTRICTED} if re-distribution of the source code or other distfile(s) via the Internet is not allowed.

    d6937 4 a6940 4 IGNORE, NO_CDROM, or other generic make variables to denote restrictions is deprecated, because they unconditionally prevent users from generating binary packages!

    d6946 8 a6953 8 - and there are various ways of expressing this dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, the USE_TOOLS definition, as well as dependencies via buildlink3.mk, which is the preferred way to handle dependencies, and which uses the variables named above. See Chapter 12, Buildlink methodology for more information.

    d6955 5 a6959 6 follows: The DEPENDS definition registers that pre-requisite in the binary package so it will be pulled in when the binary package is later installed, whilst the BUILD_DEPENDS definition does not, marking a dependency that is only needed for building the package.

    d6961 2 a6962 2 you are building, it should be noted as a BUILD_DEPENDS.

    d6964 1 a6964 1 DEPENDS definition is:

    d6966 2 a6967 2 <pre-req-package-name>:../../<category>/<pre-req-package> d6969 2 a6970 2 may include any of the wildcard version numbers recognized by pkg_info(1).

    d6974 2 a6975 3 libraries to build or run, and if that package has a buildlink3.mk file available, use it:

    d6977 2 a6978 2 .include "../../graphics/jpeg/buildlink3.mk" d6982 3 a6984 3 itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

    d6986 2 a6987 2 BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf d6992 2 a6993 2 available, this is specified using the DEPENDS definition. For example:

    d6995 2 a6996 2 DEPENDS+= xpm-3.4j:../../graphics/xpm d6999 2 a7000 2 DEPENDS+= xpm-[0-9]*:../../graphics/xpm d7002 4 a7005 4 creating binary packages. The dependency is checked when installing the binary package and any package which matches the pattern will be used. Wildcard dependencies should be used with care.

    d7007 3 a7009 3 “-*” to avoid potentially ambiguous matches such as “tk-postgresql” matching a “tk-*DEPENDS.

    d7011 2 a7012 2 will only build against a certain minimum version of a pre-requisite:

    d7014 2 a7015 2 DEPENDS+= tiff>=3.5.4:../../graphics/tiff d7017 4 a7020 4 3.5.4 of the tiff library or newer. Such a dependency may be warranted if, for example, the API of the library has changed with version 3.5.4 and a package would not compile against an earlier version of tiff.

    d7022 5 a7026 5 updated if a package requires a newer pre-requisite, but not to denote recommendations such as ABI changes that do not prevent a package from building correctly. Such recommendations can be expressed using ABI_DEPENDS:

    d7028 2 a7029 2 ABI_DEPENDS+= tiff>=3.6.1:../../graphics/tiff d7031 5 a7035 5 line, this denotes that while a package will build against tiff>=3.5.4, at least version 3.6.1 is recommended. ABI_DEPENDS entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed).

    d7037 8 a7044 9 use the required DEPENDS, set USE_ABI_DEPENDS=NO. This may make it easier and faster to update packages built using pkgsrc, since older compatible dependencies can continue to be used. This is useful for people who watch their rebuilds very carefully; it is not very good as a general-purpose hammer. If you use it, you need to be mindful of possible ABI changes, including those from the underlying OS.

    d7046 3 a7048 3 may not be uploaded to ftp.NetBSD.org by developers and should not be used across different systems that may have different versions of binary packages installed.

    d7050 2 a7051 2 vulnerabilities file. See Section 17.1.10, “Handling packages with security problems” for more information.

    d7055 6 a7060 6 correctly and if there's no buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d7062 2 a7063 2 DEPENDS+= teTeX-[0-9]*:../../print/teTeX d7065 1 a7065 1 paragraph applies here, too.

    d7069 5 a7073 5 add the relevant distribution files to DISTFILES, so they will be extracted automatically. See the print/ghostscript package for an example. (It relies on the jpeg sources being present in source form during the build.)

    d7075 7 a7081 7 and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d7087 3 a7089 3 already have installed on his system, e.g. if your package installs the same set of files like another package in our pkgsrc tree.

    d7091 2 a7092 2 space-separated list of packages (including version string) your package conflicts with.

    d7094 7 a7100 3 and x11/Xaw-Xpm install the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d7102 2 a7103 7 CONFLICTS= Xaw-Xpm-[0-9]*

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

        CONFLICTS=      Xaw3d-[0-9]*
    
    d7105 3 a7107 4 with the name prefix and a different version string. “Xaw3d-1.5” e.g. will automatically conflict with the older version “Xaw3d-1.3”.

    d7113 9 a7121 9 instructed to not build under certain circumstances. If the package builds and runs on most platforms, the exceptions should be noted with NOT_FOR_PLATFORM. If the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. Both ONLY_FOR_PLATFORM and NOT_FOR_PLATFORM are OS triples (OS-version-platform) that can use glob-style wildcards.

    d7123 5 a7127 5 provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive message.

    d7133 6 a7138 6 installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any binary package that is made from this pkgsrc entry. A “preserved” package will not be deleted using pkg_delete(1) unless the “-f” option is used.

    d7144 3 a7146 3 localsrc/security/advisories/pkg-vulnerabilities, and after committing that file, use make upload in the same directory to update the file on ftp.NetBSD.org.

    d7148 3 a7150 3 PKGREVISION should be increased (this is of course not necessary if the problem is fixed by using a newer release of the software).

    d7152 1 a7152 1 branch, be sure to submit a pullup request!

    d7154 1 a7154 1 semi-automatically by a weekly cron job.

    d7160 10 a7169 10 to change the version number in PKGNAME. To avoid conflicting with future versions by the original author, a “nb1”, “nb2”, ... suffix can be used on package versions by setting PKGREVISION=1 (2, ...). The “nb” is treated like a “.” by the pkg tools. e.g.

        DISTNAME=       foo-17.42
        PKGREVISION=    9
    
    d7171 4 a7174 1 “foo-17.42nb9”.

    d7176 2 a7177 2 PKGREVISION should be removed, e.g. on a new minor release of the above package, things should be like:

    d7179 27 a7205 23 DISTNAME= foo-17.43

    PKGREVISION should be incremented for any non-trivial change in the resulting binary package. Without a PKGREVISION bump, someone with the previous version installed has no way of knowing that their package is out of date. Thus, changes without increasing PKGREVISION are essentially labeled "this is so trivial that no reasonable person would want to upgrade", and this is the rough test for when increasing PKGREVISION is appropriate. Examples of changes that do not merit increasing PKGREVISION are:

    Changing HOMEPAGE, MAINTAINER, or comments in Makefile.
    Changing build variables if the resulting binary package is the same.
    Changing DESCR.
    Adding PKG_OPTIONS if the default options don't change.
    

    Examples of changes that do merit an increase to PKGREVISION include:

    Security fixes
    Changes or additions to a patch file
    Changes to the PLIST
    
    d7213 13 a7225 13 or when the replacement text varies, patches alone cannot help. This is where the SUBST framework comes in. It provides an easy-to-use interface for replacing text in files. Example:

        SUBST_CLASSES+=                 fix-paths
        SUBST_STAGE.fix-paths=          pre-configure
        SUBST_MESSAGE.fix-paths=        Fixing absolute paths.
        SUBST_FILES.fix-paths=          src/*.c
        SUBST_FILES.fix-paths+=         scripts/*.sh
        SUBST_SED.fix-paths=            -e 's,"/usr/local,"${PREFIX},g'
        SUBST_SED.fix-paths+=           -e 's,"/var/log,"${VARBASE}/log,g'
    
    d7227 5 a7231 5 that are used to identify the different SUBST blocks that are defined. The SUBST framework is heavily used by pkgsrc, so it is important to always use the += operator with this variable. Otherwise some substitutions may be skipped.

    d7233 3 a7235 3 parameterized with the identifier from the first line (fix-paths in this case.) They can be seen as parameters to a function call.

    d7237 17 a7253 17 which the replacement will take place. All combinations of pre-, do- and post- together with a phase name are possible, though only few are actually used. Most commonly used are post-patch and pre-configure. Of these two, pre-configure should be preferred because then it is possible to run bmake patch and have the state after applying the patches but before making any other changes. This is especially useful when you are debugging a package in order to create new patches for it. Similarly, post-build is preferred over pre-install, because the install phase should generally be kept as simple as possible. When you use post-build, you have the same files in the working directory that will be installed later, so you can check if the substitution has succeeded.

    d7255 1 a7255 1 that is printed just before the substitution is done.

    d7257 3 a7259 3 globbing patterns that specifies the files in which the substitution will take place. The patterns are interpreted relatively to the WRKSRC directory.

    d7261 3 a7263 3 sed(1) that specify the actual substitution. Every sed command should be prefixed with -e, so that all SUBST blocks look uniform.

    d7265 2 a7266 2 used that they are only documented in the mk/subst.mk file.

    d7276 6 a7281 6 DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

    d7283 9 a7291 9 submit personal information to apply for a password, or must pay for the source, or whatever, you can set FETCH_MESSAGE to a list of lines that are displayed to the user before aborting the build. Example:

        FETCH_MESSAGE=  "Please download the files"
        FETCH_MESSAGE+= "    "${DISTFILES:Q}
        FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"."
    
    d7297 22 a7318 19 modifications after the software was released, and they put up a new distfile without changing the package's version number. If a package is already in pkgsrc at that time, the checksum will no longer match. The contents of the new distfile should be compared against the old one before changing anything, to make sure the distfile was really updated on purpose, and that no trojan horse or so crept in. Then, the correct way to work around this is to set DIST_SUBDIR to a unique directory name, usually based on PKGNAME_NOREV. In case this happens more often, PKGNAME can be used (thus including the nbX suffix) or a date stamp can be appended, like ${PKGNAME_NOREV}-YYYYMMDD. Do not forget regenerating the distinfo file after that, since it contains the DIST_SUBDIR path in the filenames. Furthermore, a mail to the package's authors seems appropriate telling them that changing distfiles after releases without changing the file names is not good practice.

    d7328 12 a7339 12 object formats like a.out and ELF, and varying abilities to do shared library and dynamic loading at all. To accompany this, varying commands and options have to be passed to the compiler, linker, etc. to get the Right Thing, which can be pretty annoying especially if you don't have all the machines at your hand to test things. The devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform-independent.

    Here's how to use libtool in a pkg in seven simple steps:

    d7342 1 a7342 1 Makefile.

    d7344 5 a7348 5 ${CC}” in place of “${CC}”. You could even add it to the definition of CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

    d7351 2 a7352 2 “ar”, “ranlib”, and “ld -Bshareable” commands, and instead use:

    d7354 3 a7356 3 ${LIBTOOL} --mode=link ${CC} -o ${.TARGET:.a=.la} ${OBJS:.o=.lo} \ -rpath ${PREFIX}/lib -version-info major:minor d7358 10 a7367 10 .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include “-version-info”, especially when major and minor are zero, as libtool will otherwise strip off the shared library version.

    d7370 1 a7370 1 So, libtool library versions are described by three integers: d7372 2 a7373 2 CURRENT The most recent interface number that this library implements. d7375 2 a7376 2 REVISION The implementation number of the CURRENT interface. d7378 5 a7382 5 AGE The difference between the newest and oldest interfaces that this library implements. In other words, the library implements all the interface numbers in the range from number `CURRENT - AGE' to `CURRENT'. d7384 3 a7386 3 If two libraries have identical CURRENT and AGE numbers, then the dynamic linker chooses the library with the greater REVISION number. d7388 7 a7394 7 different results for a.out and ELF (excluding symlinks) in only one case. An ELF library of the form “libfoo-release.so.x.y” will have a symlink of “libfoo.so.x.y” on an a.out platform. This is handled automatically.

    d7396 1 a7396 1 directory of the library being built.

    d7398 2 a7399 2 .la file, the other files will be added automatically.

    d7403 4 a7406 4 files, i.e. files that are loaded via dlopen(3), NOT shared libraries, use “-module -avoid-version” to prevent them getting version tacked on.

    d7408 1 a7408 1 foo.so entry.

    d7412 8 a7419 8 before they are installed, preface the cc(1) or ld(1) line with “${LIBTOOL} --mode=link”, and it will find the correct libraries (static or shared), but please be aware that libtool will not allow you to specify a relative path in -L (such as “-L../somelib”), because it expects you to change that argument to be the .la file. e.g.

    d7421 2 a7422 2 ${LIBTOOL} --mode=link ${CC} -o someprog -L../somelib -lsomelib d7425 2 a7426 2 ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la d7431 3 a7433 3 or cp(1) command with “${LIBTOOL} --mode=install”, and change the library name to .la. e.g.

    d7435 2 a7436 2 ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib d7438 2 a7439 2 shared library, any needed symlinks, and run ldconfig(8).

    d7442 2 a7443 2 the .la file (this is a change from previous behaviour).

    d7450 5 a7454 5 package Makefile. This will override the package's own libtool in most cases. For older libtool using packages, libtool is made by ltconfig script during the do-configure step; you can check the libtool script location by doing make configure; find work*/ -name libtool.

    d7456 4 a7459 4 scripts, relative to WRKSRC, to override. By default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the package's libtool script(s), set it as appropriate.

    d7461 2 a7462 2 libraries built and installed, then use SHLIBTOOL_OVERRIDE instead.

    d7464 5 a7468 4 for loading dynamic shared objects, that comes with libtool (libltdl), you should include devel/libltdl/buildlink3.mk.

    Some packages use libtool incorrectly so that the package may not work or build in some circumstances. Some of the more common errors are:

    d7472 2 a7473 2 executable or library. This in itself isn't a problem if one of two things has been done:

    d7476 2 a7477 2 libfoo.la, not foo.la

    d7482 3 a7484 3 The function lt_dlinit() should be called and the macro LTDL_SET_PRELOADED_SYMBOLS included in executables.

    d7491 3 a7493 3 to regenerate the configure script and Makefile.in makefile templates, then they should be executed in a pre-configure target.

    d7496 3 a7498 3 AUTOCONF_REQD= 2.50 # if default version is not good enough USE_TOOLS+= autoconf # use "autoconf213" for autoconf-2.13 ... d7500 2 a7501 2 pre-configure: cd ${WRKSRC}; autoconf d7503 2 a7504 2 ... d7507 8 a7514 8 AUTOMAKE_REQD= 1.7.1 # if default version is not good enough USE_TOOLS+= automake # use "automake14" for automake-1.4 ... pre-configure: cd ${WRKSRC}; \ aclocal; autoheader; \ automake -a --foreign -i; autoconf d7516 2 a7517 2 ... d7519 1 a7519 1 require GNU Make.

    d7521 6 a7526 6 additional changes to the generated files, which then causes the build process to try to re-execute the automake sequence. This is prevented by touching various files in the configure stage. If this causes problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package Makefile.

    d7531 69 a7599 1 17.4. Fixing problems in the build phase d7608 1 a7608 1 17.4.1. Compiling C and C++ code conditionally d7628 1 a7628 1 17.4.1.1. C preprocessor macros to identify the operating system d7653 1 a7653 1 17.4.1.2. C preprocessor macros to identify the hardware architecture d7662 1 a7662 1 17.4.1.3. C preprocessor macros to identify the compiler d7672 1 a7672 1 17.4.2. How to handle compiler bugs d7674 3 a7676 3 combinations of compiler version and architecture and almost always relation to optimisation being enabled. Common symptoms are gcc internal errors or never finishing compiling a d7682 1 a7682 1 in pkgsrc/doc/HACKS. See that file for a d7687 1 a7687 1 17.4.3. Undefined reference to “...” d7743 17 a7759 4 LIBS.OperatingSystem+= -lfoo to the package Makefile and then say bmake clean; bmake.

    d7764 1 a7764 1 17.5. Fixing problems in the install phase d7767 1 a7767 1 17.5.1. Creating needed directories d7769 7 a7775 7 with some operating systems cannot create more than one directory at a time. As such, you should call ${INSTALL_*_DIR} like this:

        ${INSTALL_DATA_DIR} ${PREFIX}/dir1
        ${INSTALL_DATA_DIR} ${PREFIX}/dir2
    
    d7777 3 a7779 3 dir2
    ” to the INSTALLATION_DIRS variable, which will automatically do the right thing.

    d7783 1 a7783 1 17.5.2. Where to install documentation d7785 3 a7787 3 ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME} (the latter includes the version number of the package).

    d7789 20 a7808 23 directory where HTML documentation is installed with the “--with-html-dir” option. Sometimes using this flag is needed because otherwise the documentation ends up in ${PREFIX}/share/doc/html or other places.

    An exception to the above is that library API documentation generated with the textproc/gtk-doc tools, for use by special browsers (devhelp) should be left at their default location, which is ${PREFIX}/share/gtk-doc. Such documentation can be recognized from files ending in .devhelp or .devhelp2. (It is also acceptable to install such files in ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME}; the .devhelp* file must be directly in that directory then, no additional subdirectory level is allowed in this case. This is usually achieved by using “--with-html-dir=${PREFIX}/share/doc”. ${PREFIX}/share/gtk-doc is preferred though.)

    d7812 1 a7812 1 17.5.3. Installing score files d7814 9 a7822 9 a score file that allows all users on the system to record their highscores. In order for this to work, the binaries need to be installed setgid and the score files owned by the appropriate group and/or owner (traditionally the "games" user/group). The following variables, documented in more detail in mk/defaults/mk.conf, control this behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

    d7824 2 a7825 2 disabled; setting SETGIDGAME=YES will set all the other variables accordingly.

    d7827 3 a7829 13 access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    17.5.4. Packages containing perl scripts

    If your package contains interpreted perl scripts, set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted.

    d7833 13 a7845 14 17.5.5. Packages with hardcoded paths to other interpreters

    Your package may also contain scripts with hardcoded paths to other interpreters besides (or as well as) perl. To correct the full pathname to the script interpreter, you need to set the following definitions in your Makefile (we shall use tclsh in this example):

        REPLACE_INTERPRETER+=   tcl
        REPLACE.tcl.old=        .*/bin/tclsh
        REPLACE.tcl.new=        ${PREFIX}/bin/tclsh
        REPLACE_FILES.tcl=      # list of tcl scripts which need to be fixed,
                                # relative to ${WRKSRC}, just as in REPLACE_PERL
    
    d7849 2 a7850 2 _REPLACE.* and _REPLACE_FILES.*.

    d7855 1 a7855 1 17.5.6. Packages installing perl modules d7857 6 a7862 6 the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

    d7864 7 a7870 7 on the version of perl used during the build process. To address this, pkgsrc will append lines to the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of paths to packlist files, e.g.:

    d7872 2 a7873 2 PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist d7875 6 a7880 6 PERL5_SITEARCH, and PERL5_ARCHLIB represent the three locations in which perl5 modules may be installed, and may be used by perl5 packages that don't have a packlist. These three variables are also substituted for in the PLIST.

    d7884 1 a7884 1 17.5.7. Packages installing info files d7886 9 a7894 9 “makeinfo” or “install-info” commands. INFO_FILES should be defined in the package Makefile so that INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info directory file. The “install-info” command used for the info files registration is either provided by the system, or by a special purpose package automatically added as dependency if needed.

    d7896 3 a7898 3 ${PREFIX} where info files are primarily located. PKGINFODIR defaults to “info” and can be overridden by the user.

    d7900 2 a7901 2 package PLIST; however any split info files need not be listed.

    d7903 10 a7912 10 at build time must add “makeinfo” to USE_TOOLS in its Makefile. If a minimum version of the “makeinfo” command is needed it should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a minimum version of 3.12 is required. If the system does not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

    d7914 5 a7918 5 by the package should not use the install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

    d7920 3 a7922 3 overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

    d7924 4 a7927 4 no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of TEXINFO_REQD either runs the appropriate makeinfo command or exit on error.

    d7931 1 a7931 1 17.5.8. Packages installing man pages d7933 7 a7939 7 into the same directory, so that there is one common place to look for them. In pkgsrc, this place is ${PREFIX}/${PKGMANDIR}, and this expression should be used in packages. The default for PKGMANDIR is “man”. Another often-used value is “share/man”.

    d7942 2 a7943 2

    The support for a custom PKGMANDIR is far from complete.

    d7946 17 a7962 20 man/ as the top level directory for the man page file entries, and the pkgsrc framework will convert as needed. In all other places, the correct PKGMANDIR must be used.

    Packages that are configured with GNU_CONFIGURE set as “yes”, by default will use the ./configure --mandir switch to set where the man pages should be installed. The path is GNU_CONFIGURE_MANDIR which defaults to ${PREFIX}/${PKGMANDIR}.

    Packages that use GNU_CONFIGURE but do not use --mandir, can set CONFIGURE_HAS_MANDIR to “no”. Or if the ./configure script uses a non-standard use of --mandir, you can set GNU_CONFIGURE_MANDIR as needed.

    d7964 1 a7964 2 information on installation of compressed manual pages.

    d7968 5 a7972 7 17.5.9. Packages installing GConf2 data files

    If a package installs .schemas or .entries files, used by GConf2, you need to take some extra steps to make sure they get registered in the database:

    d7975 6 a7980 6 instead of its buildlink3.mk file. This takes care of rebuilding the GConf2 database at installation and deinstallation time, and tells the package where to install GConf2 data files using some standard configure arguments. It also disallows any access to the database directly from the package.

    d7982 4 a7985 4 .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to manually patch the package.

    d7987 2 a7988 2 directory, as they will be handled automatically. See Section 7.14, “How do I change the location of configuration files?” for more information.

    d7990 3 a7992 3 your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    d7994 4 a7997 4 your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    d8002 4 a8005 6 17.5.10. Packages installing scrollkeeper data files

    If a package installs .omf files, used by scrollkeeper, you need to take some extra steps to make sure they get registered in the database:

    d8008 5 a8012 6 ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This takes care of rebuilding the scrollkeeper database at installation and deinstallation time, and disallows any access to it directly from the package.

    d8014 2 a8015 2 libdata/scrollkeeper directory, as they will be handled automatically.

    d8017 1 a8017 1 the PLIST. It will be handled by scrollkeeper.

    d8022 1 a8022 1 17.5.11. Packages installing X11 fonts d8024 3 a8026 3 the fonts database in the directory where they get installed at installation and deinstallation time. This can be automatically done by using the pkginstall framework.

    d8028 5 a8032 5 FONTS_DIRS.type variables, where type can be one of “ttf”, “type1” or “x11”. Also make sure that the database file fonts.dir is not listed in the PLIST.

    d8034 2 a8035 2 instead use the standard ones to avoid that the user needs to manually configure his X server to find them.

    d8039 1 a8039 1 17.5.12. Packages installing GTK2 modules d8041 2 a8042 2 take some extra steps to get them registered in the GTK2 database properly:

    d8045 7 a8051 10 ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

  • Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

  • Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

  • d8053 2 a8054 5

    Patch the package to not touch any of the GTK2 databases directly. These are:

    a8058 2

    d8060 3 a8062 4
  • Check the PLIST and remove any entries under the libdata/gtk-2.0 directory, as they will be handled automatically.

  • d8067 1 a8067 1 17.5.13. Packages installing SGML or XML data d8069 2 a8070 3 registered in system-wide catalogs (like DTDs, sub-catalogs, etc.), you need to take some extra steps:

    d8073 4 a8076 4 ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in system-wide catalogs at installation and deinstallation time.

    d8078 1 a8078 1 any SGML catalogs installed by the package.

    d8080 1 a8080 1 any XML catalogs installed by the package.

    d8082 4 a8085 4 to be added to the SGML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

    d8087 4 a8090 5 to be added to the XML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

    d8095 1 a8095 1 17.5.14. Packages installing extensions to the MIME database d8097 4 a8100 5 installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

    d8103 7 a8109 7 ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the package.

    d8111 7 a8117 7 share/mime directory, except for files saved under share/mime/packages. The former are handled automatically by the update-mime-database program, but the latter are package-dependent and must be removed by the package that installed them in the first place.

    d8119 2 a8120 2 from the PLIST. They will be handled by the shared-mime-info package.

    d8125 1 a8125 1 17.5.15. Packages using intltool d8127 3 a8129 4 ../../textproc/intltool/buildlink3.mk file, which forces it to use the intltool package provided by pkgsrc, instead of the one bundled with the distribution file.

    d8131 2 a8132 3 latest available version; this way, the package benefits of any bug fixes that may have appeared since it was released.

    d8136 1 a8136 1 17.5.16. Packages installing startup scripts d8138 6 a8143 6 the startup directory by default, but you can enable it, by adding the option PKG_RCD_SCRIPTS=YES in /etc/mk.conf. This option will copy the scripts into /etc/rc.d when a package is installed, and it will automatically remove the scripts when the package is deinstalled.

    d8147 1 a8147 1 17.5.17. Packages installing TeX modules d8149 2 a8150 2 the ls-R database of the tree needs to be updated.

    d8154 3 a8156 3 packages should install files into PKG_LOCALTEXMFPREFIX, not PKG_TEXMFPREFIX.

    d8160 4 a8163 4 ../../print/teTeX/module.mk instead of ../../mk/tex.buildlink3.mk. This takes care of rebuilding the ls-R database at installation and deinstallation time.

    d8166 4 a8169 4 tree other than the one at PKG_LOCALTEXMFPREFIX, set TEXMFDIRS to the list of all texmf trees that need database update.

    d8171 6 a8176 6 to be registered using updmap, set TEX_FONTMAPS to the list of all such font map files. Then updmap will be run automatically at installation/deinstallation to enable/disable font map files for TeX output drivers.

    d8179 2 a8180 2 databases are included in PLIST, as they will be removed only by the teTeX-bin package.

    d8185 18 a8202 1 17.5.18. Packages installing hicolor theme icons d8204 5 a8208 5 share/icons/hicolor and/or updates the share/icons/hicolor/icon-theme.cache database, you need to take some extra steps to make sure that the shared theme directory is handled appropriately and that the cache database is rebuilt:

    d8211 3 a8213 4 ../../graphics/hicolor-icon-theme/buildlink3.mk instead of its buildlink3.mk file.

  • Check the PLIST and remove the entry that refers to the theme cache.

  • d8224 1 a8224 1 17.5.19. Packages installing desktop files d8241 26 d8288 1 a8288 2
  • Run make configure

  • d8306 1 a8306 1 package.

    d8385 12 a8396 5 Finally, send-pr with category “pkg”, a synopsis which includes the package name and version number, a short description of your package (contents of the COMMENT variable or DESCR file are OK) and attach the archive to your PR.

    d8441 1 a8441 2

    This section is only of interest for pkgsrc developers with write d8448 1 a8448 2 “pkgsrc-base”, e.g:

    d8453 1 a8453 2

    Remember to move the directory from which you imported out of d8456 2 a8457 4 package to the category's Makefile.

    The commit message of the initial import should include part of the d8459 2 a8460 4 what the package is/does.

    For new packages, “cvs import” is preferred to “cvs d8462 1 a8462 2 and provides a consistent tag.

    d8467 1 a8467 2

    Please always put a concise, appropriate and relevant summary of the d8469 1 a8469 2 a package. There are various reasons for this:

    d8471 5 a8475 10
  • A URL is volatile, and can change over time. It may go away completely or its information may be overwritten by newer information.

  • Having the change information between old and new versions in our CVS repository is very useful for people who use either cvs or anoncvs.

  • Having the change information between old and new versions in our CVS d8478 1 a8478 2 the package.

  • d8480 1 a8480 2

    Please also recognize that, just because a new version of a package d8486 1 a8486 2 stability is to be preferred above new and possibly untested features.

    d8495 1 a8495 3

    Alternatively to the first two steps you can also do:

    d8497 1 a8497 3

    and use that for further work.

    a8508 2

    d8517 1 a8517 3

    (and any packages from step 5, of course).

    d8532 1 a8532 1
    20.1. What is the difference between d8536 1 a8536 1
    20.2. What is the difference between d8540 1 a8540 1
    20.3. What is the difference between d8544 1 a8544 1
    20.4. What is the difference between d8549 1 a8549 1
    20.5. Why does make show-var d8553 1 a8553 1
    20.6. What does d8558 1 a8558 1
    20.7. Which mailing lists are there for package d8561 1 a8561 1
    20.8. Where is the pkgsrc d8570 1 a8570 1 20.1. d8586 1 a8586 1 20.2. d8604 1 a8604 1 20.3. d8622 1 a8622 1 20.4. d8635 1 a8635 1 20.5. d8651 1 a8651 1 20.6. d8675 1 a8675 1 20.7. d8700 1 a8700 1 20.8. d8893 1 a8893 1 See Section 17.5.10, “Packages installing scrollkeeper data files”. d8899 1 a8899 1 See Section 17.5.18, “Packages installing hicolor theme icons”. d8904 1 a8904 1 See Section 17.5.14, “Packages installing extensions to the MIME database”. d8910 1 a8910 1 See Section 17.5.19, “Packages installing desktop files”. d9244 2 a9245 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all @ 1.85 log @Regen after addition of some GNOME-specific documentation. @ text @d1531 1 a1531 1

    At this point in time, pkgsrc only supports one ABI at a time. That is, you can not d2215 1 a2215 1 before any packages are installed, as you can not use several directories @ 1.84 log @regen @ text @d34 1 a34 1

    $NetBSD: pkgsrc.xml,v 1.21 2006/07/03 23:51:01 rillig Exp $

    d173 4 d335 2 a337 1
    17.6. Feedback to the author
    d350 7 d360 1 a360 1
    21. Design of the pkgsrc infrastructure
    d362 3 a364 3
    21.1. The meaning of variable definitions
    21.2. Avoiding problems before they arise
    21.3. Variable evaluation
    d366 2 a367 2
    21.3.1. At load time
    21.3.2. At runtime
    d369 2 a370 2
    21.4. How can variables be specified?
    21.5. Designing interfaces for Makefile fragments
    d372 2 a373 2
    21.5.1. Procedures with parameters
    21.5.2. Actions taken on behalf of parameters
    d375 1 a375 1
    21.6. The order in which files are loaded
    d377 2 a378 2
    21.6.1. The order in bsd.prefs.mk
    21.6.2. The order in bsd.pkg.mk
    d381 1 a381 1
    22. Regression tests
    d383 3 a385 3
    22.1. The regression tests framework
    22.2. Running the regression tests
    22.3. Adding a new regression test
    d387 2 a388 2
    22.3.1. Overridable functions
    22.3.2. Helper functions
    d391 1 a391 1
    23. Porting pkgsrc
    d393 2 a394 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d438 4 d1259 1 a1259 1

    Darwin 5.x and 6.x are supported. There are two methods of using d1274 2 a1275 2

    You cannot use a HFS+ file system for pkgsrc, because pkgsrc currently requires the file system to be case-sensitive, and HFS+ is not.

    d1282 2 a1283 2 # ./ufsdiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste # ./ufsdiskimage mount ~/Documents/NetBSD d1285 6 a1290 1

    That's it!

    d2083 1 a2083 1 — in particular, look for the MASTER_SORT, d2344 1 a2344 1 — it is an internal definition which refers to the d2817 1 a2817 1 e. g. for sysutils/aperture):

    d3473 4 d3635 2 a3637 1
    17.6. Feedback to the author
    d3650 7 d3753 4 a3958 5

    When adding a patch that corrects a problem in the distfile (rather than e.g. enforcing pkgsrc's view of where man pages should go), send the patch as a bug report to the maintainer. This benefits non-pkgsrc users of the package, and usually enables removing the patch in future version.

    d3974 122 d4291 1 a4291 1

    No rule without exception—the .for d6765 2 a6767 1

    17.6. Feedback to the author
    d8145 40 a8185 11

    17.6. Feedback to the author

    If you have found any bugs in the package you make available, if you had to do special steps to make it run under NetBSD or if you enhanced the software in various other ways, be sure to report these changes back to the original author of the program! With that kind of support, the next release of the program can incorporate these fixes, and people not using the NetBSD packages system can win from your efforts.

    Support the idea of free software!

    d8472 1 a8472 1
    20.1. What is the difference between d8476 1 a8476 1
    20.2. What is the difference between d8480 1 a8480 1
    20.3. What is the difference between d8484 1 a8484 1
    20.4. What is the difference between d8489 1 a8489 1
    20.5. Why does make show-var d8493 1 a8493 1
    20.6. What does d8498 1 a8498 1
    20.7. Which mailing lists are there for package d8501 1 a8501 1
    20.8. Where is the pkgsrc d8510 1 a8510 1 20.1. d8526 1 a8526 1 20.2. d8544 1 a8544 1 20.3. d8562 1 a8562 1 20.4. d8575 1 a8575 1 20.5. d8591 1 a8591 1 20.6. d8615 1 a8615 1 20.7. d8640 1 a8640 1 20.8. d8688 285 d8986 1 a8986 1
    21. Design of the pkgsrc infrastructure
    d8988 3 a8990 3
    21.1. The meaning of variable definitions
    21.2. Avoiding problems before they arise
    21.3. Variable evaluation
    d8992 2 a8993 2
    21.3.1. At load time
    21.3.2. At runtime
    d8995 2 a8996 2
    21.4. How can variables be specified?
    21.5. Designing interfaces for Makefile fragments
    d8998 2 a8999 2
    21.5.1. Procedures with parameters
    21.5.2. Actions taken on behalf of parameters
    d9001 1 a9001 1
    21.6. The order in which files are loaded
    d9003 2 a9004 2
    21.6.1. The order in bsd.prefs.mk
    21.6.2. The order in bsd.pkg.mk
    d9007 1 a9007 1
    22. Regression tests
    d9009 3 a9011 3
    22.1. The regression tests framework
    22.2. Running the regression tests
    22.3. Adding a new regression test
    d9013 2 a9014 2
    22.3.1. Overridable functions
    22.3.2. Helper functions
    d9017 1 a9017 1
    23. Porting pkgsrc
    d9019 2 a9020 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d9027 1 a9027 1 Chapter 21. Design of the pkgsrc infrastructure
    d9031 3 a9033 3
    21.1. The meaning of variable definitions
    21.2. Avoiding problems before they arise
    21.3. Variable evaluation
    d9035 2 a9036 2
    21.3.1. At load time
    21.3.2. At runtime
    d9038 2 a9039 2
    21.4. How can variables be specified?
    21.5. Designing interfaces for Makefile fragments
    d9041 2 a9042 2
    21.5.1. Procedures with parameters
    21.5.2. Actions taken on behalf of parameters
    d9044 1 a9044 1
    21.6. The order in which files are loaded
    d9046 2 a9047 2
    21.6.1. The order in bsd.prefs.mk
    21.6.2. The order in bsd.pkg.mk
    d9057 1 a9057 1 21.1. The meaning of variable definitions d9088 1 a9088 1 21.2. Avoiding problems before they arise d9112 1 a9112 1 21.3. Variable evaluation d9115 1 a9115 1 21.3.1. At load time d9157 1 a9157 1 21.3.2. At runtime d9165 1 a9165 1 21.4. How can variables be specified? d9174 1 a9174 1 21.5. Designing interfaces for Makefile fragments d9181 1 a9181 1 21.5.1. Procedures with parameters d9184 2 a9185 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d9215 1 a9215 1 21.5.2. Actions taken on behalf of parameters d9227 1 a9227 1 21.6. The order in which files are loaded d9242 1 a9242 1 21.6.1. The order in bsd.prefs.mk d9269 1 a9269 1 21.6.2. The order in bsd.pkg.mk d9301 1 a9301 1 Chapter 22. Regression tests d9305 3 a9307 3
    22.1. The regression tests framework
    22.2. Running the regression tests
    22.3. Adding a new regression test
    d9309 2 a9310 2
    22.3.1. Overridable functions
    22.3.2. Helper functions
    d9324 1 a9324 1 22.1. The regression tests framework d9329 1 a9329 1 22.2. Running the regression tests d9337 1 a9337 1 22.3. Adding a new regression test d9346 1 a9346 1 22.3.1. Overridable functions d9373 1 a9373 1 22.3.2. Helper functions d9396 1 a9396 1 Chapter 23. Porting pkgsrc d9400 2 a9401 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d9410 1 a9410 1 23.1. Porting pkgsrc to a new operating system d9461 1 a9461 1 23.2. Adding support for a new compiler @ 1.83 log @regen @ text @d7556 8 a7563 5 ${PREFIX}/share/doc/${PKGNAME} (the latter includes the version number of the package).

    Many modern packages using GNU autoconf allow to set the directory where HTML documentation is installed with the “--with-html-dir” option.

    d7573 9 a7581 2 ${PREFIX}/share/doc; no additional subdirectory level is allowed in this case.)

    d8288 1 a8288 1
    20.1. What is the difference between d8292 1 a8292 1
    20.2. What is the difference between d8296 1 a8296 1
    20.3. What is the difference between d8300 1 a8300 1
    20.4. What is the difference between d8305 1 a8305 1
    20.5. Why does make show-var d8309 1 a8309 1
    20.6. What does d8314 1 a8314 1
    20.7. Which mailing lists are there for package d8317 1 a8317 1
    20.8. Where is the pkgsrc d8326 1 a8326 1 20.1. d8342 1 a8342 1 20.2. d8360 1 a8360 1 20.3. d8378 1 a8378 1 20.4. d8391 1 a8391 1 20.5. d8407 1 a8407 1 20.6. d8431 1 a8431 1 20.7. d8456 1 a8456 1 20.8. @ 1.82 log @re-generated. @ text @d8 1 a8 5 d463 1 a463 1
  • www/mozilla - The Mozilla d522 1 a522 1 d587 1 a587 1
    d589 1 d1019 1 a1019 1 d1190 1 a1190 1
    d1192 1 a1192 1

    d2023 1 a2023 1 www/mozilla.

    d2062 1 a2062 1 — in particular, look for the MASTER_SORT, d2323 1 a2323 1 — it is an internal definition which refers to the a2340 1 d2796 1 a2796 1 e. g. for sysutils/aperture):

    d4137 1 a4137 1

    No rule without exception—the .for d6342 1 a6342 1 www/mozilla or d7554 1 a7554 1

    Documentation should be installed into d7558 14 d8278 1 a8278 1

    20.1. What is the difference between d8282 1 a8282 1
    20.2. What is the difference between d8286 1 a8286 1
    20.3. What is the difference between d8290 1 a8290 1
    20.4. What is the difference between d8295 1 a8295 1
    20.5. Why does make show-var d8299 1 a8299 1
    20.6. What does d8304 1 a8304 1
    20.7. Which mailing lists are there for package d8307 1 a8307 1
    20.8. Where is the pkgsrc d8316 1 a8316 1 20.1. d8323 1 a8323 1 d8332 1 a8332 1 20.2. d8339 1 a8339 1 d8350 1 a8350 1 20.3. d8357 1 a8357 1 d8368 1 a8368 1 20.4. d8376 1 a8376 1 d8381 1 a8381 1 20.5. d8388 1 a8388 1 d8397 1 a8397 1 20.6. d8405 1 a8405 1 d8421 1 a8421 1 20.7. d8427 1 a8427 1 d8446 1 a8446 1 20.8. d8452 1 a8452 1 d8705 2 a8706 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d9414 1 a9414 1 re-generate the pkgsrc guide (and other XML-based NetBSD d9435 7 a9441 15
  • Run (cd .. && cvs update pkgsrc.*) && bmake install-doc to put the generated files into pkgsrc/doc.

  • Run (cd .. && cvs commit -m "regenerated." pkgsrc.{html,txt}) to commit the generated documentation.

  • Run (cd ../../../htdocs/Documentation/pkgsrc && cvs update) && bmake install-htdocs to generate all the files for the web server.

  • Run (cd ../../../htdocs/Documentation/pkgsrc && cvs commit -m "regenerated.") to update the files on the web server. If you have added a chapter, don't forget to run cvs add *.html before you commit the files.

  • @ 1.81 log @re-generated. @ text @d56 4 d64 1 a64 1
    1.3.2. People involved in pkgsrc
    d86 11 a96 10
    3.1. Bootstrapping pkgsrc
    3.2. Platform-specific notes
    3.2.1. Darwin (Mac OS X)
    3.2.2. FreeBSD
    3.2.3. Interix
    3.2.4. IRIX
    3.2.5. Linux
    3.2.6. OpenBSD
    3.2.7. Solaris
    d105 6 a110 1
    4.1.3. A word of warning
    d423 9 d439 4 d447 1 a447 1
    1.3.2. People involved in pkgsrc
    d455 7 a461 13

    There is a lot of software freely available for Unix-based systems, which usually runs on NetBSD and other Unix-flavoured systems, too, sometimes with some modifications. The NetBSD Packages Collection (pkgsrc) incorporates any such changes necessary to make that software run, and makes the installation (and de-installation) of the software package easy by means of a single command.

    Once the software has been built, it is manipulated with the pkg_* tools so that installation and de-installation, printing of an inventory of all installed packages and retrieval of one-line comments or more verbose descriptions are all simple.

    d478 43 d524 70 a593 15
    d675 1 a675 1 1.3.2. People involved in pkgsrc d733 11 a743 10
    3.1. Bootstrapping pkgsrc
    3.2. Platform-specific notes
    3.2.1. Darwin (Mac OS X)
    3.2.2. FreeBSD
    3.2.3. Interix
    3.2.4. IRIX
    3.2.5. Linux
    3.2.6. OpenBSD
    3.2.7. Solaris
    d752 6 a757 1
    4.1.3. A word of warning
    d942 6 d991 11 a1001 10
    3.1. Bootstrapping pkgsrc
    3.2. Platform-specific notes
    3.2.1. Darwin (Mac OS X)
    3.2.2. FreeBSD
    3.2.3. Interix
    3.2.4. IRIX
    3.2.5. Linux
    3.2.6. OpenBSD
    3.2.7. Solaris
    d1007 206 a1212 18 3.1. Bootstrapping pkgsrc

    For operating systems other than NetBSD, we provide a bootstrap kit to build the required tools to use pkgsrc on your platform. Besides support for native NetBSD, pkgsrc and the bootstrap kit have support for the following operating systems:

    • Darwin (Mac OS X)

    • DragonFly BSD

    • FreeBSD

    • Interix (Windows 2000, XP, 2003)

    • IRIX

    • Linux

    • OpenBSD

    • Solaris

    • Tru64 (Digital UNIX/OSF1)

    Support for other platforms is under development.

    Installing the bootstrap kit should be as simple as:

    d1241 1 a1241 1 3.2. Platform-specific notes d1245 1 a1245 1 3.2.1. Darwin (Mac OS X) d1247 2 a1248 2 pkgsrc on Mac OS X, by using a disk image, or a UFS d1266 1 a1266 1 3.2.1.1. Using a disk image d1276 1 a1276 1 3.2.1.2. Using a UFS partition d1310 1 a1310 1 3.2.2. FreeBSD d1338 1 a1338 1 3.2.3. Interix d1349 1 a1349 1 3.2.3.1. When installing Interix/SFU d1380 1 a1380 1 3.2.3.2. What to do if Interix/SFU is already installed d1403 1 a1403 1 3.2.3.3. Important notes for using pkgsrc d1426 1 a1426 1 3.2.3.4. Limitations of the Interix platform d1488 1 a1488 1 3.2.3.5. Known issues for pkgsrc on Interix d1505 1 a1505 1 3.2.4. IRIX d1550 1 a1550 1 3.2.5. Linux d1600 1 a1600 1 3.2.6. OpenBSD d1638 1 a1638 1 3.2.7. Solaris d1659 1 a1659 1 3.2.7.1. If you are using gcc d1670 1 a1670 1 3.2.7.2. If you are using Sun WorkShop d1694 1 a1694 1 3.2.7.3. Buildling 64-bit binaries with SunPro d1747 1 a1747 1 3.2.7.4. Common problems d1772 6 a1777 1
    4.1.3. A word of warning
    d1825 1 a1825 1

    These prebuilt package tools use d1830 1 a1830 1 package tools yourself, which is explained in Section 3.1, “Bootstrapping pkgsrc”.

    d1887 1 a1887 1
    # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All/package.tgz
    d1915 88 a2002 1 4.1.3. A word of warning d2019 15 a2033 1

    This assumes that the package is already in pkgsrc. If it d2039 6 a2044 5

    To build packages from source on a NetBSD system the “comp” and the “text” distribution sets must be installed. If you want to build X11-related packages the “xbase” and “xcomp” distribution sets are required, too.

    d2052 10 d2073 13 a2085 4

    If you don't have a permanent Internet connection and you want to know which files to download, make fetch-list will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles.

    d2090 6 a2095 3

    Assuming that the distfile has been fetched (see previous section), become root and change into the relevant directory and run make.

    d2106 14 a2119 5 package, and

    # make install

    to install the various components into the correct places on your system. Installing the package on your system requires you to be root. However, pkgsrc has a d2121 17 a2137 1 to only become root for the actual installation step

    d2267 5 a2271 3 pkgsrc packages. The preferred method of setting these variables is by setting them in /etc/mk.conf.

    d2302 4 a2306 2

    d2342 6 d8101 1 a8101 1 archive, preferably with all files in a single directory. d8268 1 a8268 1
    20.1. What is the difference between d8272 1 a8272 1
    20.2. What is the difference between d8276 1 a8276 1
    20.3. What is the difference between d8280 1 a8280 1
    20.4. What is the difference between d8285 1 a8285 1
    20.5. Why does make show-var d8289 1 a8289 1
    20.6. What does d8294 1 a8294 1
    20.7. Which mailing lists are there for package d8297 1 a8297 1
    20.8. Where is the pkgsrc d8306 1 a8306 1 20.1. d8322 1 a8322 1 20.2. d8340 1 a8340 1 20.3. d8358 1 a8358 1 20.4. d8371 1 a8371 1 20.5. d8387 1 a8387 1 20.6. d8411 1 a8411 1 20.7. d8436 1 a8436 1 20.8. @ 1.80 log @regenerated. @ text @d250 4 d344 9 a352 1
    21.1. Variable evaluation
    d354 2 a355 2
    21.1.1. At load time
    21.1.2. At runtime
    d357 1 a357 2
    21.2. How can variables be specified?
    21.3. Designing interfaces for Makefile fragments
    d359 2 a360 2
    21.3.1. Procedures with parameters
    21.3.2. Actions taken on behalf of parameters
    d1516 2 a1517 10

    For NetBSD, the binary packages are made available on ftp.NetBSD.org and its mirrors, in the directory /pub/NetBSD/packages/OSVERSION/ARCH/. For OSVERSION, you should insert the output of uname -r, and for ARCH the output of uname -p.

    For some other platforms, binary packages can be found at the following locations:

    d1530 4 d1544 2 a1545 2

    Most of these directories contain the pkgsrc distribution for multiple platforms. Select the appropriate subdirectories, a1918 14

  • ALLOW_VULNERABILITIES.pkgbase: A space separated list of vulnerability IDs that may be ignored when performing the automated security checks. These IDs are listed in the pkg-vulnerabilities file and are displayed by audit-packages when it finds a vulnerable package.

  • SKIP_AUDIT_PACKAGES: If this is set to “yes”, the automated security checks (which use the security/audit-packages package) will be entirely skipped for all packages built. Normally you'll want to use ALLOW_VULNERABILITIES instead of this.

  • d3059 4 d3270 3 a3272 2 should appear exactly in the order given here.

    d3302 5 a3306 67
  • MASTER_SITES is a list of URLs where the distribution files can be downloaded. Each URL must end with a slash.

    The MASTER_SITES may make use of the following predefined sites:

        ${MASTER_SITE_APACHE}
        ${MASTER_SITE_BACKUP}
        ${MASTER_SITE_CYGWIN}
        ${MASTER_SITE_DEBIAN}
        ${MASTER_SITE_FREEBSD}
        ${MASTER_SITE_FREEBSD_LOCAL}
        ${MASTER_SITE_GNOME}
        ${MASTER_SITE_GNU}
        ${MASTER_SITE_GNUSTEP}
        ${MASTER_SITE_IFARCHIVE}
        ${MASTER_SITE_MOZILLA}
        ${MASTER_SITE_OPENOFFICE}
        ${MASTER_SITE_PERL_CPAN}
        ${MASTER_SITE_R_CRAN}
        ${MASTER_SITE_SOURCEFORGE}
        ${MASTER_SITE_SUNSITE}
        ${MASTER_SITE_SUSE}
        ${MASTER_SITE_TEX_CTAN}
        ${MASTER_SITE_XCONTRIB}
        ${MASTER_SITE_XEMACS}
    

    If one of these predefined sites is chosen, you may want to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

        ${MASTER_SITE_GNU:=subdirectory/name/}
        ${MASTER_SITE_SOURCEFORGE:=project_name/}
    

    Note the trailing slash after the subdirectory name.

    If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES.foo to a list of URIs where file “foo” may be found. “foo” includes the suffix, e.g.:

        DISTFILES=      ${DISTNAME}${EXTRACT_SUFX}
        DISTFILES+=     foo-file.tar.gz
        SITES.foo-file.tar.gz= \
                http://www.somewhere.com/somehow/ \
                http://www.somewhereelse.com/mirror/somehow/
    
  • DISTFILES: Name(s) of archive file(s) containing distribution. The default is ${DISTNAME}${EXTRACT_SUFX}. Should only be set if you have more than one distfile.

    Note that the normal default setting of DISTFILES must be made explicit if you want to add to it (rather than replace it), as you usually would.

  • EXTRACT_SUFX: Suffix of the distribution file, will be appended to DISTNAME. Defaults to .tar.gz.

  • a3307 2

    d5182 4 d5359 101 a5459 6

    This will check if the file(s) given in the variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

    d5463 13 a5475 9

    where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES.file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    d6973 1 d7216 8 a7223 8

    Many packages install manual pages. The man pages are installed under ${PREFIX}/${PKGMANDIR} which is /usr/pkg/man by default. PKGMANDIR defaults to “man”. For example, you can set PKGMANDIR to “share/man” to have man pages install under /usr/pkg/share/man/ by default.

    d7226 2 a7227 3

    The support for a custom PKGMANDIR is not complete.

    d7229 5 a7233 5

    The PLIST files can just use man/ as the top level directory for the man page file entries and the pkgsrc framework will convert as needed.

    d7788 1 a7788 1
    20.1. What is the difference between d7792 1 a7792 1
    20.2. What is the difference between d7796 1 a7796 1
    20.3. What is the difference between d7800 1 a7800 1
    20.4. What is the difference between d7805 1 a7805 1
    20.5. Why does make show-var d7809 1 a7809 1
    20.6. What does d7814 1 a7814 1
    20.7. Which mailing lists are there for package d7817 1 a7817 1
    20.8. Where is the pkgsrc d7826 1 a7826 1 20.1. d7842 1 a7842 1 20.2. d7860 1 a7860 1 20.3. d7878 1 a7878 1 20.4. d7891 1 a7891 1 20.5. d7907 1 a7907 1 20.6. d7931 1 a7931 1 20.7. d7956 1 a7956 1 20.8. d8019 3 a8021 1
    21.1. Variable evaluation
    d8023 2 a8024 2
    21.1.1. At load time
    21.1.2. At runtime
    d8026 2 a8027 2
    21.2. How can variables be specified?
    21.3. Designing interfaces for Makefile fragments
    d8029 7 a8035 2
    21.3.1. Procedures with parameters
    21.3.2. Actions taken on behalf of parameters
    d8062 9 a8070 1
    21.1. Variable evaluation
    d8072 2 a8073 2
    21.1.1. At load time
    21.1.2. At runtime
    d8075 1 a8075 2
    21.2. How can variables be specified?
    21.3. Designing interfaces for Makefile fragments
    d8077 2 a8078 2
    21.3.1. Procedures with parameters
    21.3.2. Actions taken on behalf of parameters
    d8088 56 a8143 1 21.1. Variable evaluation d8146 1 a8146 1 21.1.1. At load time d8188 1 a8188 1 21.1.2. At runtime d8196 1 a8196 1 21.2. How can variables be specified? d8205 1 a8205 1 21.3. Designing interfaces for Makefile fragments d8212 1 a8212 1 21.3.1. Procedures with parameters d8246 1 a8246 1 21.3.2. Actions taken on behalf of parameters d8256 73 @ 1.79 log @regenerated. @ text @d38 1 a38 1

    $NetBSD: pkgsrc.xml,v 1.20 2006/06/30 08:58:16 rillig Exp $

    d156 1 d362 1 a362 3
    23. The implementation of the pkgsrc bulk builds
    23.1. Deciding which packages to build
    24. Porting pkgsrc
    d364 2 a365 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d681 1 d2559 1 d2606 1 a2606 1

    The pkgsrc/pkgtools directory pkgtools contains d2942 21 d6608 1 a6608 1 mk/subst.mk.

    d7751 1 a7751 1
    20.1. What is the difference between d7755 1 a7755 1
    20.2. What is the difference between d7759 1 a7759 1
    20.3. What is the difference between d7763 1 a7763 1
    20.4. What is the difference between d7768 1 a7768 1
    20.5. Why does make show-var d7772 1 a7772 1
    20.6. What does d7777 1 a7777 1
    20.7. Which mailing lists are there for package d7780 3 d7789 1 a7789 1 20.1. d7805 1 a7805 1 20.2. d7823 1 a7823 1 20.3. d7841 1 a7841 1 20.4. d7854 1 a7854 1 20.5. d7870 1 a7870 1 20.6. d7894 1 a7894 1 20.7. d7917 46 d8004 1 a8004 3
    23. The implementation of the pkgsrc bulk builds
    23.1. Deciding which packages to build
    24. Porting pkgsrc
    d8006 2 a8007 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d8248 1 a8248 47 Chapter 23. The implementation of the pkgsrc bulk builds

    23.1. Deciding which packages to build

    Note

    This is not yet implemented.

    Some of the pkgsrc packages are not usable in a certain build configuration, either because of platform limitations (processor, operating system) or because the build is done by an unprivileged user. This section lists all the conditions that influence whether a package is excluded from a bulk build.

    • ONLY_FOR_PLATFORM or NOT_FOR_PLATFORM may be defined in the package Makefile.

    • ONLY_FOR_COMPILER or NOT_FOR_COMPILER may be defined in the package Makefile.

    • NOT_FOR_UNPRIVILEGED (does not exist yet) may be defined in the package Makefile (only affects bulk builds in unprivileged mode).

    • LICENSE may be defined in the package Makefile. This may be overridden by defining ACCEPTABLE_LICENSES in mk.conf.

    • The package vulnerability database may list the package as vulnerable. This may be overridden by defining ALLOW_VULNERABLE_PACKAGES in mk.conf.

    • Packages that define INTERACTIVE_STAGE cannot be built by the bulk builds, which are by definition non-interactive.

    Chapter 24. Porting pkgsrc

    d8252 2 a8253 2
    24.1. Porting pkgsrc to a new operating system
    24.2. Adding support for a new compiler
    d8262 1 a8262 1 24.1. Porting pkgsrc to a new operating system
    d8313 1 a8313 1 24.2. Adding support for a new compiler @ 1.78 log @regen. @ text @d38 1 a38 1

    $NetBSD: pkgsrc.xml,v 1.19 2006/06/01 08:39:03 rillig Exp $

    d282 1 d361 3 a363 1
    23. Porting pkgsrc
    d365 2 a366 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d398 1 a398 1
    D.1. Targets
    d3077 1 d3792 3 d3805 1 d3824 3 d6038 1 d6125 3 d6529 59 d6601 1 a6601 2 example of this usage.

    d7729 1 a7729 1
    20.1. What is the difference between d7733 1 a7733 1
    20.2. What is the difference between d7737 1 a7737 1
    20.3. What is the difference between d7741 1 a7741 1
    20.4. What is the difference between d7746 1 a7746 1
    20.5. Why does make show-var d7750 1 a7750 1
    20.6. What does d7755 1 a7755 1
    20.7. Which mailing lists are there for package d7764 1 a7764 1 20.1. d7780 1 a7780 1 20.2. d7798 1 a7798 1 20.3. d7816 1 a7816 1 20.4. d7829 1 a7829 1 20.5. d7845 1 a7845 1 20.6. d7869 1 a7869 1 20.7. d7933 3 a7935 1
    23. Porting pkgsrc
    d7937 2 a7938 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d8179 47 a8225 1 Chapter 23. Porting pkgsrc d8229 2 a8230 2
    23.1. Porting pkgsrc to a new operating system
    23.2. Adding support for a new compiler
    d8239 1 a8239 1 23.1. Porting pkgsrc to a new operating system d8290 1 a8290 1 23.2. Adding support for a new compiler d8694 1 a8694 1
    D.1. Targets
    d8698 2 a8699 4

    This section contains information on editing the pkgsrc guide itself.

    d8702 12 a8713 28 D.1. Targets

    The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files are created from it:

    d637 4 a640 2
    5.3. Developer/advanced settings
    5.4. Selecting Build Options
    d1321 2 a1322 2

    Please note the use of GNU binutils on Solaris is not supported.

    d1622 1 a1622 1 — in particular, look for the MASTER_SORT, d1777 4 a1780 2
    5.3. Developer/advanced settings
    5.4. Selecting Build Options
    d1842 1 a1842 1 — it is an internal definition which refers to the d1864 20 a1883 1 5.3. Developer/advanced settings d1929 1 a1929 1 5.4. Selecting Build Options d2324 1 a2324 1 e. g. for sysutils/aperture):

    d2566 9 a2574 5
  • pkgsrc-bugs: All bug reports in category "pkg" sent with send-pr(1) appear here. Please do not report your bugs here directly; use one of the other mailing lists. discussed.

  • a2583 17
  • pkgsrc-users: This is a general purpose list for most issues regarding pkgsrc, regardless of platform, e.g. soliciting user help for pkgsrc configuration, unexpected build failures, using particular packages, upgrading pkgsrc installations, questions regarding the pkgsrc release branches, etc. General announcements or proposals for changes that impact the pkgsrc user community, e.g. major infrastructure changes, new features, package removals, etc., may also be posted.

  • tech-pkg: This is a list for technical discussions related to pkgsrc development, e.g. soliciting feedback for changes to pkgsrc infrastructure, proposed new features, questions related to porting pkgsrc to a new platform, advice for maintaining a package, patches that affect many packages, help requests moved from pkgsrc-users when an infrastructure bug is found, etc.

  • d2960 5 d3063 11 a3073 11
    17.1.1. How to pull in variables from /etc/mk.conf
    17.1.2. Where to install documentation
    17.1.3. Restricted packages
    17.1.4. Handling dependencies
    17.1.5. Handling conflicts with other packages
    17.1.6. Packages that cannot or should not be built
    17.1.7. Packages which should not be deleted, once installed
    17.1.8. Handling packages with security problems
    17.1.9. How to handle compiler bugs
    17.1.10. How to handle incrementing versions when fixing an existing package
    17.1.11. Portability of packages
    a3086 7
    17.4.1. Compiling C and C++ code conditionally
    17.5. Package specific actions
    17.5.1. User interaction
    17.5.2. Handling licenses
    17.6. Fixing problems in the install phase
    d3088 23 a3110 15
    17.6.1. Installing score files
    17.6.2. Packages containing perl scripts
    17.6.3. Packages with hardcoded paths to other interpreters
    17.6.4. Packages installing perl modules
    17.6.5. Packages installing info files
    17.6.6. Packages installing man pages
    17.6.7. Packages installing GConf2 data files
    17.6.8. Packages installing scrollkeeper data files
    17.6.9. Packages installing X11 fonts
    17.6.10. Packages installing GTK2 modules
    17.6.11. Packages installing SGML or XML data
    17.6.12. Packages installing extensions to the MIME database
    17.6.13. Packages using intltool
    17.6.14. Packages installing startup scripts
    17.6.15. Packages installing TeX modules
    d3112 1 a3112 1
    17.7. Feedback to the author
    d3223 5 d3425 1 a3425 1 Section 17.6.5, “Packages installing info files”.

  • d3528 3 d3562 46 d3610 1 d3701 1 a3701 1

    No rule without exception—the .for d4453 1 a4453 1 See Section 17.1.4, “Handling dependencies” for d5065 1 a5065 1 "Deprecated variable PKG_OPTIONS.wibble2 used, use ${PKG_OPTIONS_VAR instead." d5104 3 a5106 3 PKG_OPTIONS.pkgbase. Do not set it to PKG_OPTIONS.${PKGBASE}, since PKGBASE is set after PKG_OPTIONS_VAR is used.

    d5271 5 a5275 1 “${LOCALBASE}”.

    d5648 2 a5649 2 the beginning of the install phase. If this variable is set, d5655 3 a5657 1 the package's author.

    d6016 11 a6026 11
    17.1.1. How to pull in variables from /etc/mk.conf
    17.1.2. Where to install documentation
    17.1.3. Restricted packages
    17.1.4. Handling dependencies
    17.1.5. Handling conflicts with other packages
    17.1.6. Packages that cannot or should not be built
    17.1.7. Packages which should not be deleted, once installed
    17.1.8. Handling packages with security problems
    17.1.9. How to handle compiler bugs
    17.1.10. How to handle incrementing versions when fixing an existing package
    17.1.11. Portability of packages
    a6039 7
    17.4.1. Compiling C and C++ code conditionally
    17.5. Package specific actions
    17.5.1. User interaction
    17.5.2. Handling licenses
    17.6. Fixing problems in the install phase
    d6041 23 a6063 15
    17.6.1. Installing score files
    17.6.2. Packages containing perl scripts
    17.6.3. Packages with hardcoded paths to other interpreters
    17.6.4. Packages installing perl modules
    17.6.5. Packages installing info files
    17.6.6. Packages installing man pages
    17.6.7. Packages installing GConf2 data files
    17.6.8. Packages installing scrollkeeper data files
    17.6.9. Packages installing X11 fonts
    17.6.10. Packages installing GTK2 modules
    17.6.11. Packages installing SGML or XML data
    17.6.12. Packages installing extensions to the MIME database
    17.6.13. Packages using intltool
    17.6.14. Packages installing startup scripts
    17.6.15. Packages installing TeX modules
    d6065 1 a6065 1
    17.7. Feedback to the author
    d6073 48 a6120 16 17.1.1. How to pull in variables from /etc/mk.conf

    The problem with package-defined variables that can be overridden via MAKECONF or /etc/mk.conf is that make(1) expands a variable as it is used, but evaluates preprocessor-like statements (.if, .ifdef and .ifndef) as they are read. So, to use any variable (which may be set in /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be included before that .if* statement.

    Rather than having a number of ad-hoc ways of including /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

    d6122 1 a6122 5 .include "../../mk/bsd.prefs.mk" .if defined(USE_MENUS) # ... .endif d6124 1 a6124 4

    If you wish to set the CFLAGS variable in /etc/mk.conf, please make sure to use:

    d6126 1 a6126 1 CFLAGS+= -your -flags a6127 7

    Using CFLAGS= (i.e. without the “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    d6131 69 a6199 5 17.1.2. Where to install documentation

    Documentation should be installed into ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME} (the latter includes the version number of the package).

    d6203 1 a6203 1 17.1.3. Restricted packages d6251 1 a6251 1 17.1.4. Handling dependencies d6360 1 a6360 1 vulnerabilities file. See Section 17.1.8, “Handling packages with security problems” for more d6395 1 a6395 1 17.1.5. Handling conflicts with other packages d6423 1 a6423 1 17.1.6. Packages that cannot or should not be built d6443 1 a6443 1 17.1.7. Packages which should not be deleted, once installed d6454 1 a6454 1 17.1.8. Handling packages with security problems d6470 1 a6470 16 17.1.9. How to handle compiler bugs

    Some source files trigger bugs in the compiler, based on combinations of compiler version and architecture and almost always relation to optimisation being enabled. Common symptoms are gcc internal errors or never finishing compiling a file.

    Typically, a workaround involves testing the MACHINE_ARCH and compiler version, disabling optimisation for that file/MACHINE_ARCH/compiler combination, and documenting it in pkgsrc/doc/HACKS. See that file for a number of examples!

    17.1.10. How to handle incrementing versions when fixing an existing package

    d6490 20 a6509 17

    17.1.11. Portability of packages

    One appealing feature of pkgsrc is that it runs on many different platforms. As a result, it is important to ensure, where possible, that packages in pkgsrc are portable. There are some particular details you should pay attention to while working on pkgsrc.

    17.1.11.1. ${INSTALL}, ${INSTALL_DATA_DIR}, ...

    The BSD-compatible install supplied with some operating systems will not perform more than one operation at a time. As such, you should call “${INSTALL}”, etc. like this:

        ${INSTALL_DATA_DIR} ${PREFIX}/dir1
        ${INSTALL_DATA_DIR} ${PREFIX}/dir2
    d6511 2
    a6512 1
    
    d6844 78 d6925 1 a6925 1 17.5. Package specific actions
    d6928 5 a6932 12 17.5.1. User interaction

    Occasionally, packages require interaction from the user, and this can be in a number of ways:

    • help in fetching the distfiles

    • help to configure the package before it is built

    • help during the build process

    • help during the installation of a package

    The INTERACTIVE_STAGE definition is provided to notify the pkgsrc mechanism of an interactive stage which will be needed, and this should be set in the package's Makefile, e.g.:

    d6934 2 a6935 5 INTERACTIVE_STAGE= build

    Multiple interactive stages can be specified:

        INTERACTIVE_STAGE=      configure install
    d6937 4
    d6944 5
    a6948 69
    17.5.2. Handling licenses
    

    A package may be covered by a license which the user has or has not agreed to accept. For these cases, pkgsrc contains a mechanism to note that a package is covered by a particular license, and the package cannot be built unless the user has accepted the license. (Installation of binary packages are not currently subject to this mechanism.) Packages with licenses that are either Open Source according to the Open Source Initiative or Free according to the Free Software Foundation will not be marked with a license tag. Packages with licenses that have not been determined to meet either definition will be marked with a license tag referring to the license. This will prevent building unless pkgsrc is informed that the license is acceptable, and enables displaying the license.

    The license tag mechanism is intended to address copyright-related issues surrounding building, installing and using a package, and not to address redistribution issues (see RESTRICTED and NO_SRC_ON_FTP, etc.). However, the above definition of licenses for which tags are not needed implies that packages with redistribution restrictions should have tags.

    Denoting that a package is covered by a particular license is done by placing the license in pkgsrc/licenses and setting the LICENSE variable to a string identifying the license, e.g. in graphics/xv:

        LICENSE=        xv-license
    

    When trying to build, the user will get a notice that the package is covered by a license which has not been accepted:

        % make
        ===> xv-3.10anb9 has an unacceptable license: xv-license.
        ===>     To view the license, enter "/usr/bin/make show-license".
        ===>     To indicate acceptance, add this line to your /etc/mk.conf:
        ===>     ACCEPTABLE_LICENSES+=xv-license
        *** Error code 1
    

    The license can be viewed with make show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

        ACCEPTABLE_LICENSES+=xv-license
    

    When adding a package with a new license, the license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/defaults/mk.conf.

    The use of LICENSE=shareware, LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to denote acceptance of the license for a single package without accepting the same license text for another package. In particular, this can be inappropriate when e.g. one accepts a particular license to indicate to pkgsrc that a fee has been paid.

    a6949 4

    17.6. Fixing problems in the install phase

    d6952 1 a6952 1 17.6.1. Installing score files
    d6973 1 a6973 1 17.6.2. Packages containing perl scripts d6983 1 a6983 1 17.6.3. Packages with hardcoded paths to other interpreters d7006 1 a7006 1 17.6.4. Packages installing perl modules d7035 1 a7035 1 17.6.5. Packages installing info files d7082 1 a7082 1 17.6.6. Packages installing man pages d7124 1 a7124 1 17.6.7. Packages installing GConf2 data files d7160 1 a7160 1 17.6.8. Packages installing scrollkeeper data files d7183 1 a7183 1 17.6.9. Packages installing X11 fonts d7200 1 a7200 1 17.6.10. Packages installing GTK2 modules d7237 1 a7237 1 17.6.11. Packages installing SGML or XML data d7267 1 a7267 1 17.6.12. Packages installing extensions to the MIME database d7298 1 a7298 1 17.6.13. Packages using intltool d7311 1 a7311 1 17.6.14. Packages installing startup scripts d7322 1 a7322 1 17.6.15. Packages installing TeX modules d7361 1 a7361 1 17.7. Feedback to the author d7656 1 a7656 1
    20.1. What is the difference between d7660 1 a7660 1
    20.2. What is the difference between d7664 1 a7664 1
    20.3. What is the difference between d7668 1 a7668 1
    20.4. What is the difference between d7673 1 a7673 1
    20.5. Why does make show-var d7677 8 d7691 1 a7691 1 20.1. d7707 1 a7707 1 20.2. d7725 1 a7725 1 20.3. d7743 1 a7743 1 20.4. d7756 1 a7756 1 20.5. d7770 49 d7843 2 a7844 1
    21.2. Designing interfaces for Makefile fragments
    d7846 2 a7847 2
    21.2.1. Procedures with parameters
    21.2.2. Actions taken on behalf of parameters
    d7879 2 a7880 1
    21.2. Designing interfaces for Makefile fragments
    d7882 2 a7883 2
    21.2.1. Procedures with parameters
    21.2.2. Actions taken on behalf of parameters
    d7946 10 a7955 1 21.2. Designing interfaces for Makefile fragments d7962 1 a7962 1 21.2.1. Procedures with parameters d7965 2 a7966 2 procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all d7996 1 a7996 1 21.2.2. Actions taken on behalf of parameters @ 1.76 log @regen, this time with valid HTML. @ text @d38 1 a38 1

    $NetBSD: pkgsrc.xml,v 1.18 2006/05/19 22:05:09 rillig Exp $

    d155 2 a156 1
    8. Package components - files, directories and contents
    d158 162 a319 163
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    9. Programming in Makefiles
    9.1. Makefile variables
    9.1.1. Naming conventions
    9.2. Code snippets
    9.2.1. Adding things to a list
    9.2.2. Converting an internal list into an external list
    9.2.3. Passing variables to a shell command
    9.2.4. Quoting guideline
    9.2.5. Workaround for a bug in BSD Make
    10. PLIST issues
    10.1. RCS ID
    10.2. Semi-automatic PLIST generation
    10.3. Tweaking output of make print-PLIST
    10.4. Variable substitution in PLIST
    10.5. Man page compression
    10.6. Changing PLIST source with PLIST_SRC
    10.7. Platform-specific and differing PLISTs
    10.8. Sharing directories between packages
    11. Buildlink methodology
    11.1. Converting packages to use buildlink3
    11.2. Writing buildlink3.mk files
    11.2.1. Anatomy of a buildlink3.mk file
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    11.3. Writing builtin.mk files
    11.3.1. Anatomy of a builtin.mk file
    11.3.2. Global preferences for native or pkgsrc software
    12. The pkginstall framework
    12.1. Files and directories outside the installation prefix
    12.1.1. Directory manipulation
    12.1.2. File manipulation
    12.2. Configuration files
    12.2.1. How PKG_SYSCONFDIR is set
    12.2.2. Telling the software where configuration files are
    12.2.3. Patching installations
    12.2.4. Disabling handling of configuration files
    12.3. System startup scripts
    12.3.1. Disabling handling of system startup scripts
    12.4. System users and groups
    12.5. System shells
    12.5.1. Disabling shell registration
    12.6. Fonts
    12.6.1. Disabling automatic update of the fonts databases
    13. Options handling
    13.1. Global default options
    13.2. Converting packages to use bsd.options.mk
    13.3. Option Names
    14. The build process
    14.1. Introduction
    14.2. Program location
    14.3. Directories used during the build process
    14.4. Running a phase
    14.5. The fetch phase
    14.6. The checksum phase
    14.7. The extract phase
    14.8. The patch phase
    14.9. The tools phase
    14.10. The wrapper phase
    14.11. The configure phase
    14.12. The build phase
    14.13. The test phase
    14.14. The install phase
    14.15. The package phase
    14.16. Other helpful targets
    15. Tools needed for building or running
    15.1. Tools for pkgsrc builds
    15.2. Tools needed by packages
    15.3. Tools provided by platforms
    16. Making your package work
    16.1. General operation
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    16.3. Configuration gotchas
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    16.6. Feedback to the author
    17. Debugging
    18. Submitting and Committing
    18.1. Submitting binary packages
    18.2. Submitting source packages (for non-NetBSD-developers)
    18.3. General notes when adding, updating, or removing packages
    18.4. Committing: Importing a package into CVS
    18.5. Updating a package to a newer version
    18.6. Moving a package in pkgsrc
    d321 1 a321 1
    19. Frequently Asked Questions
    d325 1 a325 1
    20. Design of the pkgsrc infrastructure
    d327 1 a327 1
    20.1. Variable evaluation
    d329 2 a330 2
    20.1.1. At load time
    20.1.2. At runtime
    d332 1 a332 1
    20.2. Designing interfaces for Makefile fragments
    d334 2 a335 2
    20.2.1. Procedures with parameters
    20.2.2. Actions taken on behalf of parameters
    d338 1 a338 1
    21. Regression tests
    d340 3 a342 3
    21.1. The regression tests framework
    21.2. Running the regression tests
    21.3. Adding a new regression test
    d344 2 a345 2
    21.3.1. Overridable functions
    21.3.2. Helper functions
    d348 1 a348 1
    22. Porting pkgsrc
    d350 2 a351 2
    22.1. Porting pkgsrc to a new operating system
    22.2. Adding support for a new compiler
    d773 7 a779 4

    Updating from tar file cannot detect or preserve any changes you have done to your local copy of pkgsrc. Therefore updating via CVS is strongly recommended.

    d792 1 a792 5 -dP. The “-q” option tells cvs to only report those files that have changed. The “-d” option fetches new packages (which is curiously not done by default), and the “-P” option removes empty directories after everything has been updated.

    d1819 1 a1819 1 See Section 8.3, “patches/*” for more d1994 1 a1994 1 See Chapter 18, Submitting and Committing for information on how to submit d2000 1 a2000 1

    See Section 14.16, “Other helpful targets”.

    d2909 6 d2918 2 a2919 1
    8. Package components - files, directories and contents
    d2921 162 a3082 163
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    9. Programming in Makefiles
    9.1. Makefile variables
    9.1.1. Naming conventions
    9.2. Code snippets
    9.2.1. Adding things to a list
    9.2.2. Converting an internal list into an external list
    9.2.3. Passing variables to a shell command
    9.2.4. Quoting guideline
    9.2.5. Workaround for a bug in BSD Make
    10. PLIST issues
    10.1. RCS ID
    10.2. Semi-automatic PLIST generation
    10.3. Tweaking output of make print-PLIST
    10.4. Variable substitution in PLIST
    10.5. Man page compression
    10.6. Changing PLIST source with PLIST_SRC
    10.7. Platform-specific and differing PLISTs
    10.8. Sharing directories between packages
    11. Buildlink methodology
    11.1. Converting packages to use buildlink3
    11.2. Writing buildlink3.mk files
    11.2.1. Anatomy of a buildlink3.mk file
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    11.3. Writing builtin.mk files
    11.3.1. Anatomy of a builtin.mk file
    11.3.2. Global preferences for native or pkgsrc software
    12. The pkginstall framework
    12.1. Files and directories outside the installation prefix
    12.1.1. Directory manipulation
    12.1.2. File manipulation
    12.2. Configuration files
    12.2.1. How PKG_SYSCONFDIR is set
    12.2.2. Telling the software where configuration files are
    12.2.3. Patching installations
    12.2.4. Disabling handling of configuration files
    12.3. System startup scripts
    12.3.1. Disabling handling of system startup scripts
    12.4. System users and groups
    12.5. System shells
    12.5.1. Disabling shell registration
    12.6. Fonts
    12.6.1. Disabling automatic update of the fonts databases
    13. Options handling
    13.1. Global default options
    13.2. Converting packages to use bsd.options.mk
    13.3. Option Names
    14. The build process
    14.1. Introduction
    14.2. Program location
    14.3. Directories used during the build process
    14.4. Running a phase
    14.5. The fetch phase
    14.6. The checksum phase
    14.7. The extract phase
    14.8. The patch phase
    14.9. The tools phase
    14.10. The wrapper phase
    14.11. The configure phase
    14.12. The build phase
    14.13. The test phase
    14.14. The install phase
    14.15. The package phase
    14.16. Other helpful targets
    15. Tools needed for building or running
    15.1. Tools for pkgsrc builds
    15.2. Tools needed by packages
    15.3. Tools provided by platforms
    16. Making your package work
    16.1. General operation
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    16.3. Configuration gotchas
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    16.6. Feedback to the author
    17. Debugging
    18. Submitting and Committing
    18.1. Submitting binary packages
    18.2. Submitting source packages (for non-NetBSD-developers)
    18.3. General notes when adding, updating, or removing packages
    18.4. Committing: Importing a package into CVS
    18.5. Updating a package to a newer version
    18.6. Moving a package in pkgsrc
    d3084 1 a3084 1
    19. Frequently Asked Questions
    d3087 85 d3174 1 a3174 1 Chapter 8. Package components - files, directories and contents d3178 7 a3184 7
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    d3192 1 a3192 1 8.1. Makefile d3380 1 a3380 1 Section 16.5.7, “Packages installing info files”.

    d3385 1 a3385 1 8.2. distinfo d3395 1 a3395 1 patches directory (see Section 8.3, “patches/*”).

    d3407 1 a3407 1 8.3. patches/* d3440 1 a3440 1 command, see Section 8.2, “distinfo.

    d3464 1 a3464 1 8.4. Other mandatory files d3477 1 a3477 1 See Chapter 10, PLIST issues for more information.

    d3482 1 a3482 1 8.5. Optional files d3518 1 a3518 1 8.6. work* d3531 1 a3531 1 8.7. files/* d3543 1 a3543 1 Chapter 9. Programming in Makefiles d3547 9 a3555 9
    9.1. Makefile variables
    9.1.1. Naming conventions
    9.2. Code snippets
    9.2.1. Adding things to a list
    9.2.2. Converting an internal list into an external list
    9.2.3. Passing variables to a shell command
    9.2.4. Quoting guideline
    9.2.5. Workaround for a bug in BSD Make
    d3575 1 a3575 1 9.1. Makefile variables d3633 1 a3633 1 9.1.1. Naming conventions d3650 1 a3650 1 9.2. Code snippets d3656 1 a3656 1 9.2.1. Adding things to a list d3677 1 a3677 1 9.2.2. Converting an internal list into an external list d3692 1 a3692 1 9.2.3. Passing variables to a shell command d3729 1 a3729 1 9.2.4. Quoting guideline d3812 1 a3812 1 9.2.5. Workaround for a bug in BSD Make d3828 1 a3828 1 Chapter 10. PLIST issues d3832 8 a3839 8
    10.1. RCS ID
    10.2. Semi-automatic PLIST generation
    10.3. Tweaking output of make print-PLIST
    10.4. Variable substitution in PLIST
    10.5. Man page compression
    10.6. Changing PLIST source with PLIST_SRC
    10.7. Platform-specific and differing PLISTs
    10.8. Sharing directories between packages
    d3852 1 a3852 1 10.1. RCS ID d3863 1 a3863 1 10.2. Semi-automatic PLIST generation d3866 1 a3866 1 was extracted. See Section 14.16, “Other helpful targets” for d3871 1 a3871 1 10.3. Tweaking output of make print-PLIST d3873 1 a3873 1 Section 10.8, “Sharing directories between packages”, you may have noticed that d3899 1 a3899 1 10.4. Variable substitution in PLIST d3945 1 a3945 1 following way, similar to MESSAGE_SUBST (see Section 8.5, “Optional files”):

    d3954 1 a3954 1 10.5. Man page compression d3967 1 a3967 1 10.6. Changing PLIST source with PLIST_SRC d3976 1 a3976 1 10.7. Platform-specific and differing PLISTs d3990 1 a3990 1 10.8. Sharing directories between packages d4047 1 a4047 1 Chapter 11. Buildlink methodology d4051 2 a4052 2
    11.1. Converting packages to use buildlink3
    11.2. Writing buildlink3.mk files
    d4054 2 a4055 2
    11.2.1. Anatomy of a buildlink3.mk file
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d4057 1 a4057 1
    11.3. Writing builtin.mk files
    d4059 2 a4060 2
    11.3.1. Anatomy of a builtin.mk file
    11.3.2. Global preferences for native or pkgsrc software
    d4088 1 a4088 1 11.1. Converting packages to use buildlink3 d4164 1 a4164 1 11.2. Writing buildlink3.mk files d4182 1 a4182 1 11.2.1. Anatomy of a buildlink3.mk file d4332 1 a4332 1 11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files d4358 1 a4358 1 See Section 16.1.4, “Handling dependencies” for d4378 1 a4378 1 11.3. Writing builtin.mk files d4408 1 a4408 1 11.3.1. Anatomy of a builtin.mk file d4500 1 a4500 1 11.3.2. Global preferences for native or pkgsrc software d4535 1 a4535 1 Chapter 12. The pkginstall framework d4539 1 a4539 1
    12.1. Files and directories outside the installation prefix
    d4541 2 a4542 2
    12.1.1. Directory manipulation
    12.1.2. File manipulation
    d4544 1 a4544 1
    12.2. Configuration files
    d4546 12 a4557 12
    12.2.1. How PKG_SYSCONFDIR is set
    12.2.2. Telling the software where configuration files are
    12.2.3. Patching installations
    12.2.4. Disabling handling of configuration files
    12.3. System startup scripts
    12.3.1. Disabling handling of system startup scripts
    12.4. System users and groups
    12.5. System shells
    12.5.1. Disabling shell registration
    12.6. Fonts
    12.6.1. Disabling automatic update of the fonts databases
    d4583 1 a4583 1 12.1. Files and directories outside the installation prefix d4602 1 a4602 1 12.1.1. Directory manipulation d4629 1 a4629 1 12.1.2. File manipulation d4669 1 a4669 1 12.2. Configuration files d4681 1 a4681 1 12.2.1. How PKG_SYSCONFDIR is set d4729 1 a4729 1 automatically added to OWN_DIRS. See Section 12.1.1, “Directory manipulation” what this means.

    d4733 1 a4733 1 12.2.2. Telling the software where configuration files are d4750 1 a4750 1 12.2.3. Patching installations d4767 1 a4767 1 used. Check out Section 12.1.2, “File manipulation” for information d4779 1 a4779 1 12.2.4. Disabling handling of configuration files d4787 1 a4787 1 12.3. System startup scripts d4790 1 a4790 1 installation prefix. Therefore, the same rules described in Section 12.1, “Files and directories outside the installation prefix” apply, and the same solutions d4825 1 a4825 1 12.3.1. Disabling handling of system startup scripts d4835 1 a4835 1 12.4. System users and groups d4872 1 a4872 1 12.5. System shells d4887 1 a4887 1 12.5.1. Disabling shell registration d4895 1 a4895 1 12.6. Fonts d4913 1 a4913 1 12.6.1. Disabling automatic update of the fonts databases d4922 1 a4922 1 Chapter 13. Options handling d4926 3 a4928 3
    13.1. Global default options
    13.2. Converting packages to use bsd.options.mk
    13.3. Option Names
    d4940 1 a4940 1 13.1. Global default options d4948 1 a4948 1 13.2. Converting packages to use bsd.options.mk d4988 2 a4989 2 . include "../../databases/openldap/buildlink3.mk" CONFIGURE_ARGS+= --enable-ldap=${BUILDLINK_PREFIX.openldap} d5086 1 a5086 1 13.3. Option Names d5111 1 a5111 1 Chapter 14. The build process d5115 16 a5130 16
    14.1. Introduction
    14.2. Program location
    14.3. Directories used during the build process
    14.4. Running a phase
    14.5. The fetch phase
    14.6. The checksum phase
    14.7. The extract phase
    14.8. The patch phase
    14.9. The tools phase
    14.10. The wrapper phase
    14.11. The configure phase
    14.12. The build phase
    14.13. The test phase
    14.14. The install phase
    14.15. The package phase
    14.16. Other helpful targets
    d5135 1 a5135 1 14.1. Introduction d5155 1 a5155 1 14.2. Program location d5166 1 a5166 1 these files are encoded. See Section 8.3, “patches/*” and Section 16.3.1, “Shared libraries - libtool” for more details.

    d5244 1 a5244 1 14.3. Directories used during the build process d5278 1 a5278 1 14.4. Running a phase d5288 1 a5288 1 14.5. The fetch phase d5310 1 a5310 1 14.6. The checksum phase d5320 1 a5320 1 14.7. The extract phase d5358 1 a5358 1 14.8. The patch phase d5368 1 a5368 1 See Section 8.3, “patches/*” for more details.

    d5377 1 a5377 1 14.9. The tools phase d5379 1 a5379 1 Chapter 15, Tools needed for building or running. d5384 1 a5384 1 14.10. The wrapper phase d5424 1 a5424 1 14.11. The configure phase d5459 1 a5459 1 14.12. The build phase d5485 1 a5485 1 14.13. The test phase d5490 1 a5490 1 14.14. The install phase d5561 1 a5561 1 14.15. The package phase d5566 1 a5566 1 14.16. Other helpful targets d5767 1 a5767 1

    See Section 10.3, “Tweaking output of make print-PLIST for more d5804 1 a5804 1 Chapter 15. Tools needed for building or running d5808 3 a5810 3

    15.1. Tools for pkgsrc builds
    15.2. Tools needed by packages
    15.3. Tools provided by platforms
    d5844 1 a5844 1 15.1. Tools for pkgsrc builds d5861 1 a5861 1 15.2. Tools needed by packages d5890 1 a5890 1 15.3. Tools provided by platforms d5909 1 a5909 1 Chapter 16. Making your package work d5913 1 a5913 1
    16.1. General operation
    d5915 47 a5961 48
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    16.3. Configuration gotchas
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    d5963 1 a5963 1
    16.6. Feedback to the author
    d5968 1 a5968 1 16.1. General operation d5971 1 a5971 1 16.1.1. How to pull in variables from /etc/mk.conf d6011 1 a6011 1 16.1.2. Where to install documentation d6019 1 a6019 1 16.1.3. Restricted packages d6067 1 a6067 1 16.1.4. Handling dependencies d6075 1 a6075 1 variables named above. See Chapter 11, Buildlink methodology for more d6176 1 a6176 1 vulnerabilities file. See Section 16.1.8, “Handling packages with security problems” for more d6211 1 a6211 1 16.1.5. Handling conflicts with other packages d6239 1 a6239 1 16.1.6. Packages that cannot or should not be built d6259 1 a6259 1 16.1.7. Packages which should not be deleted, once installed d6270 1 a6270 1 16.1.8. Handling packages with security problems d6286 1 a6286 1 16.1.9. How to handle compiler bugs d6301 1 a6301 1 16.1.10. How to handle incrementing versions when fixing an existing package d6324 1 a6324 1 16.1.11. Portability of packages d6331 1 a6331 1 16.1.11.1. ${INSTALL}, ${INSTALL_DATA_DIR}, ... d6344 1 a6344 1 16.2. Possible downloading issues d6347 1 a6347 1 16.2.1. Packages whose distfiles aren't available for plain downloading d6369 1 a6369 1 16.2.2. How to handle modified distfiles with the 'old' name d6394 1 a6394 1 16.3. Configuration gotchas d6397 1 a6397 1 16.3.1. Shared libraries - libtool d6519 1 a6519 1 16.3.2. Using libtool on GNU packages that already support libtool d6559 1 a6559 1 16.3.3. GNU Autoconf/Automake d6601 27 a6627 22 16.4. Building the package

    16.4.1. CPP defines

    Sometimes you need to compile different code depending on the target platform. The C preprocessor has a set of predefined macros that can be queried by using #ifdef FOO or #if defined(FOO). Among these macros are usually ones that describe the target CPU and operating system. Depending of which of the macros are defined, you can write code that uses features unique to a specific platform. Generally you should rather use the GNU autotools (automake, autoconf, etc.) to check for specific features (like the existence of a header file, a function or a library), but sometimes this is not possible or desired.

    In that case you can use the predefined macros below to configure your code to the platform it runs on. Almost every operating system, hardware architecture and compiler has its own macro. For example, if the macros __GNUC__, __i386__ and __NetBSD__ are all defined, you know that you are using NetBSD on an i386 compatible CPU, and your compiler is GCC.

    d6630 1 a6630 1 16.4.1.1. CPP defines for operating systems
    d6641 2 a6642 2

    If this distinction is not fine enough, you can also use the following defines.

    d6655 1 a6655 1 16.4.1.2. CPP defines for CPUs d6664 1 a6664 1 16.4.1.3. CPP defines for compilers a6670 43

    16.4.2. Examples of CPP defines for some platforms

    The list of the CPP identification macros for hardware and operating system may depend on the compiler that is used. The following list contains some examples that may help you to choose the right ones. For example, if you want to conditionally compile code on Solaris, don't use __sun__, as the SunPro compiler does not define it. Use __sun instead.

    GCC 3.3.3 + SuSE Linux 9.1 + i386

    __ELF__, __gnu_linux__, __i386, __i386__, __linux, __linux__, __unix, __unix__, i386, linux, unix.

    GCC 2.95 + NetBSD 1.6.2 + i386

    __ELF__, __NetBSD__, __i386, __i386__, i386.

    GCC 3.3.3 + NetBSD 2.0 + i386

    __ELF__, __NetBSD__, __i386, __i386__, i386.

    GCC 4 + Solaris 8 + SPARC

    __ELF__, __sparc, __sparc__, __sun, __sun__, __SVR4, __svr4__, __unix, __unix__, sparc, sun, unix.

    SunPro 5.7 + Solaris 8 + SPARC

    __SVR4, __sparc, __sun, __unix, sparc, sun, unix.

    16.4.3. Getting a list of CPP defines

    If your system uses the GNU C Compiler, you can get a list of symbols that are defined by default, e.g. to identify the platform, with the following command:

        gcc -E -dM - < /dev/null 
    

    On other systems you may get the list by using the system's syscall trace utility (ktrace, truss, strace) to have a look which arguments are passed to the actual compiler.

    d6674 1 a6674 1 16.5. Package specific actions d6677 1 a6677 1 16.5.1. User interaction d6699 1 a6699 1 16.5.2. Handling licenses d6769 4 d6775 1 a6775 1 16.5.3. Installing score files d6796 1 a6796 1 16.5.4. Packages containing perl scripts d6806 1 a6806 1 16.5.5. Packages with hardcoded paths to other interpreters d6829 1 a6829 1 16.5.6. Packages installing perl modules d6858 1 a6858 1 16.5.7. Packages installing info files d6905 1 a6905 1 16.5.8. Packages installing man pages d6941 1 a6941 1

    See Section 10.5, “Man page compression” for d6947 1 a6947 1 16.5.9. Packages installing GConf2 data files d6983 1 a6983 1 16.5.10. Packages installing scrollkeeper data files d7006 1 a7006 1 16.5.11. Packages installing X11 fonts d7023 1 a7023 1 16.5.12. Packages installing GTK2 modules d7060 1 a7060 1 16.5.13. Packages installing SGML or XML data d7090 1 a7090 1 16.5.14. Packages installing extensions to the MIME database d7121 1 a7121 1 16.5.15. Packages using intltool d7134 1 a7134 1 16.5.16. Packages installing startup scripts d7145 1 a7145 1 16.5.17. Packages installing TeX modules d7184 1 a7184 1 16.6. Feedback to the author d7197 1 a7197 1 Chapter 17. Debugging d7237 1 a7237 1 see Section 8.1, “Makefile.

    d7278 1 a7278 1 see Chapter 18, Submitting and Committing.

    d7283 1 a7283 1 Chapter 18. Submitting and Committing d7287 6 a7292 6
    18.1. Submitting binary packages
    18.2. Submitting source packages (for non-NetBSD-developers)
    18.3. General notes when adding, updating, or removing packages
    18.4. Committing: Importing a package into CVS
    18.5. Updating a package to a newer version
    18.6. Moving a package in pkgsrc
    d7297 1 a7297 1 18.1. Submitting binary packages d7308 1 a7308 1 18.2. Submitting source packages (for non-NetBSD-developers) d7310 1 a7310 1 runs well; see Chapter 17, Debugging and the rest of this d7328 1 a7328 1 18.3. General notes when adding, updating, or removing packages d7361 1 a7361 1 18.4. Committing: Importing a package into CVS d7395 1 a7395 1 18.5. Updating a package to a newer version d7429 1 a7429 1 18.6. Moving a package in pkgsrc d7471 1 a7471 1 Chapter 19. Frequently Asked Questions d7479 1 a7479 1
    19.1. What is the difference between d7483 1 a7483 1
    19.2. What is the difference between d7487 1 a7487 1
    19.3. What is the difference between d7491 1 a7491 1
    19.4. What is the difference between d7496 1 a7496 1
    19.5. Why does make show-var d7506 1 a7506 1 19.1. d7522 1 a7522 1 19.2. d7540 1 a7540 1 19.3. d7558 1 a7558 1 19.4. d7571 1 a7571 1 19.5. d7602 1 a7602 1
    20. Design of the pkgsrc infrastructure
    d7604 1 a7604 1
    20.1. Variable evaluation
    d7606 2 a7607 2
    20.1.1. At load time
    20.1.2. At runtime
    d7609 1 a7609 1
    20.2. Designing interfaces for Makefile fragments
    d7611 2 a7612 2
    20.2.1. Procedures with parameters
    20.2.2. Actions taken on behalf of parameters
    d7615 1 a7615 1
    21. Regression tests
    d7617 3 a7619 3
    21.1. The regression tests framework
    21.2. Running the regression tests
    21.3. Adding a new regression test
    d7621 2 a7622 2
    21.3.1. Overridable functions
    21.3.2. Helper functions
    d7625 1 a7625 1
    22. Porting pkgsrc
    d7627 2 a7628 2
    22.1. Porting pkgsrc to a new operating system
    22.2. Adding support for a new compiler
    d7635 1 a7635 1 Chapter 20. Design of the pkgsrc infrastructure d7639 1 a7639 1
    20.1. Variable evaluation
    d7641 2 a7642 2
    20.1.1. At load time
    20.1.2. At runtime
    d7644 1 a7644 1
    20.2. Designing interfaces for Makefile fragments
    d7646 2 a7647 2
    20.2.1. Procedures with parameters
    20.2.2. Actions taken on behalf of parameters
    d7657 1 a7657 1 20.1. Variable evaluation d7660 1 a7660 1 20.1.1. At load time d7702 1 a7702 1 20.1.2. At runtime d7710 1 a7710 1 20.2. Designing interfaces for Makefile fragments d7717 1 a7717 1 20.2.1. Procedures with parameters d7751 1 a7751 1 20.2.2. Actions taken on behalf of parameters d7764 1 a7764 1 Chapter 21. Regression tests d7768 3 a7770 3
    21.1. The regression tests framework
    21.2. Running the regression tests
    21.3. Adding a new regression test
    d7772 2 a7773 2
    21.3.1. Overridable functions
    21.3.2. Helper functions
    d7787 1 a7787 1 21.1. The regression tests framework d7792 1 a7792 1 21.2. Running the regression tests d7800 1 a7800 1 21.3. Adding a new regression test d7809 1 a7809 1 21.3.1. Overridable functions d7836 1 a7836 1 21.3.2. Helper functions d7859 1 a7859 1 Chapter 22. Porting pkgsrc d7863 2 a7864 2
    22.1. Porting pkgsrc to a new operating system
    22.2. Adding support for a new compiler
    d7873 1 a7873 1 22.1. Porting pkgsrc to a new operating system d7924 1 a7924 1 22.2. Adding support for a new compiler d8020 1 a8020 1 PLIST (see Chapter 8, Package components - files, directories and contents) @ 1.75 log @regen. @ text @d38 2 a39 1

    $NetBSD: pkgsrc.xml,v 1.18 2006/05/19 22:05:09 rillig Exp $

    d157 2 a158 2
    8.1. Makefile
    8.2. distinfo
    d162 2 a163 2
    8.6. work*
    8.7. files/*
    d165 1 a165 1
    9. Programming in Makefiles
    d167 1 a167 1
    9.1. Makefile variables
    d181 1 a181 1
    10.2. Semi-automatic PLIST generation
    d192 1 a192 1
    11.2. Writing buildlink3.mk files
    d195 1 a195 1
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d197 1 a197 1
    11.3. Writing builtin.mk files
    d199 1 a199 1
    11.3.1. Anatomy of a builtin.mk file
    d228 1 a228 1
    13.2. Converting packages to use bsd.options.mk
    d370 11 a380 1
    C. Layout of the FTP server's package archive
    d420 1 a420 1
  • www/apache - The Apache d422 1 a422 1

  • www/mozilla - The Mozilla d424 1 a424 1

  • meta-pkgs/gnome - The GNOME d426 1 a426 1

  • meta-pkgs/kde3 - The K d481 1 a481 1 /usr/pkgsrc.

  • d498 1 a498 1 /usr/pkgsrc/distfiles.

    d507 1 a507 1 and stuffed together in a single .tgz d511 1 a511 1 /usr/pkgsrc/packages; there is also d543 1 a543 1 that live in the mk/ directory and below. d676 2 a677 2 /usr/pkgsrc for the “package sources” and /usr/pkg for the d703 1 a703 1 described in detail in Appendix C, Layout of the FTP server's package archive.

    d705 1 a705 1 current and is called pkgsrc.tar.gz. d708 1 a708 1 directory 2006Q1 and is also called pkgsrc.tar.gz.

    d711 1 a711 1 /usr. Then, run tar xfz d728 2 a729 2 /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply d752 1 a752 1 /usr. In that directory you run the d757 1 a757 1 pkgsrc with all the pkgsrc files in d865 1 a865 1 /usr/pkg for the d867 1 a867 1 and /var/db/pkg for the package database d875 1 a875 1 into /usr/pkg.

    d922 1 a922 1

    By default, /usr will be on your root file d924 2 a925 2 prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS d932 1 a932 1 mount on /Volumes/<volume name> when the d963 1 a963 1 /var/db/pkg. It is therefore d965 1 a965 1 /usr/pkgdb) by d976 2 a977 2

  • An example /etc/mk.conf file will be placed in /etc/mk.conf.example file d1107 1 a1107 1 audio/esound package does d1110 1 a1110 1 emulators/cygwin_esound package d1164 1 a1164 1 /etc/mk.conf. Particularly, make sure that you do not d1166 1 a1166 1 /etc/compiler.defaults!

    d1173 1 a1173 1 setup. Please see pkgsrc/mk/defaults/mk.conf and, of d1183 1 a1183 1 in /etc/mk.conf. Otherwise, pkgsrc will assume you d1185 1 a1185 1 bootstrap should create an appropriate mk.conf.example by d1190 1 a1190 1 /usr/freeware/bin), and (important) pass the d1221 1 a1221 1 in /etc/mk.conf:

    d1226 1 a1226 1 /opt/intel_cc_80, which d1229 1 a1229 1 /etc/mk.conf:

    d1251 1 a1251 1 /var/db/pkg. It is therefore d1253 1 a1253 1 /usr/pkgdb) by d1265 2 a1266 2

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file d1268 1 a1268 1 /etc/mk.conf d1300 2 a1301 2 /usr/ccs/{bin,lib} and e.g. /usr/pkg/{bin,sbin}.

    d1309 1 a1309 1 lang/gcc or install a binary gcc d1329 1 a1329 1 optionally, CPP in /etc/mk.conf, d1343 1 a1343 1 (bmake), the CFLAGS d1346 1 a1346 1 called cc64 and put it somewhere in the d1361 1 a1361 1 add the following lines to your mk.conf d1371 1 a1371 1 CC64, too.)

    d1374 1 a1374 1 the following lines to your mk.conf d1394 1 a1394 1 /bin/ksh crashes with a segmentation fault. d1396 2 a1397 2 scripts, for example by installing shells/bash and adding the following lines to your mk.conf:

    d1402 1 a1402 1

    Then, rebuild the devel/libtool-base package.

    d1442 1 a1442 1 / directory:

    d1456 1 a1456 1 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/bootstrap-pkgsrc/ d1460 1 a1460 1 http://public.enst.fr/pkgsrc/packages/bootstrap-pkgsrc/ d1466 2 a1467 2 /usr/pkg for the base directory, and /var/db/pkg for the database of installed d1478 1 a1478 1 ftp.NetBSD.org and its mirrors, in the d1480 1 a1480 1 /pub/NetBSD/packages/OSVERSION/ARCH/. d1500 1 a1500 1 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/ d1504 1 a1504 1 http://public.enst.fr/pkgsrc/packages/ d1512 1 a1512 1 until you find a directory called All. This d1516 1 a1516 1 ../All. This directory layout is used for d1539 2 a1540 2

    Additionally to the All directory there exists a vulnerable directory to d1543 1 a1543 1 use these packages, add the vulnerable d1545 1 a1545 1 security/audit-packages regularly, d1549 1 a1549 1 ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/vulnerable d1553 1 a1553 1 /usr/pkg/bin and /usr/pkg/sbin in your d1596 1 a1596 1 pkgsrc/mk/defaults/mk.conf to find some examples d1603 1 a1603 1 /etc/mk.conf file, d1608 1 a1608 1 /usr/pkgsrc/distfiles.

    d1636 1 a1636 1 /usr/pkg. Should this not conform to your tastes, d1639 1 a1639 1 your packages tree. So, to use /usr/local, set d1644 2 a1645 2 add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the d1649 1 a1649 1

    Some packages look in /etc/mk.conf to alter some d1651 1 a1651 1 pkgsrc/mk/defaults/mk.conf to d1654 1 a1654 1 can be set in /etc/mk.conf to d1689 1 a1689 1 See pkgsrc/mk/defaults/mk.conf for more details.

    d1697 1 a1697 1 /usr/pkg, and that you should not d1761 1 a1761 1 is by setting them in /etc/mk.conf. d1766 1 a1766 1 /usr/pkg. Do not mix binary packages d1771 1 a1771 1 ${LOCALBASE}/cross.

  • d1774 1 a1774 1 /usr/X11R6.

    d1778 1 a1778 1 ${PKGSRCDIR}/distfiles.

    d1785 2 a1786 2 ${MASTER_SITES} or ${PATCH_SITES} respectively. d1788 1 a1788 1 ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}/ d1790 1 a1790 1 ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/.

    d1805 1 a1805 1 ${PKGSRCDIR}/packages.

    d1809 1 a1809 1 linked to from ${WRKDIR} (see below). d1811 2 a1812 2 architectures, then ${PKGSRCDIR} can be NFS-mounted while ${WRKOBJDIR} d1826 1 a1826 1 the mk.conf file used by a package's d1829 2 a1830 2 /dev/null to avoid picking up settings used by builds in /usr/src.

    d1872 1 a1872 1 (which use the security/audit-packages d1904 1 a1904 1 /etc/mk.conf to select which options to enable d1935 1 a1935 1 /etc/mk.conf for each option. To ease transition d1940 1 a1940 1 update /etc/mk.conf to use the options framework d1991 1 a1991 1 /usr/pkgsrc/packages, in the form of a d1993 1 a1993 1 continuation of the above misc/figlet example.

    d2022 2 a2023 2 6.3.1.1. build.conf

    The build.conf file is the main d2028 3 a2030 3 pkgsrc/mk/bulk/build.conf-example. To use it, copy build.conf-example to build.conf and edit it, following the d2037 2 a2038 2 /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for d2055 1 a2055 1 mk/bulk/bsd.bulk-pkg.mk. The most useful d2082 1 a2082 1 (pkgsrc/mk/bsd.pkg.check.mk) can be set to d2084 1 a2084 1 matches the PLIST.

    d2086 1 a2086 1 (pkgsrc/mk/bsd.pkg.check.mk) can be set to d2094 1 a2094 1 6.3.1.3. pre-build.local d2098 2 a2099 2 pre-build.local exists in /usr/pkgsrc/mk/bulk, it will be executed d2102 1 a2102 1 pre-build.local is to have the line:

    d2112 1 a2112 1

    As /usr/pkg will be completely d2115 1 a2115 1 /usr/local/bin (and adjust your login d2117 1 a2117 1 pkg_add(1) from /etc/rc.local, so d2123 1 a2123 1 starting it from rc.local:

    d2147 1 a2147 1 /usr/local, etc. then become root and type:

    d2157 1 a2157 1 FTP in the build.conf d2182 2 a2183 2 specified in the build.conf file named broken.html, a short version d2189 2 a2190 2 in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if d2235 1 a2235 1 e.g. /usr/sandbox. This can be done by d2240 1 a2240 1 pkgsrc/mk/bulk/mksandbox which will set d2242 1 a2242 1 create a script called sandbox in the d2252 1 a2252 1 /usr/src/etc, be sure the following items d2261 1 a2261 1

    /dev/*

    d2265 1 a2265 1

    /etc/resolv.conf (for security/smtpd and mail):

    d2273 1 a2273 1

    /etc/localtime (for security/smtpd):

    d2277 2 a2278 2

    /usr/src (system sources, e. g. for sysutils/aperture):

    d2283 1 a2283 1

    Create /var/db/pkg (not part of default install):

    d2287 1 a2287 1

    Create /usr/pkg (not part of default install):

    d2292 1 a2292 1 /usr/sandbox/usr/pkgsrc:

    d2300 2 a2301 2 /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere d2304 2 a2305 2
  • Edit /etc/mk.conf, see Section 6.3.1.2, “/etc/mk.conf”.

  • Adjust mk/bulk/build.conf to suit your needs.

  • d2315 1 a2315 1 /usr/sandbox/usr/pkgsrc/packages d2322 1 a2322 1 pkgsrc, the pkgsrc/mk/bulk/build script d2325 1 a2325 1 in /etc/mk.conf, the variables

    d2353 1 a2353 1 mk/bulk/build.conf. d2359 1 a2359 1 mk/bulk/build.conf. This will prompt you for d2364 1 a2364 1 set properly in your mk/bulk/build.conf d2375 1 a2375 1 A separate upload directory is used d2381 1 a2381 1 Please note that /pub/NetBSD/packages is d2384 1 a2384 1 into /pub/pkgsrc. d2397 2 a2398 2 Now take the output of id-dsa.pub and append it to your ~/.ssh/authorized_keys d2421 1 a2421 1 vulnerable subdirectory. d2431 1 a2431 1 upload directory to have them accessible d2447 1 a2447 1 pkgtools/cdpack package provides d2460 2 a2461 2 /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to d2468 1 a2468 1 (COPYRIGHT, README, d2481 2 a2482 2

    Each image will contain README, COPYING, and bin/myscript d2564 1 a2564 1 pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    d2569 1 a2569 1

    The pkgsrc/pkgtools directory pkgtools contains d2575 1 a2575 1

    d3104 2 a3105 2 controlled by the package's Makefile. The Makefile describes various things about d3109 1 a3109 1

    A package Makefile contains several d3198 1 a3198 1 ${DISTNAME}${EXTRACT_SUFX}. Should only d3208 1 a3208 1 .tar.gz. d3222 2 a3223 2 the names end with .gz or .Z.

    d3255 1 a3255 1 default is ${WRKDIR}/${DISTNAME}, which d3264 2 a3265 2 ${WRKDIR}, for example WRKSRC= ${WRKDIR}/${DISTNAME}/unix. See lang/tcl and x11/tk for other examples.

    d3268 1 a3268 1 default, its value is work. If you want d3274 1 a3274 1 /etc/mk.conf, the first component of the d3277 2 a3278 2 attached, which might look like work.i386 or work.sparc.

    d3286 2 a3287 2 bsd.pkg.mk.

  • Replace /usr/local with d3295 2 a3296 2 8.2. distinfo

    The distinfo file contains the message d3303 1 a3303 1

    The distinfo file also contains the d3305 2 a3306 2 patches directory (see Section 8.3, “patches/*”).

    To regenerate the distinfo file, use the d3310 2 a3311 2 the platform, for example www/navigator). These are kept in the same distinfo file and care should be taken when d3324 3 a3326 3 patch-aa is applied before patch-ab, etc.

    The patch-* files should be in d3339 1 a3339 1 pkgtools/pkgdiff package to avoid d3343 1 a3343 1 before you edit them to filename.orig, e.g. with d3350 1 a3350 1 command, see Section 8.2, “distinfo.

    d3361 1 a3361 1 $LOCALPATCHES d3365 1 a3365 1 $LOCALPATCHES/$PKGPATH). For d3367 2 a3368 2 pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All d3376 1 a3376 1
    DESCR
    d3381 1 a3381 1
    PLIST
    d3394 1 a3394 1
    INSTALL
    d3400 1 a3400 1 PLIST. See d3402 1 a3402 1
    DEINSTALL
    d3409 1 a3409 1
    MESSAGE
    d3417 1 a3417 1 Makefile:

    d3422 1 a3422 1 MESSAGE.

    d3428 1 a3428 1 8.6. work* d3435 2 a3436 2 The default is ${.CURDIR}/work or ${.CURDIR}/work.${MACHINE_ARCH} d3441 1 a3441 1 8.7. files/* d3447 1 a3447 1 /dev/null and use the patch mechanism to manage d3453 1 a3453 1 Chapter 9. Programming in Makefiles d3457 1 a3457 1
    9.1. Makefile variables
    d3469 1 a3469 1

    Pkgsrc consists of many Makefile fragments, d3474 1 a3474 1

    The basic ingredients for Makefile d3481 1 a3481 1 Makefiles, including the pitfalls that come along d3485 2 a3486 2 9.1. Makefile variables

    Makefile variables contain strings that d3491 1 a3491 1 Makefile, the hash character ``#'' and the d3548 1 a3548 1 Makefiles.

  • d3731 1 a3731 1 package regress/make-quoting, testcase d3743 1 a3743 1
    10.2. Semi-automatic PLIST generation
    d3752 1 a3752 1

    The PLIST file contains a package's d3754 1 a3754 1 the package (relative to the ${PREFIX} d3758 1 a3758 1 dealing with the PLIST file (or files, see d3765 1 a3765 1 PLIST file you write: d3773 1 a3773 1 10.2. Semi-automatic PLIST generation d3795 1 a3795 1 libdata/foo directory removed from the d3841 1 a3841 1 PLIST: d3851 1 a3851 1 default, please look in bsd.pkg.mk (and d3866 1 a3866 1 MANZ is set (in bsd.own.mk), d3868 1 a3868 1 PLIST file, the suffix “.gz” is d3872 2 a3873 2 PLIST file is done on a copy of it, not PLIST itself.

    d3878 1 a3878 1

    To use one or more files as source for the PLIST used d3891 5 a3895 5

  • PLIST.common

  • PLIST.${OPSYS}

  • PLIST.${MACHINE_ARCH}

  • PLIST.${OPSYS}-${MACHINE_ARCH}

  • PLIST.common_end

  • d3920 1 a3920 1 textproc/scrollkeeper, which d3922 1 a3922 1 share/omf.

    d3939 1 a3939 1 share/applications, it should have the d3949 1 a3949 1 $X11BASE, it must not depend on the d3951 1 a3951 1 pkgsrc (in particular, mk/dirs.mk) will take d3962 1 a3962 1
    11.2. Writing buildlink3.mk files
    d3965 1 a3965 1
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    d3967 1 a3967 1
    11.3. Writing builtin.mk files
    d3969 1 a3969 1
    11.3.1. Anatomy of a builtin.mk file
    d3992 2 a3993 2 e.g. /usr/include, /usr/lib, etc., are always searched -- buildlink3 is d4006 1 a4006 1 ${WRKDIR}/.work.log to see if the d4011 1 a4011 1 ${BUILDLINK_DIR} looks for files d4015 1 a4015 1 buildlink3.mk files that you list in a d4036 2 a4037 2

    There are several buildlink3.mk files in pkgsrc/mk d4040 1 a4040 1

  • bdb.buildlink3.mk chooses either d4044 1 a4044 1

  • curses.buildlink3.mk: If the system d4046 2 a4047 2 to install the devel/ncurses package.

  • krb5.buildlink3.mk uses the value d4051 1 a4051 1

  • motif.buildlink3.mk checks d4053 3 a4055 3 Motif installation or adds a dependency on x11/lesstif or x11/openmotif.

  • oss.buildlink3.mk defines several d4058 1 a4058 1

  • pgsql.buildlink3.mk will accept d4061 1 a4061 1

  • pthread.buildlink3.mk uses the value of d4063 2 a4064 2 a dependency on devel/pth as needed.

  • xaw.buildlink3.mk uses the value of d4068 1 a4068 1

    The comments in those buildlink3.mk d4074 2 a4075 2 11.2. Writing buildlink3.mk files

    A package's buildlink3.mk file is d4078 1 a4078 1 buildlink3.mk file should always provide d4081 1 a4081 1 buildlink3.mk files that it needs to find d4083 2 a4084 2

    To generate an initial buildlink3.mk file for further editing, Rene Hexel's pkgtools/createbuildlink d4087 1 a4087 1 buildlink3.mk files:

    d4094 2 a4095 2 buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d4121 1 a4121 1 buildlink3.mk files and is used to track d4123 1 a4123 1 buildlink3.mk files.

    d4130 1 a4130 1 buildlink3.mk file for d4133 1 a4133 1 packages for which buildlink3.mk files d4135 1 a4135 1 appended to within a buildlink3.mk d4169 1 a4169 1 ${BUILDLINK_PREFIX.pkg} d4185 1 a4185 1 ${BUILDLINK_DIR} and how their names are d4191 1 a4191 1 ${BUILDLINK_PREFIX.pkg} d4193 2 a4194 2 ${BUILDLINK_DIR}, e.g. include/*.h.

  • d4199 1 a4199 1 ${BUILDLINK_PREFIX.pkg}. d4201 2 a4202 2 into ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a d4209 1 a4209 1 +CONTENTS input into a list of files d4211 1 a4211 1 ${BUILDLINK_PREFIX.pkg} d4214 3 a4216 3 outputs the contents of the include and lib directories in the package +CONTENTS, and for pkgviews packages, d4218 1 a4218 1 lib directories. d4229 1 a4229 1 buildlink3.mk needed for d4231 1 a4231 1 Including these buildlink3.mk files d4234 1 a4234 1 ${BUILDLINK_DIR} d4236 1 a4236 1 buildlink3.mk d4242 1 a4242 1 11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files d4253 1 a4253 1 increased and, if they have buildlink3.mk d4288 1 a4288 1 11.3. Writing builtin.mk files d4292 2 a4293 2 Aside from a buildlink3.mk file, these packages should also include a builtin.mk d4309 1 a4309 1 builtin.mk file is included. d4313 1 a4313 1 attention to Makefile coding. d4318 1 a4318 1 11.3.1. Anatomy of a builtin.mk file d4368 1 a4368 1 used internally within the builtin.mk d4376 1 a4376 1 within the builtin.mk file.

    d4380 1 a4380 1 builtin.mk files. The code in this d4390 1 a4390 1 end of the builtin.mk file. Note that d4404 1 a4404 1 ${BUILDLINK_DIR} (via d4436 1 a4436 1 builtin.mk d4494 1 a4494 1

    As you already know, the PLIST file holds a list d4496 1 a4496 1 are relative to the installation prefix (${PREFIX}), d4500 2 a4501 2 ${VARBASE} or ${PKG_SYSCONFDIR}.

    d4508 1 a4508 1 Makefile. The rest of this section describes these d4541 1 a4541 1 because the PLIST forces all files to be inside it. d4597 1 a4597 1 directory. Defaults to ${PREFIX}/etc although it may d4599 1 a4599 1 /etc, /etc/pkg, etc.). d4606 1 a4606 1 Makefile (i.e., it is not user-customizable).

    d4608 1 a4608 1 www/apache2, which places its d4610 1 a4610 1 httpd/ subdirectory of d4633 2 a4634 2 Makefile, the resulting value is ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}.

    d4636 1 a4636 1 ${PKG_SYSCONFBASE}.

    d4638 2 a4639 2

    It is worth mentioning that ${PKG_SYSCONFDIR} is automatically added to OWN_DIRS. See Section 12.1.1, “Directory manipulation” what this means.

    d4663 1 a4663 1 touch the contents of ${PKG_SYSCONFDIR} d4669 2 a4670 2 share/examples/${PKGBASE}/. This way, the PLIST registers them and the administrator always d4675 1 a4675 1 ${PKG_SYSCONFDIR}. To achieve this, the variables d4679 1 a4679 1 mail/mutt package:

    d4706 1 a4706 1
  • Store the script inside ${FILESDIR}, with d4708 2 a4709 2 print/cups package as an example, it has a cupsd.sh in its files directory.

  • d4723 1 a4723 1 substitutions described in the FILES_SUBST d4726 1 a4726 1 hierarchy, ${PREFIX}/share/examples/rc.d/. Note d4728 1 a4728 1 PLIST.

    d4739 1 a4739 1 examples hierarchy, ${PREFIX}/share/examples/rc.d/, no d4761 1 a4761 1 home directory, and defaults to /nonexistent if not d4764 1 a4764 1 shell, and defaults to /sbinno/login if not specified. d4784 1 a4784 1 database, /etc/shells, to make things easier to the d4791 1 a4791 1 following example, taken from shells/zsh:

    d4799 1 a4799 1 the administrator by setting the PKG_REGISTER_SHELLS d4817 1 a4817 1 installation prefix. Consider the following example, taken from fonts/dbz-ttf:

    d4825 1 a4825 1 the administrator by setting the PKG_UPDATE_FONTS_DB d4837 1 a4837 1
    13.2. Converting packages to use bsd.options.mk
    d4842 1 a4842 1 sets of features. bsd.options.mk is a framework d4854 1 a4854 1 This variable should be set in /etc/mk.conf.

    d4858 1 a4858 1 13.2. Converting packages to use bsd.options.mk d4860 1 a4860 1 bsd.options.mk should be used d4862 3 a4864 3 Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    d4948 1 a4948 1 pairs that map legacy /etc/mk.conf variables to d4975 1 a4975 1 including bsd.options.mk. If none of d4983 1 a4983 1

    After the inclusion of bsd.options.mk, the d5011 1 a5011 1 mk/defaults/options.description. Lines have two d5072 1 a5072 1 (/usr/pkg), or CROSSBASE d5096 1 a5096 1 need to include ../../mk/x11.buildlink3.mk d5108 3 a5110 3 its pkg Makefile, you need to look in both ${X11BASE} and ${LOCALBASE}. To force installation of d5112 1 a5112 1 pkgtools/xpkgwedge package d5130 1 a5130 1 pkgsrc/wm/scwm/Makefile:

    d5146 1 a5146 1
  • Within ${PREFIX}, packages should d5148 2 a5149 2 manual pages go into ${PREFIX}/man, not ${PREFIX}/share/man.

  • d5183 1 a5183 1 Makefile.

    d5202 1 a5202 1 local system in /usr/pkgsrc/distfiles. If they d5239 1 a5239 1 mk/scripts/extract, which already knows how d5247 1 a5247 1 mk/scripts/extract.

    d5254 1 a5254 1

    If the extract program doesn't serve d5258 1 a5258 1 ${WRKSRC} directory. During execution of d5272 5 a5276 5 /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) d5361 1 a5361 1

    If the program uses an Imakefile for d5465 1 a5465 1 Makefiles that are under control of d5510 1 a5510 1 pkgsrc/x11/kde, this is likely to remove whole d5535 1 a5535 1 /etc/mk.conf to alter the behaviour of d5586 1 a5586 1 /etc/mk.conf to alter the behaviour of d5603 1 a5603 1

    This target generates a README.html file, which d5605 2 a5606 2 www/mozilla or www/links. d5612 1 a5612 1 README.html files which pointed to binary packages d5614 1 a5614 1 /usr/packages, set d5620 1 a5620 1

    Use this target to create a file README-all.html d5624 1 a5624 1 pkgsrc/*/README.html files, so be sure to run d5630 1 a5630 1 README.html files, and can be made to refer d5636 1 a5636 1 PATCHFILES, but not patches/*)

    d5658 1 a5658 1 /etc/mk.conf.

    d5663 1 a5663 1 PLIST from a find -newer d5668 1 a5668 1 PLIST. On upgrades, it's useful to d5670 1 a5670 1 existing PLIST file.

    d5674 1 a5674 1 PLIST, as the “find d5701 1 a5701 1
  • None of the package's files (Makefile, d5757 1 a5757 1 bsd.pkg.mk. This includes standard Unix tools, d5804 1 a5804 1 pkgsrc/mk/tools/tools.${OPSYS}.mk which defines d5885 1 a5885 1 /etc/mk.conf is that make(1) expands a d5889 2 a5890 2 /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be d5893 1 a5893 1 /etc/mk.conf, should it exist, or d5895 1 a5895 1 pkgsrc/mk/bsd.prefs.mk file in the package d5906 1 a5906 1 in /etc/mk.conf, please make sure to use: d5917 1 a5917 1 the devel/cpuflags package if d5924 2 a5925 2 ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME} (the d5984 1 a5984 1 dependencies via buildlink3.mk, which is d6010 1 a6010 1 buildlink3.mk file available, use it: d6018 1 a6018 1 itself and there is no buildlink3.mk d6027 1 a6027 1 again there is no buildlink3.mk file d6093 1 a6093 1 buildlink3.mk file, this is specified d6095 1 a6095 1 print/lyx package needs to d6108 1 a6108 1 automatically. See the print/ghostscript package for an example. d6115 1 a6115 1 installs the devel/gettext package. d6118 1 a6118 1 devel/gettext-m4 package.

    d6130 2 a6131 2

    For example, x11/Xaw3d and x11/Xaw-Xpm d6133 1 a6133 1 pkgsrc/x11/Xaw3d/Makefile:

    d6137 1 a6137 1

    and in pkgsrc/x11/Xaw-Xpm/Makefile: d6183 1 a6183 1 localsrc/security/advisories/pkg-vulnerabilities, d6207 1 a6207 1 documenting it in pkgsrc/doc/HACKS. See d6261 1 a6261 1 fetch will call files/getsite.sh d6264 1 a6264 1 it. graphics/ns-cult3d is an d6293 1 a6293 1 including the nbX suffix) or a date stamp d6295 1 a6295 1 Do not forget regenerating the distinfo file d6316 1 a6316 1 devel/libtool pkg d6340 2 a6341 2 .la extension, and the objects are changed to have a .lo d6344 2 a6345 2 .a, .so.major.minor, and ELF symlinks (if d6379 2 a6380 2

    In the PLIST, include only the .la file, the other files will be d6384 1 a6384 1

    When linking shared object (.so) d6389 2 a6390 2

    The PLIST file gets the foo.so entry.

    d6401 1 a6401 1 .la file. e.g.

    d6415 1 a6415 1 .la. e.g.

    d6419 1 a6419 1

    This will install the static .a, d6423 2 a6424 2

  • In your PLIST, include only the .la d6442 1 a6442 1

    If you do not need *.a static d6457 2 a6458 2 libfoo.la, not foo.la

  • d6637 1 a6637 1 this should be set in the package's Makefile, e.g.:

    d6674 1 a6674 1 pkgsrc/licenses and setting the d6677 1 a6677 1 graphics/xv:

    d6696 1 a6696 1 /etc/mk.conf to indicate acceptance of d6702 1 a6702 1 text should be added to pkgsrc/licenses d6707 1 a6707 1 pkgsrc/mk/defaults/mk.conf.

    d6727 1 a6727 1 mk/defaults/mk.conf, control this d6756 1 a6756 1 following definitions in your Makefile (we d6777 1 a6777 1 ../../lang/perl5/module.mk. It provides a d6785 2 a6786 2 PLIST corresponding to the files listed in the installed .packlist file generated by d6799 1 a6799 1 PLIST.

    d6807 2 a6808 2 the package Makefile so that INSTALL and DEINSTALL scripts will be generated to d6815 1 a6815 1 ${PREFIX} where info files are primarily d6819 1 a6819 1 package PLIST; however any split info files d6826 1 a6826 1 variable in the package Makefile. By d6830 1 a6830 1 devel/gtexinfo package will d6836 1 a6836 1 INSTALL script, and it must use the d6853 1 a6853 1 which is /usr/pkg/man by default. d6857 1 a6857 1 /usr/pkg/share/man/ by default. d6865 2 a6866 2

    The PLIST files can just use man/ as the top level directory d6873 1 a6873 1 ./configure d6882 1 a6882 1 Or if the ./configure script uses d6894 2 a6895 2 If a package installs .schemas or .entries files, used by GConf2, d6900 2 a6901 2

  • Include ../../devel/GConf2/schemas.mk instead of its buildlink3.mk file. This d6908 3 a6910 3 .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will d6916 2 a6917 2 your Makefile with a list of all .schemas files installed by the package, if d6920 2 a6921 2 your Makefile with a list of all .entries files installed by the d6930 1 a6930 1 If a package installs .omf files, used by d6936 2 a6937 2 ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This d6943 1 a6943 1 libdata/scrollkeeper directory, as they d6945 1 a6945 1

  • Remove the share/omf directory from d6961 1 a6961 1 fonts.dir is not listed in the PLIST.

    d6974 2 a6975 2 ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of d6991 2 a6992 2
  • libdata/gtk-2.0/gdk-pixbuf.loaders

  • libdata/gtk-2.0/gtk.immodules

  • d6999 1 a6999 1 libdata/gtk-2.0 directory, as they will be d7012 2 a7013 2 ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of d7037 2 a7038 2 installing .xml files inside ${PREFIX}/share/mime/packages, you d7044 2 a7045 2 ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from d7047 1 a7047 1 other buildlink3.mk files). It takes d7052 1 a7052 1 share/mime directory, d7054 1 a7054 1 share/mime/packages. The former are d7059 1 a7059 1
  • Remove any share/mime/* directories d7068 1 a7068 1 ../../textproc/intltool/buildlink3.mk file, d7083 2 a7084 2 /etc/mk.conf. This option will copy the scripts into /etc/rc.d when a package is installed, and d7092 1 a7092 1 the ls-R database of the tree needs to be d7103 3 a7105 3 ../../print/teTeX/module.mk instead of ../../mk/tex.buildlink3.mk. This takes care of rebuilding the ls-R d7121 2 a7122 2

  • Make sure that none of ls-R databases are included in PLIST, as d7149 1 a7149 1 in /etc/mk.conf

  • d7151 1 a7151 1

    Install pkgtools/url2pkg, d7158 2 a7159 2

  • Edit the Makefile as requested.

  • Fill in the DESCR file

  • d7164 1 a7164 1 Makefile.

    d7178 1 a7178 1 from the pkgtools/pkgdiff d7181 2 a7182 2
  • Look at the Makefile, fix if necessary; see Section 8.1, “Makefile.

  • d7184 1 a7184 1

    Generate a PLIST:

    d7190 1 a7190 1

    You usually need to be root to do this. d7194 1 a7194 1 PLIST, add them.

    d7197 1 a7197 1

    Now that the PLIST is OK, d7218 1 a7218 1 pkgtools/pkglint, d7275 1 a7275 1 removals in pkgsrc/doc/CHANGES. It's very d7280 1 a7280 1 pkgsrc/doc/TODO file and remove the entry d7285 1 a7285 1 pkgsrc/doc/CHANGES if it is security d7290 1 a7290 1 CHANGES entries: make d7293 1 a7293 1 usage is to first make sure that your CHANGES d7300 1 a7300 1 in /etc/mk.conf if your local login name is d7302 1 a7302 1 the changes to pkgsrc/doc/CHANGES!

    d7325 1 a7325 1 package to the category's Makefile. d7329 1 a7329 1 DESCR file, so people reading the mailing lists know d7402 2 a7403 2
  • Remove from oldcategory/Makefile.

  • Add to newcategory/Makefile.

  • d7424 1 a7424 1
    19.1. What is the difference between d7428 1 a7428 1
    19.2. What is the difference between d7432 1 a7432 1
    19.3. What is the difference between d7436 1 a7436 1
    19.4. What is the difference between d7441 1 a7441 1
    19.5. Why does make show-var d7451 1 a7451 1 19.1. d7467 1 a7467 1 19.2. d7485 1 a7485 1 19.3. d7498 1 a7498 1 used. See mk/compiler.mk for more d7503 1 a7503 1 19.4. d7516 1 a7516 1 19.5. d7656 1 a7656 1

    Most of the .mk files fall into one d7664 1 a7664 1 the .mk files could be described as d7667 1 a7667 1 variables in Makefiles have global scope d7688 2 a7689 2 mk/bsd.options.mk and mk/buildlink3/bsd.builtin.mk. To express d7703 1 a7703 1 mk/subst.mk.

    d7738 1 a7738 1

    You first need to install the pkgtools/pkg_regress package, which d7741 1 a7741 1 regress category.

    d7746 2 a7747 2

    Every directory in the regress category that contains a file called spec d7823 1 a7823 1

    bootstrap/mods/mk/MyOS.sys.mk
    d7827 1 a7827 1
    mk/bsd.prefs.mk
    d7835 1 a7835 1
    mk/platform/MyOS.mk
    d7840 1 a7840 1
    mk/platform/MyOS.pkg.dist
    d7847 1 a7847 1
    mk/platform/MyOS.x11.dist
    d7850 2 a7851 2 MyOS.x11.dist.

    mk/tools/bootstrap.mk
    d7858 1 a7858 1
    mk/tools/MyOS.mk
    d7865 1 a7865 1 lang/perl5, shells/bash.

    d7943 1 a7943 1 pkgtools/pkglint d7964 2 a7965 2

    Create Makefile, DESCR and PLIST (see Chapter 8, Package components - files, directories and contents) d7981 1 a7981 1 distinfo:

    d8181 85 a8265 77 Appendix C. Layout of the FTP server's package archive

    Layout for precompiled binary packages on ftp.NetBSD.org:

        /pub/NetBSD/packages/
            distfiles/
    
            # Unpacked pkgsrc trees
            pkgsrc-current -> /pub/NetBSD/NetBSD-current/pkgsrc
            pkgsrc-2003Q4 -> N/A
            pkgsrc-2004Q1/pkgsrc
    
            # pkgsrc archives
            pkgsrc-current.tar.gz -> ../NetBSD-current/tar_files/pkgsrc.tar.gz
            pkgsrc-2003Q4.tar.gz -> N/A
            pkgsrc-2004Q1.tar.gz -> N/A
    
            # Per pkgsrc-release/OS-release/arch package archives
            pkgsrc-2003Q4/
                NetBSD-1.6.2/
                    i386/
                        All/
                        archivers/
                            foo -> ../All/foo
                        ...
            pkgsrc-2004Q1/
                NetBSD-1.6.2/
                    i386/
                        All/
                        ...
                NetBSD-2.0/
                    i386/
                        All/
                        ...
                SunOS-5.9/
                    sparc/
                        All/
                        ...
                    x86/
                        All/
                        ...
    
            # Per os-release package archive convenience links
            NetBSD-1.6.2 -> 1.6.2
            1.6.2/
                i386 -> ../pkgsrc-2004Q1/NetBSD-1.6.2/i386
                m68k/
                    All/
                    archivers/
                        foo -> ../All/foo
                    ...
                amiga -> m68k
                atari -> m68k
                ...
    
            2.0 -> NetBSD-2.0       # backward compat, historic
            NetBSD-2.0/
                i386 -> ../pkgsrc-2004Q1/NetBSD-2.0/i386
            SunOS-5.9/
                sparc -> ../pkgsrc-2004Q1/SunOS-5.9/sparc
                x86 -> ../pkgsrc-2004Q1/SunOS-5.9/x86
    

    To create:

    1. Run bulk build, see Section 6.3, “Doing a bulk build of all packages”

    2. Upload /usr/pkgsrc/packages to

          ftp://ftp.NetBSD.org/pub/NetBSD/packages/\
              pkgsrc-2004Q4/\             # pkgsrc-branch
              `uname -s`-`uname -r`/\     # OS & version
              `uname -p`                  # architecture
      
    3. If necessary, create a symlink ln -s `uname -m` `uname -p` (amiga -> m68k, ...)

    d8286 1 a8286 1 pkgsrc/doc/guide/files, and several files are d8291 1 a8291 1 pkgsrc/doc/pkgsrc.txt d8294 1 a8294 1 pkgsrc/doc/pkgsrc.html d8297 1 a8297 1 http://www.NetBSD.org/Documentation/pkgsrc/: d8304 1 a8304 1 http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: d8308 1 a8308 1 http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: d8329 2 a8330 2 pkgsrc/meta-pkgs/netbsd-doc and pkgsrc/meta-pkgs/netbsd-doc-print. d8334 1 a8334 1 pkgsrc/doc/guide/files. d8338 1 a8338 1 pkgsrc/doc/guide to check the XML d8343 1 a8343 1 pkgsrc/doc/guide to build the HTML and d8348 1 a8348 1 the generated files into pkgsrc/doc. @ 1.74 log @regen. @ text @d1 2 a2 1 d4 705 a708 4 d710 2 a711 1941 The pkgsrc guide

    The pkgsrc guide

    Documentation on the NetBSD packages system

    Alistair Crooks

    Hubert Feyrer

    The pkgsrc Developers

    $NetBSD: pkgsrc.xml,v 1.18 2006/05/19 22:05:09 rillig Exp $

    Abstract

    pkgsrc is a centralized package management system for Unix-like operating systems. This guide provides information for users and developers of pkgsrc. It covers installation of binary and source packages, creation of binary and source packages and a high-level overview about the infrastructure.


    Table of Contents

    1. What is pkgsrc?
    1.1. Introduction
    1.2. Overview
    1.3. Terminology
    1.3.1. People involved in pkgsrc
    1.4. Typography
    I. The pkgsrc user's guide
    2. Where to get pkgsrc and how to keep it up-to-date
    2.1. As tar file
    2.2. Via SUP
    2.3. Via CVS
    2.4. Keeping pkgsrc up-to-date via CVS
    3. Using pkgsrc on systems other than NetBSD
    3.1. Bootstrapping pkgsrc
    3.2. Platform-specific notes
    3.2.1. Darwin (Mac OS X)
    3.2.2. FreeBSD
    3.2.3. Interix
    3.2.4. IRIX
    3.2.5. Linux
    3.2.6. OpenBSD
    3.2.7. Solaris
    4. Using pkgsrc
    4.1. Using binary packages
    4.1.1. Finding binary packages
    4.1.2. Installing binary packages
    4.1.3. A word of warning
    4.2. Building packages from source
    4.2.1. Requirements
    4.2.2. Fetching distfiles
    4.2.3. How to build and install
    4.2.4. Selecting the compiler
    5. Configuring pkgsrc
    5.1. General configuration
    5.2. Variables affecting the build process
    5.3. Developer/advanced settings
    5.4. Selecting Build Options
    6. Creating binary packages
    6.1. Building a single binary package
    6.2. Settings for creation of binary packages
    6.3. Doing a bulk build of all packages
    6.3.1. Configuration
    6.3.2. Other environmental considerations
    6.3.3. Operation
    6.3.4. What it does
    6.3.5. Disk space requirements
    6.3.6. Setting up a sandbox for chrooted builds
    6.3.7. Building a partial set of packages
    6.3.8. Uploading results of a bulk build
    6.4. Creating a multiple CD-ROM packages collection
    6.4.1. Example of cdpack
    7. Frequently Asked Questions
    7.1. Are there any mailing lists for pkg-related discussion?
    7.2. Where's the pkgviews documentation?
    7.3. Utilities for package management (pkgtools)
    7.4. How to use pkgsrc as non-root
    7.5. How to resume transfers when fetching distfiles?
    7.6. How can I install/use XFree86 from pkgsrc?
    7.7. How can I install/use X.org from pkgsrc?
    7.8. How to fetch files from behind a firewall
    7.9. How do I tell make fetch to do passive FTP?
    7.10. How to fetch all distfiles at once
    7.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
    7.12. What does “Could not find bsd.own.mk” mean?
    7.13. Using 'sudo' with pkgsrc
    7.14. How do I change the location of configuration files?
    7.15. Automated security checks
    7.16. Why do some packages ignore my CFLAGS?
    II. The pkgsrc developer's guide
    8. Package components - files, directories and contents
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    9. Programming in Makefiles
    9.1. Makefile variables
    9.1.1. Naming conventions
    9.2. Code snippets
    9.2.1. Adding things to a list
    9.2.2. Converting an internal list into an external list
    9.2.3. Passing variables to a shell command
    9.2.4. Quoting guideline
    9.2.5. Workaround for a bug in BSD Make
    10. PLIST issues
    10.1. RCS ID
    10.2. Semi-automatic PLIST generation
    10.3. Tweaking output of make print-PLIST
    10.4. Variable substitution in PLIST
    10.5. Man page compression
    10.6. Changing PLIST source with PLIST_SRC
    10.7. Platform-specific and differing PLISTs
    10.8. Sharing directories between packages
    11. Buildlink methodology
    11.1. Converting packages to use buildlink3
    11.2. Writing buildlink3.mk files
    11.2.1. Anatomy of a buildlink3.mk file
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    11.3. Writing builtin.mk files
    11.3.1. Anatomy of a builtin.mk file
    11.3.2. Global preferences for native or pkgsrc software
    12. The pkginstall framework
    12.1. Files and directories outside the installation prefix
    12.1.1. Directory manipulation
    12.1.2. File manipulation
    12.2. Configuration files
    12.2.1. How PKG_SYSCONFDIR is set
    12.2.2. Telling the software where configuration files are
    12.2.3. Patching installations
    12.2.4. Disabling handling of configuration files
    12.3. System startup scripts
    12.3.1. Disabling handling of system startup scripts
    12.4. System users and groups
    12.5. System shells
    12.5.1. Disabling shell registration
    12.6. Fonts
    12.6.1. Disabling automatic update of the fonts databases
    13. Options handling
    13.1. Global default options
    13.2. Converting packages to use bsd.options.mk
    13.3. Option Names
    14. The build process
    14.1. Introduction
    14.2. Program location
    14.3. Directories used during the build process
    14.4. Running a phase
    14.5. The fetch phase
    14.6. The checksum phase
    14.7. The extract phase
    14.8. The patch phase
    14.9. The tools phase
    14.10. The wrapper phase
    14.11. The configure phase
    14.12. The build phase
    14.13. The test phase
    14.14. The install phase
    14.15. The package phase
    14.16. Other helpful targets
    15. Tools needed for building or running
    15.1. Tools for pkgsrc builds
    15.2. Tools needed by packages
    15.3. Tools provided by platforms
    16. Making your package work
    16.1. General operation
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    16.3. Configuration gotchas
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    16.6. Feedback to the author
    17. Debugging
    18. Submitting and Committing
    18.1. Submitting binary packages
    18.2. Submitting source packages (for non-NetBSD-developers)
    18.3. General notes when adding, updating, or removing packages
    18.4. Committing: Importing a package into CVS
    18.5. Updating a package to a newer version
    18.6. Moving a package in pkgsrc
    19. Frequently Asked Questions
    III. The pkgsrc infrastructure internals
    20. Design of the pkgsrc infrastructure
    20.1. Variable evaluation
    20.1.1. At load time
    20.1.2. At runtime
    20.2. Designing interfaces for Makefile fragments
    20.2.1. Procedures with parameters
    20.2.2. Actions taken on behalf of parameters
    21. Regression tests
    21.1. The regression tests framework
    21.2. Running the regression tests
    21.3. Adding a new regression test
    21.3.1. Overridable functions
    21.3.2. Helper functions
    22. Porting pkgsrc
    22.1. Porting pkgsrc to a new operating system
    22.2. Adding support for a new compiler
    A. A simple example package: bison
    A.1. files
    A.1.1. Makefile
    A.1.2. DESCR
    A.1.3. PLIST
    A.1.4. Checking a package with pkglint
    A.2. Steps for building, installing, packaging
    B. Build logs
    B.1. Building figlet
    B.2. Packaging figlet
    C. Layout of the FTP server's package archive
    D. Editing guidelines for the pkgsrc guide
    D.1. Targets
    D.2. Procedure

    Chapter 1. What is pkgsrc?

    1.1. Introduction

    There is a lot of software freely available for Unix-based systems, which usually runs on NetBSD and other Unix-flavoured systems, too, sometimes with some modifications. The NetBSD Packages Collection (pkgsrc) incorporates any such changes necessary to make that software run, and makes the installation (and de-installation) of the software package easy by means of a single command.

    Once the software has been built, it is manipulated with the pkg_* tools so that installation and de-installation, printing of an inventory of all installed packages and retrieval of one-line comments or more verbose descriptions are all simple.

    pkgsrc currently contains several thousand packages, including:

    ...just to name a few.

    pkgsrc has built-in support for handling varying dependencies, such as pthreads and X11, and extended features such as IPv6 support on a range of platforms.

    pkgsrc was derived from FreeBSD's ports system, and initially developed for NetBSD only. Since then, pkgsrc has grown a lot, and now supports the following platforms:

    1.2. Overview

    This document is divided into three parts. The first, The pkgsrc user's guide, describes how one can use one of the packages in the Package Collection, either by installing a precompiled binary package, or by building one's own copy using the NetBSD package system. The second part, The pkgsrc developer's guide, explains how to prepare a package so it can be easily built by other NetBSD users without knowing about the package's building details. The third part, The pkgsrc infrastructure internals is intended for those who want to understand how pkgsrc is implemented.

    This document is available in various formats: HTML, PDF, PS, TXT.

    1.3. Terminology

    There has been a lot of talk about “ports”, “packages”, etc. so far. Here is a description of all the terminology used within this document.

    Package

    A set of files and building instructions that describe what's necessary to build a certain piece of software using pkgsrc. Packages are traditionally stored under /usr/pkgsrc.

    The NetBSD package system

    This is the former name of “pkgsrc”. It is part of the NetBSD operating system and can be bootstrapped to run on non-NetBSD operating systems as well. It handles building (compiling), installing, and removing of packages.

    Distfile

    This term describes the file or files that are provided by the author of the piece of software to distribute his work. All the changes necessary to build on NetBSD are reflected in the corresponding package. Usually the distfile is in the form of a compressed tar-archive, but other types are possible, too. Distfiles are usually stored below /usr/pkgsrc/distfiles.

    Port

    This is the term used by FreeBSD and OpenBSD people for what we call a package. In NetBSD terminology, “port” refers to a different architecture.

    Precompiled/binary package

    A set of binaries built with pkgsrc from a distfile and stuffed together in a single .tgz file so it can be installed on machines of the same machine architecture without the need to recompile. Packages are usually generated in /usr/pkgsrc/packages; there is also an archive on ftp.NetBSD.org.

    Sometimes, this is referred to by the term “package” too, especially in the context of precompiled packages.

    Program

    The piece of software to be installed which will be constructed from all the files in the distfile by the actions defined in the corresponding package.

    1.3.1. People involved in pkgsrc

    pkgsrc users

    The pkgsrc users are people who use the packages provided by pkgsrc. Typically they are system administrators. The people using the software that is inside the packages (maybe called “end users”) are not covered by the pkgsrc guide.

    There are two kinds of pkgsrc users: Some only want to install pre-built binary packages. Others build the pkgsrc packages from source, either for installing them directly or for building binary packages themselves. For pkgsrc users Part I, “The pkgsrc user's guide” should provide all necessary documentation.

    package maintainers

    A package maintainer creates packages as described in Part II, “The pkgsrc developer's guide”.

    infrastructure developers

    These people are involved in all those files that live in the mk/ directory and below. Only these people should need to read through Part III, “The pkgsrc infrastructure internals”, though others might be curious, too.

    1.4. Typography

    When giving examples for commands, shell prompts are used to show if the command should/can be issued as root, or if “normal” user privileges are sufficient. We use a # for root's shell prompt, and a % for users' shell prompt, assuming they use the C-shell or tcsh.

    Part I. The pkgsrc user's guide

    Table of Contents

    2. Where to get pkgsrc and how to keep it up-to-date
    2.1. As tar file
    2.2. Via SUP
    2.3. Via CVS
    2.4. Keeping pkgsrc up-to-date via CVS
    3. Using pkgsrc on systems other than NetBSD
    3.1. Bootstrapping pkgsrc
    3.2. Platform-specific notes
    3.2.1. Darwin (Mac OS X)
    3.2.2. FreeBSD
    3.2.3. Interix
    3.2.4. IRIX
    3.2.5. Linux
    3.2.6. OpenBSD
    3.2.7. Solaris
    4. Using pkgsrc
    4.1. Using binary packages
    4.1.1. Finding binary packages
    4.1.2. Installing binary packages
    4.1.3. A word of warning
    4.2. Building packages from source
    4.2.1. Requirements
    4.2.2. Fetching distfiles
    4.2.3. How to build and install
    4.2.4. Selecting the compiler
    5. Configuring pkgsrc
    5.1. General configuration
    5.2. Variables affecting the build process
    5.3. Developer/advanced settings
    5.4. Selecting Build Options
    6. Creating binary packages
    6.1. Building a single binary package
    6.2. Settings for creation of binary packages
    6.3. Doing a bulk build of all packages
    6.3.1. Configuration
    6.3.2. Other environmental considerations
    6.3.3. Operation
    6.3.4. What it does
    6.3.5. Disk space requirements
    6.3.6. Setting up a sandbox for chrooted builds
    6.3.7. Building a partial set of packages
    6.3.8. Uploading results of a bulk build
    6.4. Creating a multiple CD-ROM packages collection
    6.4.1. Example of cdpack
    7. Frequently Asked Questions
    7.1. Are there any mailing lists for pkg-related discussion?
    7.2. Where's the pkgviews documentation?
    7.3. Utilities for package management (pkgtools)
    7.4. How to use pkgsrc as non-root
    7.5. How to resume transfers when fetching distfiles?
    7.6. How can I install/use XFree86 from pkgsrc?
    7.7. How can I install/use X.org from pkgsrc?
    7.8. How to fetch files from behind a firewall
    7.9. How do I tell make fetch to do passive FTP?
    7.10. How to fetch all distfiles at once
    7.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
    7.12. What does “Could not find bsd.own.mk” mean?
    7.13. Using 'sudo' with pkgsrc
    7.14. How do I change the location of configuration files?
    7.15. Automated security checks
    7.16. Why do some packages ignore my CFLAGS?

    Chapter 2. Where to get pkgsrc and how to keep it up-to-date

    There are three ways to get pkgsrc. Either as a tar file, via SUP, or via CVS. All three ways are described here.

    2.1. As tar file

    To get pkgsrc going, you need to get the pkgsrc.tar.gz file from ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    2.2. Via SUP

    As an alternative to the tar file, you can get pkgsrc via the Software Update Protocol, SUP. To do so, make sure your supfile has a line

    d714 1
    d716 449
    a1164 10620
              

    in it, see the examples in /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply run sup -v /path/to/your/supfile.

    2.3. Via CVS

    To get pkgsrc via CVS, make sure you have “cvs” installed. To do an initial (full) checkout of pkgsrc, do the following steps:

    % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot
    % setenv CVS_RSH ssh
    % cd /usr
    % cvs checkout -P pkgsrc
    

    This will create the pkgsrc directory in your /usr, and all the package source will be stored under /usr/pkgsrc. To update pkgsrc after the initial checkout, make sure you have CVS_RSH set as above, then do:

    % cd /usr/pkgsrc
    % cvs -q update -dP
    

    Please also note that it is possible to have multiple copies of the pkgsrc hierarchy in use at any one time - all work is done relatively within the pkgsrc tree.

    2.4. Keeping pkgsrc up-to-date via CVS

    If your copy of pkgsrc contains a lot of CVS directories, you can update it using the cvs(1) program. First, cd to the top level directory of pkgsrc. Then run cvs -q update -dP, and you're done.

    If that doesn't work and the file CVS/Root contains the string “:pserver:”, you have to run cvs login once to get known to the NetBSD CVS server. The cvs utility will then ask you for a password. Just enter “anoncvs”. Then try again to update.

    Chapter 3. Using pkgsrc on systems other than NetBSD

    3.1. Bootstrapping pkgsrc

    For operating systems other than NetBSD, we provide a bootstrap kit to build the required tools to use pkgsrc on your platform. Besides support for native NetBSD, pkgsrc and the bootstrap kit have support for the following operating systems:

    • Darwin (Mac OS X)

    • DragonFly BSD

    • FreeBSD

    • Interix (Windows 2000, XP, 2003)

    • IRIX

    • Linux

    • OpenBSD

    • Solaris

    • Tru64 (Digital UNIX/OSF1)

    Support for other platforms is under development.

    Installing the bootstrap kit should be as simple as:

    # env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc
    # cd pkgsrc/bootstrap
    # ./bootstrap
    

    See Chapter 2, Where to get pkgsrc and how to keep it up-to-date for other ways to get pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, and /var/db/pkg for the package database directory where pkgsrc will do its internal bookkeeping. However, these can also be set using command-line arguments.

    Binary packages for the pkgsrc tools and an initial set of packages is available for supported platforms. An up-to-date list of these can be found on www.pkgsrc.org. Note that this only works for privileged builds that install into /usr/pkg.

    Note

    The bootstrap installs a bmake tool. Use this bmake when building via pkgsrc. For examples in this guide, use bmake instead of “make”.

    3.2. Platform-specific notes

    Here are some platform-specific notes you should be aware of.

    3.2.1. Darwin (Mac OS X)

    Darwin 5.x and 6.x are supported. There are two methods of using pkgsrc on Mac OS X, by using a disk image, or a UFS partition.

    Before you start, you will need to download and install the Mac OS X Developer Tools from Apple's Developer Connection. See http://developer.apple.com/macosx/ for details. Also, make sure you install X11 for Mac OS X and the X11 SDK from http://www.apple.com/macosx/x11/download/ if you intend to build packages that use the X11 Window System.

    If you already have a UFS partition, or have a spare partition that you can format as UFS, it is recommended to use that instead of the disk image. It'll be somewhat faster and will mount automatically at boot time, where you must manually mount a disk image.

    Note

    You cannot use a HFS+ file system for pkgsrc, because pkgsrc currently requires the file system to be case-sensitive, and HFS+ is not.

    3.2.1.1. Using a disk image

    Create the disk image:

    # cd pkgsrc/bootstrap
    # ./ufsdiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste
    # ./ufsdiskimage mount ~/Documents/NetBSD
    # sudo chown `id -u`:`id -g` /Volumes/NetBSD
    

    That's it!

    3.2.1.2. Using a UFS partition

    By default, /usr will be on your root file system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS file system. Obviously, another symlink is required if you want to place the package database directory outside the prefix. e.g.

    # ./bootstrap --pkgdbdir /usr/pkg/pkgdb
    

    If you created your partitions at the time of installing Mac OS X and formatted the target partition as UFS, it should automatically mount on /Volumes/<volume name> when the machine boots. If you are (re)formatting a partition as UFS, you need to ensure that the partition map correctly reflects “Apple_UFS” and not “Apple_HFS”.

    The problem is that none of the disk tools will let you touch a disk that is booted from. You can unmount the partition, but even if you newfs it, the partition type will be incorrect and the automounter won't mount it. It can be mounted manually, but it won't appear in Finder.

    You'll need to boot off of the OS X Installation (User) CD. When the Installation program starts, go up to the menu and select Disk Utility. Now, you will be able to select the partition you want to be UFS, and Format it Apple UFS. Quit the Disk Utility, quit the installer which will reboot your machine. The new UFS file system will appear in Finder.

    Be aware that the permissions on the new file system will be writable by root only.

    This note is as of 10.2 (Jaguar) and applies to earlier versions. Hopefully Apple will fix Disk Utility in 10.3 (Panther).

    3.2.2. FreeBSD

    FreeBSD 4.7 and 5.0 have been tested and are supported, other versions may work.

    Care should be taken so that the tools that this kit installs do not conflict with the FreeBSD userland tools. There are several steps:

    1. FreeBSD stores its ports pkg database in /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    2. If you do not intend to use the FreeBSD ports tools, it's probably a good idea to move them out of the way to avoid confusion, e.g.

      # cd /usr/sbin
      # mv pkg_add pkg_add.orig
      # mv pkg_create pkg_create.orig
      # mv pkg_delete pkg_delete.orig
      # mv pkg_info pkg_info.orig
      
    3. An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script.

    3.2.3. Interix

    Interix is a POSIX-compatible subsystem for the Windows NT kernel, providing a Unix-like environment with a tighter kernel integration than available with Cygwin. It is part of the Windows Services for Unix package, available for free for any licensed copy of Windows 2000, XP (not including XP Home), or 2003. SFU can be downloaded from http://www.microsoft.com/windows/sfu/.

    Services for Unix 3.5, current as of this writing, has been tested. 3.0 or 3.1 may work, but are not officially supported. (The main difference in 3.0/3.1 is lack of pthreads.)

    3.2.3.1. When installing Interix/SFU

    At an absolute minimum, the following packages must be installed from the Windows Services for Unix 3.5 distribution in order to use pkgsrc:

    • Utilities -> Base Utilities

    • Interix GNU Components -> (all)

    • Remote Connectivity

    • Interix SDK

    When using pkgsrc on Interix, DO NOT install the Utilities subcomponent "UNIX Perl". That is Perl 5.6 without shared module support, installed to /usr/local, and will only cause confusion. Instead, install Perl 5.8 from pkgsrc (or from a binary package).

    The Remote Connectivity subcomponent "Windows Remote Shell Service" does not need to be installed, but Remote Connectivity itself should be installed in order to have a working inetd.

    During installation you may be asked whether to enable setuid behavior for Interix programs, and whether to make pathnames default to case-sensitive. Setuid should be enabled, and case-sensitivity MUST be enabled. (Without case-sensitivity, a large number of packages including perl will not build.)

    NOTE: Newer Windows service packs change the way binary execution works (via the Data Execution Prevention feature). In order to use pkgsrc and other gcc-compiled binaries reliably, a hotfix containing POSIX.EXE, PSXDLL.DLL, PSXRUN.EXE, and PSXSS.EXE (899522 or newer) must be installed. Hotfixes are available from Microsoft through a support contract; however, a NetBSD developer has made most Interix hotfixes available for personal use from http://www.duh.org/interix/hotfixes.php.

    3.2.3.2. What to do if Interix/SFU is already installed

    If SFU is already installed and you wish to alter these settings to work with pkgsrc, note the following things.

    • To uninstall UNIX Perl, use Add/Remove Programs, select Microsoft Windows Services for UNIX, then click Change. In the installer, choose Add or Remove, then uncheck Utilities->UNIX Perl.

    • To enable case-sensitivity for the file system, run REGEDIT.EXE, and change the following registry key:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel

      Set the DWORD value "obcaseinsensitive" to 0; then reboot.

    • To enable setuid binaries (optional), run REGEDIT.EXE, and change the following registry key:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Services for UNIX

      Set the DWORD value "EnableSetuidBinaries" to 1; then reboot.

    3.2.3.3. Important notes for using pkgsrc

    The package manager (either the pkgsrc "su" user, or the user running "pkg_add") must be a member of the local Administrators group. Such a user must also be used to run the bootstrap. This is slightly relaxed from the normal pkgsrc requirement of "root".

    The package manager should use a umask of 002. "make install" will automatically complain if this is not the case. This ensures that directories written in /var/db/pkg are Administrators-group writeable.

    The popular Interix binary packages from http://www.interopsystems.com/ use an older version of pkgsrc's pkg_* tools. Ideally, these should NOT be used in conjunction with pkgsrc. If you choose to use them at the same time as the pkgsrc packages, ensure that you use the proper pkg_* tools for each type of binary package.

    The TERM setting used for DOS-type console windows (including those invoked by the csh and ksh startup shortcuts) is "interix". Most systems don't have a termcap/terminfo entry for it, but the following .termcap entry provides adequate emulation in most cases:

        interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi:
    

    3.2.3.4. Limitations of the Interix platform

    Though Interix suffices as a familiar and flexible substitute for a full Unix-like platform, it has some drawbacks that should be noted for those desiring to make the most of Interix.

    • X11:

      Interix comes with the standard set of X11R6 client libraries, and can run X11 based applications, but it does not come with an X server. Some options are StarNet X-Win32, Hummingbird Exceed (available in a trimmed version for Interix from Interop Systems as the Interop X Server), and the free X11 server included with Cygwin.

      Also, StarNet Communications has graciously provided a free version of their X-Win32 product that accepts connections only from localhost: X-Win32 LX, recommended by the maintainer of Interix pkgsrc support.

    • X11 acceleration:

      Because Interix runs in a completely different NT subsystem from Win32 applications, it does not currently support various X11 protocol extensions for acceleration (such as MIT-SHM or DGA). Most interactive applications to a local X server will run reasonably fast, but full motion video and other graphics intensive applications may require a faster-than-expected CPU.

    • Audio:

      Interix has no native support for audio output. For audio support, pkgsrc uses the esound client/server audio system on Interix. Unlike on most platforms, the audio/esound package does not contain the esd server component. To output audio via an Interix host, the emulators/cygwin_esound package must also be installed.

    • CD/DVDs, USB, and SCSI:

      Direct device access is not currently supported in Interix, so it is not currently possible to access CD/DVD drives, USB devices, or SCSI devices through non-filesystem means. Among other things, this makes it impossible to use Interix directly for CD/DVD burning.

    • Tape drives:

      Due to the same limitations as for CD-ROMs and SCSI devices, tape drives are also not directly accessible in Interix. However, support is in work to make tape drive access possible by using Cygwin as a bridge (similarly to audio bridged via Cygwin's esound server).

    3.2.3.5. Known issues for pkgsrc on Interix

    It is not necessary, in general, to have a "root" user on the Windows system; any member of the local Administrators group will suffice. However, some packages currently assume that the user named "root" is the privileged user. To accommodate these, you may create such a user; make sure it is in the local group Administrators (or your language equivalent).

    "pkg_add" creates directories of mode 0755, not 0775, in $PKG_DBDIR. For the time being, install packages as the local Administrator (or your language equivalent), or run the following command after installing a package to work around the issue:

    # chmod -R g+w $PKG_DBDIR
    

    3.2.4. IRIX

    You will need a working C compiler, either gcc or SGI's MIPS and MIPSpro compiler (cc/c89). Please set the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can download a gcc tardist file from http://freeware.sgi.com/.

    Please note that you will need IRIX 6.5.17 or higher, as this is the earliest version of IRIX providing support for if_indextoname(3), if_nametoindex(3), etc.

    At this point in time, pkgsrc only supports one ABI at a time. That is, you can not switch between the old 32-bit ABI, the new 32-bit ABI and the 64-bit ABI. If you start out using "abi=n32", that's what all your packages will be built with.

    Therefore, please make sure that you have no conflicting CFLAGS in your environment or the /etc/mk.conf. Particularly, make sure that you do not try to link n32 object files with lib64 or vice versa. Check your /etc/compiler.defaults!

    If you have the actual pkgsrc tree mounted via NFS from a different host, please make sure to set WRKOBJDIR to a local directory, as it appears that IRIX linker occasionally runs into issues when trying to link over a network-mounted file system.

    The bootstrapping process should set all the right options for programs such as imake(1), but you may want to set some options depending on your local setup. Please see pkgsrc/mk/defaults/mk.conf and, of course, your compiler's man pages for details.

    If you are using SGI's MIPSPro compiler, please set

        PKGSRC_COMPILER=        mipspro
    

    in /etc/mk.conf. Otherwise, pkgsrc will assume you are using gcc and may end up passing invalid flags to the compiler. Note that bootstrap should create an appropriate mk.conf.example by default.

    If you have both the MIPSPro compiler chain installed as well as gcc, but want to make sure that MIPRPro is used, please set your PATH to not include the location of gcc (often /usr/freeware/bin), and (important) pass the '--preserve-path' flag.

    3.2.5. Linux

    Some versions of Linux (for example Debian GNU/Linux) need either libtermcap or libcurses (libncurses). Installing the distributions libncurses-dev package (or equivalent) should fix the problem.

    pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++ Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested.

    To bootstrap using icc, assuming the default icc installation directory:

        env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \
                ac_cv___attribute__=yes ./bootstrap
    

    Note

    icc 8.1 needs the `-i-static' argument instead of -static-libcxa.

    icc supports __attribute__, but the GNU configure test uses a nested function, which icc does not support. #undef'ing __attribute__ has the unfortunate side-effect of breaking many of the Linux header files, which cannot be compiled properly without __attribute__. The test must be overridden so that __attribute__ is assumed supported by the compiler.

    After bootstrapping, you should set PKGSRC_COMPILER in /etc/mk.conf:

        PKGSRC_COMPILER=        icc
    

    The default installation directory for icc is /opt/intel_cc_80, which is also the pkgsrc default. If you have installed it into a different directory, set ICCBASE in /etc/mk.conf:

        ICCBASE=                /opt/icc
    

    pkgsrc uses the static linking method of the runtime libraries provided by icc, so binaries can be run on other systems which do not have the shared libraries installed.

    Libtool, however, extracts a list of libraries from the ld(1) command run when linking a C++ shared library and records it, throwing away the -Bstatic and -Bdynamic options interspersed between the libraries. This means that libtool-linked C++ shared libraries will have a runtime dependency on the icc libraries until this is fixed in libtool.

    3.2.6. OpenBSD

    OpenBSD 3.0 and 3.2 are tested and supported.

    Care should be taken so that the tools that this kit installs do not conflict with the OpenBSD userland tools. There are several steps:

    1. OpenBSD stores its ports pkg database in /var/db/pkg. It is therefore recommended that you choose a different location (e.g. /usr/pkgdb) by using the --pkgdbdir option to the bootstrap script.

    2. If you do not intend to use the OpenBSD ports tools, it's probably a good idea to move them out of the way to avoid confusion, e.g.

      # cd /usr/sbin
      # mv pkg_add pkg_add.orig
      # mv pkg_create pkg_create.orig
      # mv pkg_delete pkg_delete.orig
      # mv pkg_info pkg_info.orig
      
    3. An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses /etc/mk.conf as well. You can work around this by enclosing all the pkgsrc-specific parts of the file with:

          .ifdef BSD_PKG_MK
          # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here
          .else
          # OpenBSD stuff
          .endif
      

    3.2.7. Solaris

    Solaris 2.6 through 9 are supported on both x86 and sparc. You will need a working C compiler. Both gcc 2.95.3 and Sun WorkShop 5 have been tested.

    The following packages are required on Solaris 8 for the bootstrap process and to build packages.

    • SUNWsprot

    • SUNWarc

    • SUNWbtool

    • SUNWtoo

    • SUNWlibm

    Please note the use of GNU binutils on Solaris is not supported.

    Whichever compiler you use, please ensure the compiler tools and your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} and e.g. /usr/pkg/{bin,sbin}.

    3.2.7.1. If you are using gcc

    It makes life much simpler if you only use the same gcc consistently for building all packages.

    It is recommended that an external gcc be used only for bootstrapping, then either build gcc from lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    Binary packages of gcc can be found through http://www.sun.com/bigadmin/common/freewareSearch.html.

    3.2.7.2. If you are using Sun WorkShop

    You will need at least the following packages installed (from WorkShop 5.0)

    • SPROcc - Sun WorkShop Compiler C 5.0

    • SPROcpl - Sun WorkShop Compiler C++ 5.0

    • SPROild - Sun WorkShop Incremental Linker

    • SPROlang - Sun WorkShop Compilers common components

    You should set CC, CXX and optionally, CPP in /etc/mk.conf, e.g.:

        CC=     cc
        CXX=    CC
        CPP=    /usr/ccs/lib/cpp
    

    3.2.7.3. Buildling 64-bit binaries with SunPro

    Building 64-bit binaries is a little trickier. First, you need to bootstrap pkgsrc in 64-bit mode. One problem here is that while building one of the programs in the bootstrap kit (bmake), the CFLAGS variable is not honored, even if it is set in the environment. To work around this bug, you can create a simple shell script called cc64 and put it somewhere in the PATH:

        #! /bin/sh
        exec /opt/SUNWspro/bin/cc -xtarget=ultra -xarch=v9 ${1+"$@@"}
    

    Then, pass the definition for CC in the environment of the bootstrap command:

        $ cd bootstrap
        $ CC=cc64 ./bootstrap
    

    After bootstrapping, there are two alternative ways, depending on whether you want to find bugs in packages or get your system ready quickly. If you just want a running system, add the following lines to your mk.conf file:

        CC=                     cc64
        CXX=                    CC64
        PKGSRC_COMPILER=        sunpro
    

    This way, all calls to the compiler will be intercepted by the above wrapper and therefore get the necessary ABI options automatically. (Don't forget to create the shell script CC64, too.)

    To find packages that ignore the user-specified CFLAGS and CXXFLAGS, add the following lines to your mk.conf file:

        CC=                     cc
        CXX=                    CC
        PKGSRC_COMPILER=        sunpro
        CFLAGS=                 -xtarget=ultra -xarch=v9
        CXXFLAGS=               -xtarget=ultra -xarch=v9
        LDFLAGS=                -xtarget=ultra -xarch=v9
    

    Packages that don't use the flags provided in the configuration file will try to build 32-bit binaries and fail during linking. Detecting this is useful to prevent bugs on other platforms where the error would not show up but pass silently.

    3.2.7.4. Common problems

    Sometimes, when using libtool, /bin/ksh crashes with a segmentation fault. The workaround is to use another shell for the configure scripts, for example by installing shells/bash and adding the following lines to your mk.conf:

        CONFIG_SHELL=   ${LOCALBASE}/bin/bash
        WRAPPER_SHELL=  ${LOCALBASE}/bin/bash
    

    Then, rebuild the devel/libtool-base package.

    Chapter 4. Using pkgsrc

    Basically, there are two ways of using pkgsrc. The first is to only install the package tools and to use binary packages that someone else has prepared. This is the “pkg” in pkgsrc. The second way is to install the “src” of pkgsrc, too. Then you are able to build your own packages, and you can still use binary packages from someone else.

    4.1. Using binary packages

    To use binary packages, you need some tools to manage them. On NetBSD, these tools are already installed. On all other operating systems, you need to install them first. For the following platforms, prebuilt versions of the package tools are available and can simply be downloaded and unpacked in the / directory:

    Platform URL
    Solaris 9 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/bootstrap-pkgsrc/
    Solaris 10 http://public.enst.fr/pkgsrc/packages/bootstrap-pkgsrc/

    These prebuilt package tools use /usr/pkg for the base directory, and /var/db/pkg for the database of installed packages. If you cannot use these directories for whatever reasons (maybe because you're not root), you have to build the package tools yourself, which is explained in Section 3.1, “Bootstrapping pkgsrc”.

    4.1.1. Finding binary packages

    To install binary packages, you first need to know from where to get them. You can get them on CD-ROMs, DVDs, or via FTP or HTTP.

    For NetBSD, the binary packages are made available on ftp.NetBSD.org and its mirrors, in the directory /pub/NetBSD/packages/OSVERSION/ARCH/. For OSVERSION, you should insert the output of uname -r, and for ARCH the output of uname -p.

    For some other platforms, binary packages can be found at the following locations:

    Platform URL
    Solaris 9 ftp://ftp0.mh.bbc.co.uk/pub/pkgsrc/packages/
    Solaris 10 http://public.enst.fr/pkgsrc/packages/

    Most of these directories contain the pkgsrc distribution for multiple platforms. Select the appropriate subdirectories, according to your machine architecture and operating system, until you find a directory called All. This directory contains all the binary packages. Further, there are subdirectories for categories that contain symbolic links that point to the actual binary package in ../All. This directory layout is used for all package repositories, no matter if they are accessed via HTTP, FTP, NFS, CD-ROM, or the local filesystem.

    4.1.2. Installing binary packages

    If you have the files on a CD-ROM or downloaded them to your hard disk, you can install them with the following command (be sure to su to root first):

    # pkg_add /path/to/package.tgz
    

    If you have FTP access and you don't want to download the packages via FTP prior to installation, you can do this automatically by giving pkg_add an FTP URL:

    # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All/package.tgz
    

    Note that any prerequisite packages needed to run the package in question will be installed, too, assuming they are present where you install from.

    To save some typing, you can set the PKG_PATH environment variable to a semicolon-separated list of paths (including remote URLs); trailing slashes are not allowed.

    Additionally to the All directory there exists a vulnerable directory to which binary packages with known vulnerabilities are moved, since removing them could cause missing dependencies. To use these packages, add the vulnerable directory to your PKG_PATH. However, you should run security/audit-packages regularly, especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration. An example PKG_PATH would be: ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSVERSION>/<ARCH>/vulnerable Please note that semicolon (';') is a shell meta-character, so you'll probably have to quote it.

    After you've installed packages, be sure to have /usr/pkg/bin and /usr/pkg/sbin in your PATH so you can actually start the just installed program.

    4.1.3. A word of warning

    Please pay very careful attention to the warnings expressed in the pkg_add(1) manual page about the inherent dangers of installing binary packages which you did not create yourself, and the security holes that can be introduced onto your system by indiscriminate adding of such files.

    The same warning of course applies to every package you install from source when you haven't completely read and understood the source code of the package, the compiler that is used to build the package and all the other tools that are involved.

    4.2. Building packages from source

    This assumes that the package is already in pkgsrc. If it is not, see Part II, “The pkgsrc developer's guide” for instructions how to create your own packages.

    4.2.1. Requirements

    To build packages from source on a NetBSD system the “comp” and the “text” distribution sets must be installed. If you want to build X11-related packages the “xbase” and “xcomp” distribution sets are required, too.

    4.2.2. Fetching distfiles

    The first step for building a package is downloading the distfiles (i.e. the unmodified source). If they have not yet been downloaded, pkgsrc will fetch them automatically.

    You can overwrite some of the major distribution sites to fit to sites that are close to your own. Have a look at pkgsrc/mk/defaults/mk.conf to find some examples — in particular, look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY definitions. This may save some of your bandwidth and time.

    You can change these settings either in your shell's environment, or, if you want to keep the settings, by editing the /etc/mk.conf file, and adding the definitions there.

    If you don't have a permanent Internet connection and you want to know which files to download, make fetch-list will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles.

    4.2.3. How to build and install

    Assuming that the distfile has been fetched (see previous section), become root and change into the relevant directory and run make.

    Note

    If using bootstrap or pkgsrc on a non-NetBSD system, use the pkgsrc bmake command instead of “make” in the examples in this guide.

    For example, type

    % cd misc/figlet
    % make
    

    at the shell prompt to build the various components of the package, and

    # make install
    

    to install the various components into the correct places on your system. Installing the package on your system requires you to be root. However, pkgsrc has a just-in-time-su feature, which allows you to only become root for the actual installation step

    Taking the figlet utility as an example, we can install it on our system by building as shown in Appendix B, Build logs.

    The program is installed under the default root of the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your environment, and it will use that value as the root of your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your environment. Please note that you should use a directory which is dedicated to packages and not shared with other programs (i.e., do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent possible conflicts between programs and other files installed by the package system and whatever else may have been installed there.

    Some packages look in /etc/mk.conf to alter some configuration options at build time. Have a look at pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in /etc/mk.conf to save having to remember to set them each time you want to use pkgsrc.

    Occasionally, people want to “look under the covers” to see what is going on when a package is building or being installed. This may be for debugging purposes, or out of simple curiosity. A number of utility values have been added to help with this.

    1. If you invoke the make(1) command with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

      make patch PKG_DEBUG_LEVEL=2
      

      will show all the commands that are invoked, up to and including the “patch” stage.

    2. If you want to know the value of a certain make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the make(1) variable LOCALBASE:

      % make show-var VARNAME=LOCALBASE
      /usr/pkg
      %
                
      

    If you want to install a binary package that you've either created yourself (see next section), that you put into pkgsrc/packages manually or that is located on a remote FTP server, you can use the "bin-install" target. This target will install a binary package - if available - via pkg_add(1), else do a make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITES, which defaults to ftp.NetBSD.org. Any flags that should be added to pkg_add(1) can be put into BIN_INSTALL_FLAGS. See pkgsrc/mk/defaults/mk.conf for more details.

    A final word of warning: If you set up a system that has a non-standard setting for LOCALBASE, be sure to set that before any packages are installed, as you can not use several directories for the same purpose. Doing so will result in pkgsrc not being able to properly detect your installed packages, and fail miserably. Note also that precompiled binary packages are usually built with the default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

    4.2.4. Selecting the compiler

    By default, pkgsrc will use GCC to build packages. This may be overridden by setting the following variables in /etc/mk.conf:

    PKGSRC_COMPILER:

    This is a list of values specifying the chain of compilers to invoke when building packages. Valid values are:

    • distcc: distributed C/C++ (chainable)

    • ccache: compiler cache (chainable)

    • gcc: GNU C/C++ Compiler

    • mipspro: Silicon Graphics, Inc. MIPSpro (n32/n64)

    • mipspro: Silicon Graphics, Inc. MIPSpro (o32)

    • sunpro: Sun Microsystems, Inc. WorkShip/Forte/Sun ONE Studio

    The default is “gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This variable should always be terminated with a value for a real compiler.

    GCC_REQD:

    This specifies the minimum version of GCC to use when building packages. If the system GCC doesn't satisfy this requirement, then pkgsrc will build and install one of the GCC packages to use instead.

    Chapter 5. Configuring pkgsrc

    5.1. General configuration

    In this section, you can find some variables that apply to all pkgsrc packages. The preferred method of setting these variables is by setting them in /etc/mk.conf.

    • LOCALBASE: Where packages will be installed. The default is /usr/pkg. Do not mix binary packages with different LOCALBASEs!

    • CROSSBASE: Where “cross” category packages will be installed. The default is ${LOCALBASE}/cross.

    • X11BASE: Where X11 is installed on the system. The default is /usr/X11R6.

    • DISTDIR: Where to store the downloaded copies of the original source distributions used for building pkgsrc packages. The default is ${PKGSRCDIR}/distfiles.

    • MASTER_SITE_OVERRIDE: If set, override the packages' MASTER_SITES with this value.

    • MASTER_SITE_BACKUP: Backup location(s) for distribution files and patch files if not found locally or in ${MASTER_SITES} or ${PATCH_SITES} respectively. The defaults are ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}/ and ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/.

    • BINPKG_SITES: List of sites carrying binary pkgs.

    5.2. Variables affecting the build process

    XXX

    • PACKAGES: The top level directory for the binary packages. The default is ${PKGSRCDIR}/packages.

    • WRKOBJDIR: The top level directory where, if defined, the separate working directories will get created, and symbolically linked to from ${WRKDIR} (see below). This is useful for building packages on several architectures, then ${PKGSRCDIR} can be NFS-mounted while ${WRKOBJDIR} is local to every architecture. (It should be noted that PKGSRCDIR should not be set by the user — it is an internal definition which refers to the root of the pkgsrc tree. It is possible to have many pkgsrc tree instances.)

    • LOCALPATCHES: Directory for local patches that aren't part of pkgsrc. See Section 8.3, “patches/*” for more information. rel and arch are replaced with OS release (“2.0”, etc.) and architecture (“mipsel”, etc.).

    • PKGMAKECONF: Location of the mk.conf file used by a package's BSD-style Makefile. If this is not set, MAKECONF is set to /dev/null to avoid picking up settings used by builds in /usr/src.

    5.3. Developer/advanced settings

    XXX

    • PKG_DEVELOPER: Run some sanity checks that package developers want:

      • make sure patches apply with zero fuzz

      • run check-shlibs to see that all binaries will find their shared libs.

    • PKG_DEBUG_LEVEL: The level of debugging output which is displayed whilst making and installing the package. The default value for this is 0, which will not display the commands as they are executed (normal, default, quiet operation); the value 1 will display all shell commands before their invocation, and the value 2 will display both the shell commands before their invocation, and their actual execution progress with set -x will be displayed.

    • ALLOW_VULNERABILITIES.pkgbase: A space separated list of vulnerability IDs that may be ignored when performing the automated security checks. These IDs are listed in the pkg-vulnerabilities file and are displayed by audit-packages when it finds a vulnerable package.

    • SKIP_AUDIT_PACKAGES: If this is set to “yes”, the automated security checks (which use the security/audit-packages package) will be entirely skipped for all packages built. Normally you'll want to use ALLOW_VULNERABILITIES instead of this.

    5.4. Selecting Build Options

    Some packages have build time options, usually to select between different dependencies, enable optional support for big dependencies or enable experimental features.

    To see which options, if any, a package supports, and which options are mutually exclusive, run make show-options, for example:

        The following options are supported by this package:
            ssl      Enable SSL support.
        Exactly one of the following gecko options is required:
            firefox  Use firefox as gecko rendering engine.
            mozilla  Use mozilla as gecko rendering engine.
        At most one of the following database options may be selected:
            mysql    Enable support for MySQL database.
            pgsql    Enable support for PostgreSQL database.
    
        These options are enabled by default: firefox
        These options are currently enabled: mozilla ssl
    

    The following variables can be defined in /etc/mk.conf to select which options to enable for a package: PKG_DEFAULT_OPTIONS, which can be used to select or disable options for all packages that support them, and PKG_OPTIONS.pkgbase, which can be used to select or disable options specifically for package pkgbase. Options listed in these variables are selected, options preceded by “-” are disabled. A few examples:

    $ grep "PKG.*OPTION" /etc/mk.conf
    PKG_DEFAULT_OPTIONS=    -arts -dvdread -esound
    PKG_OPTIONS.kdebase=    debug -sasl
    PKG_OPTIONS.apache=     suexec 
    

    The following settings are consulted in the order given, and the last setting that selects or disables an option is used:

    1. the default options as suggested by the package maintainer

    2. the options implied by the settings of legacy variables (see below)

    3. PKG_DEFAULT_OPTIONS

    4. PKG_OPTIONS.pkgbase

    For groups of mutually exclusive options, the last option selected is used, all others are automatically disabled. If an option of the group is explicitly disabled, the previously selected option, if any, is used. It is an error if no option from a required group of options is selected, and building the package will fail.

    Before the options framework was introduced, build options were selected by setting a variable (often named USE_FOO) in /etc/mk.conf for each option. To ease transition to the options framework for the user, these legacy variables are converted to the appropriate options setting (PKG_OPTIONS.pkgbase) automatically. A warning is issued to prompt the user to update /etc/mk.conf to use the options framework directly. Support for the legacy variables will be removed eventually.

    Chapter 6. Creating binary packages

    6.1. Building a single binary package

    Once you have built and installed a package, you can create a binary package which can be installed on another system with pkg_add(1). This saves having to build the same package on a group of hosts and wasting CPU time. It also provides a simple means for others to install your package, should you distribute it.

    To create a binary package, change into the appropriate directory in pkgsrc, and run make package:

    # cd misc/figlet
    # make package
    

    This will build and install your package (if not already done), and then build a binary package from what was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a gzipped tar file. See Section B.2, “Packaging figlet” for a continuation of the above misc/figlet example.

    See Chapter 18, Submitting and Committing for information on how to submit such a binary package.

    6.2. Settings for creation of binary packages

    See Section 14.16, “Other helpful targets”.

    6.3. Doing a bulk build of all packages

    If you want to get a full set of precompiled binary packages, this section describes how to get them. Beware that the bulk build will remove all currently installed packages from your system!

    Having an FTP server configured either on the machine doing the bulk builds or on a nearby NFS server can help to make the packages available to other machines that can then save time by installing only the binary packages. See ftpd(8) for more information. If you use a remote NFS server's storage, be sure to not actually compile on NFS storage, as this slows things down a lot.

    6.3.1. Configuration

    6.3.1.1. build.conf

    The build.conf file is the main configuration file for bulk builds. You can configure how your copy of pkgsrc is kept up to date, how the distfiles are downloaded, how the packages are built and how the report is generated. You can find an annotated example file in pkgsrc/mk/bulk/build.conf-example. To use it, copy build.conf-example to build.conf and edit it, following the comments in that file.

    6.3.1.2. /etc/mk.conf

    You may want to set variables in /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for details of the default settings. You will want to ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts all licenses.

        PACKAGES?=      ${_PKGSRCDIR}/packages/${MACHINE_ARCH}
        WRKOBJDIR?=     /usr/tmp/pkgsrc   # build here instead of in pkgsrc
        BSDSRCDIR=      /usr/src
        BSDXSRCDIR=     /usr/xsrc         # for x11/xservers
        OBJHOSTNAME?=   yes               # use work.`hostname`
        FAILOVER_FETCH= yes               # insist on the correct checksum
        PKG_DEVELOPER?= yes
        _ACCEPTABLE=    yes
    

    Some options that are especially useful for bulk builds can be found at the top lines of the file mk/bulk/bsd.bulk-pkg.mk. The most useful options of these are briefly described here.

    • If you are on a slow machine, you may want to set USE_BULK_BROKEN_CHECK to “no”.

    • If you are doing bulk builds from a read-only copy of pkgsrc, you have to set BULKFILESDIR to the directory where all log files are created. Otherwise the log files are created in the pkgsrc directory.

    • Another important variable is BULK_PREREQ, which is a list of packages that should be always available while building other packages.

    Some other options are scattered in the pkgsrc infrastructure:

    • ALLOW_VULNERABLE_PACKAGES should be set to yes. The purpose of the bulk builds is creating binary packages, no matter if they are vulnerable or not. When uploading the packages to a public server, the vulnerable packages will be put into a directory of their own. Leaving this variable unset would prevent the bulk build system from even trying to build them, so possible building errors would not show up.

    • CHECK_FILES (pkgsrc/mk/bsd.pkg.check.mk) can be set to “yes” to check that the installed set of files matches the PLIST.

    • CHECK_INTERPRETER (pkgsrc/mk/bsd.pkg.check.mk) can be set to “yes” to check that the installed “#!”-scripts will find their interpreter.

    6.3.1.3. pre-build.local

    It is possible to configure the bulk build to perform certain site-specific tasks at the end of the pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk, it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    echo "I do not have enough disk space to build this pig." \
        > misc/openoffice/$BROKENF
    

    to prevent the system from trying to build a particular package which requires nearly 3 GB of disk space.

    6.3.2. Other environmental considerations

    As /usr/pkg will be completely deleted at the start of bulk builds, make sure your login shell is placed somewhere else. Either drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via pkg_add(1) from /etc/rc.local, so you can login after a reboot (remember that your current process won't die if the package is removed, you just can't start any new instances of the shell any more). Also, if you use NetBSD earlier than 1.5, or you still want to use the pkgsrc version of ssh for some reason, be sure to install ssh before starting it from rc.local:

        ( cd /usr/pkgsrc/security/ssh ; make bulk-install )
        if [ -f /usr/pkg/etc/rc.d/sshd ]; then
            /usr/pkg/etc/rc.d/sshd
        fi
    

    Not doing so will result in you being not able to log in via ssh after the bulk build is finished or if the machine gets rebooted or crashes. You have been warned! :)

    6.3.3. Operation

    Make sure you don't need any of the packages still installed.

    Warning

    During the bulk build, all packages will be removed!

    Be sure to remove all other things that might interfere with builds, like some libs installed in /usr/local, etc. then become root and type:

    # cd /usr/pkgsrc
    # sh mk/bulk/build
    

    If for some reason your last build didn't complete (power failure, system panic, ...), you can continue it by running:

    # sh mk/bulk/build restart
    

    At the end of the bulk build, you will get a summary via mail, and find build logs in the directory specified by FTP in the build.conf file.

    6.3.4. What it does

    The bulk builds consist of three steps:

    1. pre-build

    The script updates your pkgsrc tree via (anon)cvs, then cleans out any broken distfiles, and removes all packages installed.

    2. the bulk build

    This is basically “make bulk-package” with an optimised order in which packages will be built. Packages that don't require other packages will be built first, and packages with many dependencies will be built later.

    3. post-build

    Generates a report that's placed in the directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    During the build, a list of broken packages will be compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    6.3.5. Disk space requirements

    Currently, roughly the following requirements are valid for NetBSD 2.0/i386:

    • 10 GB - distfiles (NFS ok)

    • 8 GB - full set of all binaries (NFS ok)

    • 5 GB - temp space for compiling (local disk recommended)

    Note that all pkgs will be de-installed as soon as they are turned into a binary package, and that sources are removed, so there is no excessively huge demand to disk space. Afterwards, if the package is needed again, it will be installed via pkg_add(1) instead of building again, so there are no cycles wasted by recompiling.

    6.3.6. Setting up a sandbox for chrooted builds

    If you don't want all the packages nuked from a machine (rendering it useless for anything but pkg compiling), there is the possibility of doing the package bulk build inside a chroot environment.

    The first step is to set up a chroot sandbox, e.g. /usr/sandbox. This can be done by using null mounts, or manually.

    There is a shell script called pkgsrc/mk/bulk/mksandbox which will set up the sandbox environment using null mounts. It will also create a script called sandbox in the root of the sandbox environment, which will allow the null mounts to be activated using the sandbox mount command and deactivated using the sandbox umount command.

    To set up a sandbox environment by hand, after extracting all the sets from a NetBSD installation or doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following items are present and properly configured:

    1. Kernel

      # cp /netbsd /usr/sandbox
      
    2. /dev/*

      # cd /usr/sandbox/dev ; sh MAKEDEV all
      
    3. /etc/resolv.conf (for security/smtpd and mail):

      # cp /etc/resolv.conf /usr/sandbox/etc
      
    4. Working(!) mail config (hostname, sendmail.cf):

      # cp /etc/mail/sendmail.cf /usr/sandbox/etc/mail
      
    5. /etc/localtime (for security/smtpd):

      # ln -sf /usr/share/zoneinfo/UTC /usr/sandbox/etc/localtime
      
    6. /usr/src (system sources, e. g. for sysutils/aperture):

      # ln -s ../disk1/cvs .
      # ln -s cvs/src-2.0 src
      
    7. Create /var/db/pkg (not part of default install):

      # mkdir /usr/sandbox/var/db/pkg
      
    8. Create /usr/pkg (not part of default install):

      # mkdir /usr/sandbox/usr/pkg
      
    9. Checkout pkgsrc via cvs into /usr/sandbox/usr/pkgsrc:

      # cd /usr/sandbox/usr
      # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc
      

      Do not mount/link this to the copy of your pkgsrc tree you do development in, as this will likely cause problems!

    10. Make /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    11. Edit /etc/mk.conf, see Section 6.3.1.2, “/etc/mk.conf”.

    12. Adjust mk/bulk/build.conf to suit your needs.

    When the chroot sandbox is set up, you can start the build with the following steps:

    # cd /usr/sandbox/usr/pkgsrc
    # sh mk/bulk/do-sandbox-build
    

    This will just jump inside the sandbox and start building. At the end of the build, mail will be sent with the results of the build. Created binary pkgs will be in /usr/sandbox/usr/pkgsrc/packages (wherever that points/mounts to/from).

    6.3.7. Building a partial set of packages

    In addition to building a complete set of all packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting SPECIFIC_PKGS in /etc/mk.conf, the variables

    • SITE_SPECIFIC_PKGS

    • HOST_SPECIFIC_PKGS

    • GROUP_SPECIFIC_PKGS

    • USER_SPECIFIC_PKGS

    will define the set of packages which should be built. The bulk build code will also include any packages which are needed as dependencies for the explicitly listed packages.

    One use of this is to do a bulk build with SPECIFIC_PKGS in a chroot sandbox periodically to have a complete set of the binary packages needed for your site available without the overhead of building extra packages that are not needed.

    6.3.8. Uploading results of a bulk build

    This section describes how pkgsrc developers can upload binary pkgs built by bulk builds to ftp.NetBSD.org.

    If you would like to automatically create checksum files for the binary packages you intend to upload, remember to set MKSUMS=yes in your mk/bulk/build.conf.

    If you would like to PGP sign the checksum files (highly recommended!), remember to set SIGN_AS=username@@NetBSD.org in your mk/bulk/build.conf. This will prompt you for your GPG password to sign the files before uploading everything.

    Then, make sure that you have RSYNC_DST set properly in your mk/bulk/build.conf file, i.e. adjust it to something like one of the following:

    RSYNC_DST=ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload 
    

    Please use appropriate values for "pkgsrc-200xQy", "NetBSD-a.b.c" and "arch" here. If your login on ftp.NetBSD.org is different from your local login, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use:

    RSYNC_DST=hubertf@@ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload 
    

    A separate upload directory is used here to allow "closing" the directory during upload. To do so, run the following command on ftp.NetBSD.org next:

    nbftp% mkdir -p -m 750 /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload
    

    Please note that /pub/NetBSD/packages is only appropriate for packages for the NetBSD operating system. Binary packages for other operating systems should go into /pub/pkgsrc.

    Before uploading the binary pkgs, ssh authentication needs to be set up. This example shows how to set up temporary keys for the root account inside the sandbox (assuming that no keys should be present there usually):

    # chroot /usr/sandbox
    chroot-# rm $HOME/.ssh/id-dsa*
    chroot-# ssh-keygen -t dsa
    chroot-# cat $HOME/.ssh/id-dsa.pub 
    

    Now take the output of id-dsa.pub and append it to your ~/.ssh/authorized_keys file on ftp.NetBSD.org. You can remove the key after the upload is done!

    Next, test if your ssh connection really works:

    chroot-# ssh ftp.NetBSD.org date 
    

    Use "-l yourNetBSDlogin" here as appropriate!

    Now after all this works, you can exit the sandbox and start the upload:

    chroot-# exit
    # cd /usr/sandbox/usr/pkgsrc
    # sh mk/bulk/do-sandbox-upload 
    

    The upload process may take quite some time. Use ls(1) or du(1) on the FTP server to monitor progress of the upload. The upload script will take care of not uploading restricted packages and putting vulnerable packages into the vulnerable subdirectory.

    After the upload has ended, first thing is to revoke ssh access:

    nbftp% vi ~/.ssh/authorized_keys
    Gdd:x! 
    

    Use whatever is needed to remove the key you've entered before! Last, move the uploaded packages out of the upload directory to have them accessible to everyone:

    nbftp% cd /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch
    nbftp% mv upload/* .
    nbftp% rmdir upload
    nbftp% chmod 755 . 
    

    6.4. Creating a multiple CD-ROM packages collection

    After your pkgsrc bulk-build has completed, you may wish to create a CD-ROM set of the resulting binary packages to assist in installing packages on other machines. The pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for a given package on the same CD as that package.

    6.4.1. Example of cdpack

    Complete documentation for cdpack is found in the cdpack(1) man page. The following short example assumes that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

    # mkdir /u2/images
    # pkg_add /usr/pkgsrc/packages/All/cdpack
    # cdpack /usr/pkgsrc/packages/All /u2/images
    

    If you wish to include a common set of files (COPYRIGHT, README, etc.) on each CD in the collection, then you need to create a directory which contains these files. e.g.

    # mkdir /tmp/common
    # echo "This is a README" > /tmp/common/README
    # echo "Another file" > /tmp/common/COPYING
    # mkdir /tmp/common/bin
    # echo "#!/bin/sh" > /tmp/common/bin/myscript
    # echo "echo Hello world" >> /tmp/common/bin/myscript
    # chmod 755 /tmp/common/bin/myscript
    

    Now create the images:

    # cdpack -x /tmp/common /usr/pkgsrc/packages/All /u2/images
    

    Each image will contain README, COPYING, and bin/myscript in their root directories.

    Chapter 7. Frequently Asked Questions

    This section contains hints, tips & tricks on special things in pkgsrc that we didn't find a better place for in the previous chapters, and it contains items for both pkgsrc users and developers.

    7.1. Are there any mailing lists for pkg-related discussion?

    The following mailing lists may be of interest to pkgsrc users:

    • pkgsrc-bugs: All bug reports in category "pkg" sent with send-pr(1) appear here. Please do not report your bugs here directly; use one of the other mailing lists. discussed.

    • pkgsrc-bulk: A list where the results of pkgsrc bulk builds are sent and discussed.

    • pkgsrc-changes: This list is for those who are interested in getting a commit message for every change committed to pkgsrc. It is also available in digest form, meaning one daily message containing all commit messages for changes to the package source tree in that 24 hour period.

    • pkgsrc-users: This is a general purpose list for most issues regarding pkgsrc, regardless of platform, e.g. soliciting user help for pkgsrc configuration, unexpected build failures, using particular packages, upgrading pkgsrc installations, questions regarding the pkgsrc release branches, etc. General announcements or proposals for changes that impact the pkgsrc user community, e.g. major infrastructure changes, new features, package removals, etc., may also be posted.

    • tech-pkg: This is a list for technical discussions related to pkgsrc development, e.g. soliciting feedback for changes to pkgsrc infrastructure, proposed new features, questions related to porting pkgsrc to a new platform, advice for maintaining a package, patches that affect many packages, help requests moved from pkgsrc-users when an infrastructure bug is found, etc.

    To subscribe, do:

        % echo subscribe listname | mail majordomo@@NetBSD.org
    

    Archives for all these mailing lists are available from http://mail-index.NetBSD.org/.

    7.2. Where's the pkgviews documentation?

    Pkgviews is tightly integrated with buildlink. You can find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    7.3. Utilities for package management (pkgtools)

    The pkgsrc/pkgtools directory pkgtools contains a number of useful utilities for both users and developers of pkgsrc. This section attempts only to make the reader aware of the utilities and when they might be useful, and not to duplicate the documentation that comes with each package.

    Utilities used by pkgsrc (automatically installed when needed):

    OS tool augmentation (automatically installed when needed):

    • pkgtools/digest: Calculates various kinds of checksums (including SHA1).

    • pkgtools/libnbcompat: Compatibility library for pkgsrc tools.

    • pkgtools/mtree: Installed on non-BSD systems due to lack of native mtree.

    • pkgtools/pkg_install: Up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present.

    Utilities used by pkgsrc (not automatically installed):

    • pkgtools/pkg_tarup: Create a binary package from an already-installed package. Used by make replace to save the old package.

    • pkgtools/dfdisk: Adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    • pkgtools/xpkgwedge: Put X11 packages someplace else (enabled by default).

    • devel/cpuflags: Determine the best compiler flags to optimise code for your current CPU and compiler.

    Utilities for keeping track of installed packages, being up to date, etc:

    Utilities for people maintaining or creating individual packages:

    Utilities for people maintaining pkgsrc (or: more obscure pkg utilities)

    7.4. How to use pkgsrc as non-root

    If you want to use pkgsrc as non-root user, you can set some variables to make pkgsrc work under these conditions. At the very least, you need to set UNPRIVILEGED to “yes”; this will turn on unprivileged mode and set multiple related variables to allow installation of packages as non-root.

    In case the defaults are not enough, you may want to tune some other variables used. For example, if the automatic user/group detection leads to incorrect values (or not the ones you would like to use), you can change them by setting UNPRIVILEGED_USER and UNPRIVILEGED_GROUP respectively.

    As regards bootstrapping, please note that the bootstrap script will ease non-root configuration when given the “--ignore-user-check” flag, as it will choose and use multiple default directories under ~/pkg as the installation targets. These directories can be overriden by the “--prefix” flag provided by the script, as well as some others that allow finer tuning of the tree layout.

    7.5. How to resume transfers when fetching distfiles?

    By default, resuming transfers in pkgsrc is disabled, but you can enable this feature by adding the option PKG_RESUME_TRANSFERS=YES into /etc/mk.conf. If, during a fetch step, an incomplete distfile is found, pkgsrc will try to resume it.

    You can also use a different program than the default ftp(1) by changing the FETCH_CMD variable. Don't forget to set FETCH_RESUME_ARGS and FETCH_OUTPUT_ARGS if you are not using default values.

    For example, if you want to use wget to resume downloads, you'll have to use something like:

        FETCH_CMD=             wget
        FETCH_BEFORE_ARGS=     --passive-ftp
        FETCH_RESUME_ARGS=     -c
        FETCH_OUTPUT_ARGS=     -O
    

    7.6. How can I install/use XFree86 from pkgsrc?

    If you want to use XFree86 from pkgsrc instead of your system's own X11 (/usr/X11R6, /usr/openwin, ...), you will have to add the following line into /etc/mk.conf:

        X11_TYPE=XFree86
    

    7.7. How can I install/use X.org from pkgsrc?

    If you want to use X.org from pkgsrc instead of your system's own X11 (/usr/X11R6, /usr/openwin, ...) you will have to add the following line into /etc/mk.conf:

        X11_TYPE=xorg
    

    Note

    The DragonFly operating system defaults to using this X.org X11 implementation from pkgsrc.

    7.8. How to fetch files from behind a firewall

    If you are sitting behind a firewall which does not allow direct connections to Internet hosts (i.e. non-NAT), you may specify the relevant proxy hosts. This is done using an environment variable in the form of a URL, e.g. in Amdahl, the machine “orpheus.amdahl.com” is one of the firewalls, and it uses port 80 as the proxy port number. So the proxy environment variables are:

        ftp_proxy=ftp://orpheus.amdahl.com:80/
        http_proxy=http://orpheus.amdahl.com:80/
    

    7.9. How do I tell make fetch to do passive FTP?

    This depends on which utility is used to retrieve distfiles. From bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

    • ${LOCALBASE}/bin/ftp

    • /usr/bin/ftp

    On a default NetBSD installation, this will be /usr/bin/ftp, which automatically tries passive connections first, and falls back to active connections if the server refuses to do passive. For the other tools, add the following to your /etc/mk.conf file: PASSIVE_FETCH=1.

    Having that option present will prevent /usr/bin/ftp from falling back to active transfers.

    7.10. How to fetch all distfiles at once

    You would like to download all the distfiles in a single batch from work or university, where you can't run a make fetch. There is an archive of distfiles on ftp.NetBSD.org, but downloading the entire directory may not be appropriate.

    The answer here is to do a make fetch-list in /usr/pkgsrc or one of its subdirectories, carry the resulting list to your machine at work/school and use it there. If you don't have a NetBSD-compatible ftp(1) (like tnftp) at work, don't forget to set FETCH_CMD to something that fetches a URL:

    At home:

    % cd /usr/pkgsrc
    % make fetch-list FETCH_CMD=wget DISTDIR=/tmp/distfiles >/tmp/fetch.sh
    % scp /tmp/fetch.sh work:/tmp
    

    At work:

    % sh /tmp/fetch.sh
    

    then tar up /tmp/distfiles and take it home.

    If you have a machine running NetBSD, and you want to get all distfiles (even ones that aren't for your machine architecture), you can do so by using the above-mentioned make fetch-list approach, or fetch the distfiles directly by running:

    % make mirror-distfiles
    

    If you even decide to ignore NO_{SRC,BIN}_ON_{FTP,CDROM}, then you can get everything by running:

    % make fetch NO_SKIP=yes
    

    7.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?

    When compiling the pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set (nroff, ...) from the NetBSD base distribution on your machine. It is recommended to do that to format man pages.

    In the case of the pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    7.12. What does “Could not find bsd.own.mk” mean?

    You didn't install the compiler set, comp.tgz, when you installed your NetBSD machine. Please get and install it, by extracting it in /:

    # cd /
    # tar --unlink -zxvpf .../comp.tgz
    

    comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

    7.13. Using 'sudo' with pkgsrc

    When installing packages as non-root user and using the just-in-time su(1) feature of pkgsrc, it can become annoying to type in the root password for each required package installed. To avoid this, the sudo package can be used, which does password caching over a limited time. To use it, install sudo (either as binary package or from security/sudo) and then put the following into your /etc/mk.conf:

        .if exists(${LOCALBASE}/bin/sudo)
        SU_CMD=        ${LOCALBASE}/bin/sudo /bin/sh -c
        .endif
    

    7.14. How do I change the location of configuration files?

    As the system administrator, you can choose where configuration files are installed. The default settings make all these files go into ${PREFIX}/etc or some of its subdirectories; this may be suboptimal depending on your expectations (e.g., a read-only, NFS-exported PREFIX with a need of per-machine configuration of the provided packages).

    In order to change the defaults, you can modify the PKG_SYSCONFBASE variable (in /etc/mk.conf) to point to your preferred configuration directory; some common examples include /etc or /etc/pkg.

    Furthermore, you can change this value on a per-package basis by setting the PKG_SYSCONFDIR.${PKG_SYSCONFVAR} variable. PKG_SYSCONFVAR's value usually matches the name of the package you would like to modify, that is, the contents of PKGBASE.

    Note that after changing these settings, you must rebuild and reinstall any affected packages.

    7.15. Automated security checks

    Please be aware that there can often be bugs in third-party software, and some of these bugs can leave a machine vulnerable to exploitation by attackers. In an effort to lessen the exposure, the NetBSD packages team maintains a database of known-exploits to packages which have at one time been included in pkgsrc. The database can be downloaded automatically, and a security audit of all packages installed on a system can take place. To do this, install the security/audit-packages package. It has two components:

    1. download-vulnerability-list, an easy way to download a list of the security vulnerabilities information. This list is kept up to date by the NetBSD security officer and the NetBSD packages team, and is distributed from the NetBSD ftp server:

      ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    2. audit-packages, an easy way to audit the current machine, checking each vulnerability which is known. If a vulnerable package is installed, it will be shown by output to stdout, including a description of the type of vulnerability, and a URL containing more information.

    Use of the security/audit-packages package is strongly recommended! After “audit-packages” is installed, please read the package's message, which you can get by running pkg_info -D audit-packages.

    If this package is installed, pkgsrc builds will use it to perform a security check before building any package. See Section 5.2, “Variables affecting the build process” for ways to control this check.

    7.16. Why do some packages ignore my CFLAGS?

    When you add your own preferences to the CFLAGS variable in your mk.conf, these flags are passed in environment variables to the ./configure scripts and to make(1). Some package authors ignore the CFLAGS from the environment variable by overriding them in the Makefiles of their package.

    Currently there is no solution to this problem. If you really need the package to use your CFLAGS you should run make patch in the package directory and then inspect any Makefile and Makefile.in for whether they define CFLAGS explicitly. Usually you can remove these lines. But be aware that some “smart” programmers write so bad code that it only works for the specific combination of CFLAGS they have chosen.

    Part II. The pkgsrc developer's guide

    Table of Contents

    8. Package components - files, directories and contents
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    9. Programming in Makefiles
    9.1. Makefile variables
    9.1.1. Naming conventions
    9.2. Code snippets
    9.2.1. Adding things to a list
    9.2.2. Converting an internal list into an external list
    9.2.3. Passing variables to a shell command
    9.2.4. Quoting guideline
    9.2.5. Workaround for a bug in BSD Make
    10. PLIST issues
    10.1. RCS ID
    10.2. Semi-automatic PLIST generation
    10.3. Tweaking output of make print-PLIST
    10.4. Variable substitution in PLIST
    10.5. Man page compression
    10.6. Changing PLIST source with PLIST_SRC
    10.7. Platform-specific and differing PLISTs
    10.8. Sharing directories between packages
    11. Buildlink methodology
    11.1. Converting packages to use buildlink3
    11.2. Writing buildlink3.mk files
    11.2.1. Anatomy of a buildlink3.mk file
    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files
    11.3. Writing builtin.mk files
    11.3.1. Anatomy of a builtin.mk file
    11.3.2. Global preferences for native or pkgsrc software
    12. The pkginstall framework
    12.1. Files and directories outside the installation prefix
    12.1.1. Directory manipulation
    12.1.2. File manipulation
    12.2. Configuration files
    12.2.1. How PKG_SYSCONFDIR is set
    12.2.2. Telling the software where configuration files are
    12.2.3. Patching installations
    12.2.4. Disabling handling of configuration files
    12.3. System startup scripts
    12.3.1. Disabling handling of system startup scripts
    12.4. System users and groups
    12.5. System shells
    12.5.1. Disabling shell registration
    12.6. Fonts
    12.6.1. Disabling automatic update of the fonts databases
    13. Options handling
    13.1. Global default options
    13.2. Converting packages to use bsd.options.mk
    13.3. Option Names
    14. The build process
    14.1. Introduction
    14.2. Program location
    14.3. Directories used during the build process
    14.4. Running a phase
    14.5. The fetch phase
    14.6. The checksum phase
    14.7. The extract phase
    14.8. The patch phase
    14.9. The tools phase
    14.10. The wrapper phase
    14.11. The configure phase
    14.12. The build phase
    14.13. The test phase
    14.14. The install phase
    14.15. The package phase
    14.16. Other helpful targets
    15. Tools needed for building or running
    15.1. Tools for pkgsrc builds
    15.2. Tools needed by packages
    15.3. Tools provided by platforms
    16. Making your package work
    16.1. General operation
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    16.3. Configuration gotchas
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    16.6. Feedback to the author
    17. Debugging
    18. Submitting and Committing
    18.1. Submitting binary packages
    18.2. Submitting source packages (for non-NetBSD-developers)
    18.3. General notes when adding, updating, or removing packages
    18.4. Committing: Importing a package into CVS
    18.5. Updating a package to a newer version
    18.6. Moving a package in pkgsrc
    19. Frequently Asked Questions

    Chapter 8. Package components - files, directories and contents

    Whenever you're preparing a package, there are a number of files involved which are described in the following sections.

    8.1. Makefile

    Building, installation and creation of a binary package are all controlled by the package's Makefile. The Makefile describes various things about a package, for example from where to get it, how to configure, build, and install it.

    A package Makefile contains several sections that describe the package.

    In the first section there are the following variables, which should appear exactly in the order given here.

    • DISTNAME is the basename of the distribution file to be downloaded from the package's website.

    • PKGNAME is the name of the package, as used by pkgsrc. You only need to provide it if it differs from DISTNAME. Usually it is the directory name together with the version number. It must match the regular expression ^[A-Za-z0-9][A-Za-z0-9-_.+]*$, that is, it starts with a letter or digit, and contains only letters, digits, dashes, underscores, dots and plus signs.

    • CATEGORIES is a list of categories which the package fits in. You can choose any of the top-level directories of pkgsrc for it.

      Currently the following values are available for CATEGORIES. If more than one is used, they need to be separated by spaces:

          archivers     cross         geography     meta-pkgs     security
          audio         databases     graphics      misc          shells
          benchmarks    devel         ham           multimedia    sysutils
          biology       editors       inputmethod   net           textproc
          cad           emulators     lang          news          time
          chat          finance       mail          parallel      wm
          comms         fonts         math          pkgtools      www
          converters    games         mbone         print         x11
      
    • MASTER_SITES is a list of URLs where the distribution files can be downloaded. Each URL must end with a slash.

      The MASTER_SITES may make use of the following predefined sites:

          ${MASTER_SITE_APACHE}
          ${MASTER_SITE_BACKUP}
          ${MASTER_SITE_CYGWIN}
          ${MASTER_SITE_DEBIAN}
          ${MASTER_SITE_FREEBSD}
          ${MASTER_SITE_FREEBSD_LOCAL}
          ${MASTER_SITE_GNOME}
          ${MASTER_SITE_GNU}
          ${MASTER_SITE_GNUSTEP}
          ${MASTER_SITE_IFARCHIVE}
          ${MASTER_SITE_MOZILLA}
          ${MASTER_SITE_OPENOFFICE}
          ${MASTER_SITE_PERL_CPAN}
          ${MASTER_SITE_R_CRAN}
          ${MASTER_SITE_SOURCEFORGE}
          ${MASTER_SITE_SUNSITE}
          ${MASTER_SITE_SUSE}
          ${MASTER_SITE_TEX_CTAN}
          ${MASTER_SITE_XCONTRIB}
          ${MASTER_SITE_XEMACS}
      

      If one of these predefined sites is chosen, you may want to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

          ${MASTER_SITE_GNU:=subdirectory/name/}
          ${MASTER_SITE_SOURCEFORGE:=project_name/}
      

      Note the trailing slash after the subdirectory name.

      If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES.foo to a list of URIs where file “foo” may be found. “foo” includes the suffix, e.g.:

          DISTFILES=      ${DISTNAME}${EXTRACT_SUFX}
          DISTFILES+=     foo-file.tar.gz
          SITES.foo-file.tar.gz= \
                  http://www.somewhere.com/somehow/ \
                  http://www.somewhereelse.com/mirror/somehow/
      
    • DISTFILES: Name(s) of archive file(s) containing distribution. The default is ${DISTNAME}${EXTRACT_SUFX}. Should only be set if you have more than one distfile.

      Note that the normal default setting of DISTFILES must be made explicit if you want to add to it (rather than replace it), as you usually would.

    • EXTRACT_SUFX: Suffix of the distribution file, will be appended to DISTNAME. Defaults to .tar.gz.

    The second section contains information about separately downloaded patches, if any.

    • PATCHFILES: Name(s) of additional files that contain distribution patches. There is no default. pkgsrc will look for them at PATCH_SITES. They will automatically be uncompressed before patching if the names end with .gz or .Z.

    • PATCH_SITES: Primary location(s) for distribution patch files (see PATCHFILES below) if not found locally.

    The third section contains the following variables.

    • MAINTAINER is the email address of the person who feels responsible for this package, and who is most likely to look at problems or questions regarding this package which have been reported with send-pr(1). Other developers should contact the MAINTAINER before making major changes to the package. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to .

    • HOMEPAGE is a URL where users can find more information about the package.

    • COMMENT is a one-line description of the package (should not include the package name).

    Other variables that affect the build:

    • WRKSRC: The directory where the interesting distribution files of the package are found. The default is ${WRKDIR}/${DISTNAME}, which works for most packages.

      If a package doesn't create a subdirectory for itself (most GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC= ${WRKDIR}.

      If a package doesn't create a subdirectory with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}, for example WRKSRC= ${WRKDIR}/${DISTNAME}/unix. See lang/tcl and x11/tk for other examples.

      The name of the working directory created by pkgsrc is taken from the WRKDIR_BASENAME variable. By default, its value is work. If you want to use the same pkgsrc tree for building different kinds of binary packages, you can change the variable according to your needs. Two other variables handle common cases of setting WRKDIR_BASENAME individually. If OBJHOSTNAME is defined in /etc/mk.conf, the first component of the host's name is attached to the directory name. If OBJMACHINE is defined, the platform name is attached, which might look like work.i386 or work.sparc.

    Please pay attention to the following gotchas:

    • Add MANCOMPRESSED if man pages are installed in compressed form by the package; see comment in bsd.pkg.mk.

    • Replace /usr/local with “${PREFIX}” in all files (see patches, below).

    • If the package installs any info files, see Section 16.5.7, “Packages installing info files”.

    8.2. distinfo

    The distinfo file contains the message digest, or checksum, of each distfile needed for the package. This ensures that the distfiles retrieved from the Internet have not been corrupted during transfer or altered by a malign force to introduce a security hole. Due to recent rumor about weaknesses of digest algorithms, all distfiles are protected using both SHA1 and RMD160 message digests, as well as the file size.

    The distinfo file also contains the checksums for all the patches found in the patches directory (see Section 8.3, “patches/*”).

    To regenerate the distinfo file, use the make makedistinfo or make mdi command.

    Some packages have different sets of distfiles depending on the platform, for example www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    8.3. patches/*

    This directory contains files that are used by the patch(1) command to modify the sources as distributed in the distribution file into a form that will compile and run perfectly on NetBSD. The files are applied successively in alphabetic order (as returned by a shell “patches/patch-*” glob expansion), so patch-aa is applied before patch-ab, etc.

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do not put changes for more than one file into a single patch file, as this will make future modifications more difficult.

    Similar, a file should be patched at most once, not several times by several different patches. If a file needs several patches, they should be combined into one file.

    One important thing to mention is to pay attention that no RCS IDs get stored in the patch files, as these will cause problems when later checked into the NetBSD CVS tree. Use the pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    For even more automation, we recommend using mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff.

    When you have finished a package, remember to generate the checksums for the patch files by using the make makepatchsum command, see Section 8.2, “distinfo.

    When adding a patch that corrects a problem in the distfile (rather than e.g. enforcing pkgsrc's view of where man pages should go), send the patch as a bug report to the maintainer. This benefits non-pkgsrc users of the package, and usually enables removing the patch in future version.

    Patch files that are distributed by the author or other maintainers can be listed in $PATCHFILES.

    If it is desired to store any patches that should not be committed into pkgsrc, they can be kept outside the pkgsrc tree in the $LOCALPATCHES directory. The directory tree there is expected to have the same “category/package” structure as pkgsrc, and patches are expected to be stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example, if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch files, and they are applied after pkgsrc patches are applied.

    8.4. Other mandatory files

    DESCR

    A multi-line description of the piece of software. This should include any credits where they are due. Please bear in mind that others do not share your sense of humour (or spelling idiosyncrasies), and that others will read everything that you write here.

    PLIST

    This file governs the files that are installed on your system: all the binaries, manual pages, etc. There are other directives which may be entered in this file, to control the creation and deletion of directories, and the location of inserted files. See Chapter 10, PLIST issues for more information.

    8.5. Optional files

    INSTALL

    This shell script is invoked twice by pkg_add(1). First time after package extraction and before files are moved in place, the second time after the files to install are moved in place. This can be used to do any custom procedures not possible with @@exec commands in PLIST. See pkg_add(1) and pkg_create(1) for more information.

    DEINSTALL

    This script is executed before and after any files are removed. It is this script's responsibility to clean up any additional messy details around the package's installation, since all pkg_delete knows is how to delete the files created in the original distribution. See pkg_delete(1) and pkg_create(1) for more information.

    MESSAGE

    This file is displayed after installation of the package. Useful for things like legal notices on almost-free software and hints for updating config files after installing modules for apache, PHP etc. Please note that you can modify variables in it easily by using MESSAGE_SUBST in the package's Makefile:

        MESSAGE_SUBST+=  SOMEVAR="somevalue"
    

    replaces "${SOMEVAR}" with “somevalue” in MESSAGE.

    8.6. work*

    When you type make, the distribution files are unpacked into the directory denoted by WRKDIR. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp files. The directory gets removed completely on clean. The default is ${.CURDIR}/work or ${.CURDIR}/work.${MACHINE_ARCH} if OBJMACHINE is set.

    8.7. files/*

    If you have any files that you wish to be placed in the package prior to configuration or building, you could place these files here and use a “${CP}” command in the “pre-configure” target to achieve this. Alternatively, you could simply diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    Chapter 9. Programming in Makefiles

    Pkgsrc consists of many Makefile fragments, each of which forms a well-defined part of the pkgsrc system. Using the make(1) system as a programming language for a big system like pkgsrc requires some discipline to keep the code correct and understandable.

    The basic ingredients for Makefile programming are variables (which are actually macros) and shell commands. Among these shell commands may even be more complex ones like awk(1) programs. To make sure that every shell command runs as intended it is necessary to quote all variables correctly when they are used.

    This chapter describes some patterns, that appear quite often in Makefiles, including the pitfalls that come along with them.

    9.1. Makefile variables

    Makefile variables contain strings that can be processed using the five operators ``='', ``+='', ``?='', ``:='', and ``!='', which are described in the make(1) man page.

    When a variable's value is parsed from a Makefile, the hash character ``#'' and the backslash character ``\'' are handled specially. If a backslash is followed by a newline, any whitespace immediately in front of the backslash, the backslash, the newline, and any whitespace immediately behind the newline are replaced with a single space. A backslash character and an immediately following hash character are replaced with a single hash character. Otherwise, the backslash is passed as is. In a variable assignment, any hash character that is not preceded by a backslash starts a comment that continues upto the end of the logical line.

    Note: Because of this parsing algorithm the only way to create a variable consisting of a single backslash is using the ``!='' operator, for example: BACKSLASH!=echo "\\".

    So far for defining variables. The other thing you can do with variables is evaluating them. A variable is evaluated when it is part of the right side of the ``:='' or the ``!='' operator, or directly before executing a shell command which the variable is part of. In all other cases, make(1) performs lazy evaluation, that is, variables are not evaluated until there's no other way. The ``modifiers'' mentioned in the man page also evaluate the variable.

    Some of the modifiers split the string into words and then operate on the words, others operate on the string as a whole. When a string is split into words, it is split as you would expect it from sh(1).

    No rule without exception—the .for loop does not follow the shell quoting rules but splits at sequences of whitespace.

    There are several types of variables that should be handled differently. Strings and two types of lists.

    • Strings can contain arbitrary characters. Nevertheless, you should restrict yourself to only using printable characters. Examples are PREFIX and COMMENT.

    • Internal lists are lists that are never exported to any shell command. Their elements are separated by whitespace. Therefore, the elements themselves cannot have embedded whitespace. Any other characters are allowed. Internal lists can be used in .for loops. Examples are DEPENDS and BUILD_DEPENDS.

    • External lists are lists that may be exported to a shell command. Their elements can contain any characters, including whitespace. That's why they cannot be used in .for loops. Examples are DISTFILES and MASTER_SITES.

    9.1.1. Naming conventions

    • All variable names starting with an underscore are reserved for use by the pkgsrc infrastructure. They shall not be used by package Makefiles.

    • In .for loops you should use lowercase variable names for the iteration variables.

    • All list variables should have a ``plural'' name, e.g. PKG_OPTIONS or DISTFILES.

    9.2. Code snippets

    This section presents you with some code snippets you should use in your own code. If you don't find anything appropriate here, you should test your code and add it here.

    9.2.1. Adding things to a list

        STRING=                 foo * bar `date`
        INT_LIST=               # empty
        ANOTHER_INT_LIST=       apache-[0-9]*:../../www/apache
        EXT_LIST=               # empty
        ANOTHER_EXT_LIST=       a=b c=d
    
        INT_LIST+=              ${STRING}               # 1
        INT_LIST+=              ${ANOTHER_INT_LIST}     # 2
        EXT_LIST+=              ${STRING:Q}             # 3
        EXT_LIST+=              ${ANOTHER_EXT_LIST}     # 4
    

    When you add a string to an external list (example 3), it must be quoted. In all other cases, you must not add a quoting level. You must not merge internal and external lists, unless you are sure that all entries are correctly interpreted in both lists.

    9.2.2. Converting an internal list into an external list

        EXT_LIST=       # empty
        .for i in ${INT_LIST}
        EXT_LIST+=      ${i:Q}""
        .endfor
    

    This code converts the internal list INT_LIST into the external list EXT_LIST. As the elements of an internal list are unquoted they must be quoted here. The reason for appending "" is explained below.

    9.2.3. Passing variables to a shell command

        STRING=         foo bar <    > * `date` $$HOME ' "
        EXT_LIST=       string=${STRING:Q} x=second\ item
    
        all:
                echo ${STRING}                  # 1
                echo "${STRING}"                # 2
                echo "${STRING:Q}"              # 3
                echo ${STRING:Q}                # 4
                echo x${STRING:Q} | sed 1s,.,,  # 5
                env ${EXT_LIST} /bin/sh -c 'echo "$$string"; echo "$$x"'
    

    Example 1 leads to a syntax error in the shell, as the characters are just copied.

    Example 2 leads to a syntax error too, and if you leave out the last " character from ${STRING}, date(1) will be executed. The $HOME shell variable would be evaluated, too.

    Example 3 outputs each space character preceded by a backslash (or not), depending on the implementation of the echo(1) command.

    Example 4 handles correctly every string that does not start with a dash. In that case, the result depends on the implementation of the echo(1) command. As long as you can guarantee that your input does not start with a dash, this form is appropriate.

    Example 5 handles even the case of a leading dash correctly.

    The EXT_LIST does not need to be quoted because the quoting has already been done when adding elements to the list.

    As internal lists shall not be passed to the shell, there is no example for it.

    9.2.4. Quoting guideline

    There are many possible sources of wrongly quoted variables. This section lists some of the commonly known ones.

    • Whenever you use the value of a list, think about what happens to leading or trailing whitespace. If the list is a well-formed shell expression, you can apply the :M* modifier to strip leading and trailing whitespace from each word. The :M operator first splits its argument according to the rules of the shell, and then creates a new list consisting of all words that match the shell glob expression *, that is: all. One class of situations where this is needed is when adding a variable like CPPFLAGS to CONFIGURE_ARGS. If the configure script invokes other configure scripts, it strips the leading and trailing whitespace from the variable and then passes it to the other configure scripts. But these configure scripts expect the (child) CPPFLAGS variable to be the same as the parent CPPFLAGS. That's why we better pass the CPPFLAGS value properly trimmed. And here is how we do it:

          CPPFLAGS=               # empty
          CPPFLAGS+=              -Wundef -DPREFIX=\"${PREFIX:Q}\"
          CPPFLAGS+=              ${MY_CPPFLAGS}
      
          CONFIGURE_ARGS+=        CPPFLAGS=${CPPFLAGS:M*:Q}
      
          all:
                  echo x${CPPFLAGS:Q}x            # leading and trailing whitespace
                  echo x${CONFIGURE_ARGS}x        # properly trimmed
      
    • The example above contains one bug: The ${PREFIX} is a properly quoted shell expression, but there is the C compiler after it, which also expects a properly quoted string (this time in C syntax). The version above is therefore only correct if ${PREFIX} does not have embedded backslashes or double quotes. If you want to allow these, you have to add another layer of quoting to each variable that is used as a C string literal. You cannot use the :Q operator for it, as this operator only works for the shell.

    • Whenever a variable can be empty, the :Q operator can have surprising results. Here are two completely different cases which can be solved with the same trick.

          EMPTY=                  # empty
          empty_test:
                  for i in a ${EMPTY:Q} c; do \
                          echo "$$i"; \
                  done
      
          for_test:
          .for i in a:\ a:\test.txt
                  echo ${i:Q}
                  echo "foo"
          .endfor
      

      The first example will only print two of the three lines we might have expected. This is because ${EMPTY:Q} expands to the empty string, which the shell cannot see. The workaround is to write ${EMPTY:Q}"". This pattern can be often found as ${TEST} -z ${VAR:Q} or as ${TEST} -f ${FNAME:Q} (both of these are wrong).

      The second example will only print three lines instead of four. The first line looks like a:\ echo foo. This is because the backslash of the value a:\ is interpreted as a line-continuation by make(1), which makes the second line the arguments of the echo(1) command from the first line. To avoid this, write ${i:Q}"".

    9.2.5. Workaround for a bug in BSD Make

    The pkgsrc bmake program does not handle the following assignment correctly. In case _othervar_ contains a ``-'' character, one of the closing braces is included in ${VAR} after this code executes.

        VAR:=   ${VAR:N${_othervar_:C/-//}}
    

    For a more complex code snippet and a workaround, see the package regress/make-quoting, testcase bug1.

    Chapter 10. PLIST issues

    The PLIST file contains a package's “packing list”, i.e. a list of files that belong to the package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the pkg_create(1) man page for a full list. This chapter addresses some issues that need attention when dealing with the PLIST file (or files, see below!).

    10.1. RCS ID

    Be sure to add a RCS ID line as the first thing in any PLIST file you write:

        @@comment $NetBSD$
    

    10.2. Semi-automatic PLIST generation

    You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See Section 14.16, “Other helpful targets” for more information on this target.

    10.3. Tweaking output of make print-PLIST

    If you have used any of the *-dirs packages, as explained in Section 10.8, “Sharing directories between packages”, you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with quoting.

    For example, to get all files inside the libdata/foo directory removed from the resulting PLIST:

        PRINT_PLIST_AWK+=       /^libdata\/foo/ { next; }
    

    And to get all the @@dirrm lines referring to a specific (shared) directory converted to @@comments:

        PRINT_PLIST_AWK+=       /^@@dirrm share\/specific/ { print "@@comment " $$0; next; }
    

    10.4. Variable substitution in PLIST

    A number of variables are substituted automatically in PLISTs when a package is installed on a system. This includes the following variables:

    ${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}

    Some packages like emacs and perl embed information about which architecture they were built on into the pathnames where they install their files. To handle this case, PLIST will be preprocessed before actually used, and the symbol “${MACHINE_ARCH}” will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf-created configure scripts.

    Legacy note

    There used to be a symbol “$ARCH” that was replaced by the output of uname -m, but that's no longer supported and has been removed.

    ${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}

    Some packages want to embed the OS name and version into some paths. To do this, use these variables in the PLIST:

    • ${OPSYS} - output of “uname -s

    • ${LOWER_OPSYS} - lowercase common name (eg. “solaris”)

    • ${OS_VERSION} - “uname -r

    For a complete list of values which are replaced by default, please look in bsd.pkg.mk (and search for PLIST_SUBST).

    If you want to change other variables not listed above, you can add variables and their expansions to this variable in the following way, similar to MESSAGE_SUBST (see Section 8.5, “Optional files”):

        PLIST_SUBST+=   SOMEVAR="somevalue"
    

    This replaces all occurrences of “${SOMEVAR}” in the PLIST with “somevalue”.

    10.5. Man page compression

    Man pages should be installed in compressed form if MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix “.gz” is appended/removed automatically for man pages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    10.6. Changing PLIST source with PLIST_SRC

    To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). The files are later concatenated using cat(1), and order of things is important.

    10.7. Platform-specific and differing PLISTs

    Some packages decide to install a different set of files based on the operating system being used. These differences can be automatically handled by using the following files:

    • PLIST.common

    • PLIST.${OPSYS}

    • PLIST.${MACHINE_ARCH}

    • PLIST.${OPSYS}-${MACHINE_ARCH}

    • PLIST.common_end

    10.8. Sharing directories between packages

    A “shared directory” is a directory where multiple (and unrelated) packages install files. These directories are problematic because you have to add special tricks in the PLIST to conditionally remove them, or have some centralized package handle them.

    Within pkgsrc, you'll find both approaches. If a directory is shared by a few unrelated packages, it's often not worth to add an extra package to remove it. Therefore, one simply does:

        @@unexec ${RMDIR} %D/path/to/shared/directory 2>/dev/null || ${TRUE}
    

    in the PLISTs of all affected packages, instead of the regular "@@dirrm" line.

    However, if the directory is shared across many packages, two different solutions are available:

    1. If the packages have a common dependency, the directory can be removed in that. For example, see textproc/scrollkeeper, which removes the shared directory share/omf.

    2. If the packages using the directory are not related at all (they have no common dependencies), a *-dirs package is used.

    From now on, we'll discuss the second solution. To get an idea of the *-dirs packages available, issue:

        % cd .../pkgsrc
        % ls -d */*-dirs
    

    Their use from other packages is very simple. The USE_DIRS variable takes a list of package names (without the “-dirs” part) together with the required version number (always pick the latest one when writing new packages).

    For example, if a package installs files under share/applications, it should have the following line in it:

        USE_DIRS+=      xdg-1.1
    

    After regenerating the PLIST using make print-PLIST, you should get the right (commented out) lines.

    Note that even if your package is using $X11BASE, it must not depend on the *-x11-dirs packages. Just specify the name without that part and pkgsrc (in particular, mk/dirs.mk) will take care of it.

    Chapter 11. Buildlink methodology

    Buildlink is a framework in pkgsrc that controls what headers and libraries are seen by a package's configure and build processes. This is implemented in a two step process:

    1. Symlink headers and libraries for dependencies into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    2. Create wrapper scripts that are used in place of the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    This normalizes the environment in which a package is built so that the package may be built consistently despite what other software may be installed. Please note that the normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- buildlink3 is designed to insulate the package build from non-system-supplied software.

    11.1. Converting packages to use buildlink3

    The process of converting packages to use the buildlink3 framework (“bl3ifying”) is fairly straightforward. The things to keep in mind are:

    1. Ensure that the build always calls the wrapper scripts instead of the actual toolchain. Some packages are tricky, and the only way to know for sure is the check ${WRKDIR}/.work.log to see if the wrappers are being invoked.

    2. Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files relative to “pkg_info -qp pkgname”.

    3. Remember that only the buildlink3.mk files that you list in a package's Makefile are added as dependencies for that package.

    If a dependency on a particular package is required for its libraries and headers, then we replace:

        DEPENDS+=   foo>=1.1.0:../../category/foo
    

    with

        .include "../../category/foo/buildlink3.mk"
    

    The buildlink3.mk files usually define the required dependencies. If you need a newer version of the dependency when using buildlink3.mk files, then you can define it in your Makefile; for example:

        BUILDLINK_API_DEPENDS.foo+=   foo>=1.1.0
        .include "../../category/foo/buildlink3.mk"
    

    There are several buildlink3.mk files in pkgsrc/mk that handle special package issues:

    • bdb.buildlink3.mk chooses either the native or a pkgsrc Berkeley DB implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    • curses.buildlink3.mk: If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    • krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between adding a dependency on Heimdal or MIT-krb5 for packages that require a Kerberos 5 implementation.

    • motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif.

    • oss.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API.

    • pgsql.buildlink3.mk will accept either Postgres 7.3 or 7.4, whichever is found installed. See the file for more information.

    • pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed.

    • xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    The comments in those buildlink3.mk files provide a more complete description of how to use them properly.

    11.2. Writing buildlink3.mk files

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    To generate an initial buildlink3.mk file for further editing, Rene Hexel's pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    % cd pkgsrc/category/pkgdir
    % createbuildlink >buildlink3.mk
    

    11.2.1. Anatomy of a buildlink3.mk file

    The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

        # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $
    
        BUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH}+
        TIFF_BUILDLINK3_MK:=    ${TIFF_BUILDLINK3_MK}+
    
        .if !empty(BUILDLINK_DEPTH:M+)
        BUILDLINK_DEPENDS+=     tiff
        .endif
    
        BUILDLINK_PACKAGES:=    ${BUILDLINK_PACKAGES:Ntiff}
        BUILDLINK_PACKAGES+=    tiff
    
        .if !empty(TIFF_BUILDLINK3_MK:M+)
        BUILDLINK_API_DEPENDS.tiff+=        tiff>=3.6.1
        BUILDLINK_PKGSRCDIR.tiff?=      ../../graphics/tiff
        .endif  # TIFF_BUILDLINK3_MK
    
        .include "../../devel/zlib/buildlink3.mk"
        .include "../../graphics/jpeg/buildlink3.mk"
    
        BUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH:S/+$//}
    

    The header and footer manipulate BUILDLINK_DEPTH, which is common across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    The first section controls if the dependency on pkg is added. BUILDLINK_DEPENDS is the global list of packages for which dependencies are added by buildlink3.

    The second section advises pkgsrc that the buildlink3.mk file for pkg has been included at some point. BUILDLINK_PACKAGES is the global list of packages for which buildlink3.mk files have been included. It must always be appended to within a buildlink3.mk file.

    The third section is protected from multiple inclusion and controls how the dependency on pkg is added. Several important variables are set in the section:

    • BUILDLINK_API_DEPENDS.pkg is the actual dependency recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the first version of the package that had an API change.

    • BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc directory.

    • BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to “build”. By default, the full dependency is used.

    • BUILDLINK_INCDIRS.pkg and BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These default to “include” and “lib” respectively.

    • BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The “-I” option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

    The following variables are all optionally defined within this second section (protected against multiple inclusion) and control which package files are symlinked into ${BUILDLINK_DIR} and how their names are transformed during the symlinking:

    • BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

    • BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The resulting files are to be symlinked into ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    • BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default for overwrite packages, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib directories.

    • BUILDLINK_TRANSFORM.pkg (not shown above) is a list of sed arguments used to transform the name of the source filename into a destination filename, e.g. -e "s|/curses.h|/ncurses.h|g".

    The last section includes any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included.

    11.2.2. Updating BUILDLINK_API_DEPENDS.pkg in buildlink3.mk files

    The situation that requires increasing the dependency listed in BUILDLINK_API_DEPENDS.pkg after a package update is when the API or interface to the header files change.

    In this case, BUILDLINK_API_DEPENDS.pkg should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_API_DEPENDS.pkg adjusted, too. This is needed so pkgsrc will require the correct package dependency and not settle for an older one when building the source.

    BUILDLINK_ABI_DEPENDS.pkg should be increased when the binary interface or sonames (major number of the library version) of any installed shared libraries change. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

    See Section 16.1.4, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_ABI_DEPENDS and ABI_DEPENDS definitions.

    Please take careful consideration before adjusting BUILDLINK_API_DEPENDS.pkg or BUILDLINK_ABI_DEPENDS.pkg as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies.

    Also it is not needed to set BUILDLINK_ABI_DEPENDS.pkg when it is identical to BUILDLINK_API_DEPENDS.pkg.

    11.3. Writing builtin.mk files

    Some packages in pkgsrc install headers and libraries that coincide with headers and libraries present in the base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

    The only requirements of a builtin.mk file for pkg are:

    1. It should set USE_BUILTIN.pkg to either “yes” or “no” after it is included.

    2. It should not override any USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    3. It should be written to allow multiple inclusion. This is very important and takes careful attention to Makefile coding.

    11.3.1. Anatomy of a builtin.mk file

    The following is the recommended template for builtin.mk files:

        .if !defined(IS_BUILTIN.foo)
        #
        # IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo"
        # genuinely exists in the system or not.
        #
        IS_BUILTIN.foo?=        no
    
        # BUILTIN_PKG.foo should be set here if "foo" is built-in and its package
        # version can be determined.
        #
        .  if !empty(IS_BUILTIN.foo:M[yY][eE][sS])
        BUILTIN_PKG.foo?=       foo-1.0
        .  endif
        .endif  # IS_BUILTIN.foo
    
        .if !defined(USE_BUILTIN.foo)
        USE_BUILTIN.foo?=       ${IS_BUILTIN.foo}
        .  if defined(BUILTIN_PKG.foo)
        .    for _depend_ in ${BUILDLINK_API_DEPENDS.foo}
        .      if !empty(USE_BUILTIN.foo:M[yY][eE][sS])
        USE_BUILTIN.foo!=                                                       \
              if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo}; then     \
                      ${ECHO} "yes";                                            \
              else                                                              \
                      ${ECHO} "no";                                             \
              fi
        .      endif
        .    endfor
        .  endif
        .endif  # USE_BUILTIN.foo
    
        CHECK_BUILTIN.foo?=     no
        .if !empty(CHECK_BUILTIN.foo:M[nN][oO])
        #
        # Here we place code that depends on whether USE_BUILTIN.foo is set to
        # "yes" or "no".
        #
        .endif  # CHECK_BUILTIN.foo
    

    The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be “yes” if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

    The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is “yes”). This variable is only used internally within the builtin.mk file.

    The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_API_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_API_DEPENDS.pkg. USE_BUILTIN.pkg must be set to the correct value by the end of the builtin.mk file. Note that USE_BUILTIN.pkg may be “yes” even if IS_BUILTIN.pkg is “no” because we may make the determination that the built-in version of the software is similar enough to be used as a replacement.

    The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding additional dependency restrictions and listing additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

    11.3.2. Global preferences for native or pkgsrc software

    When building packages, it's possible to choose whether to set a global preference for using either the built-in (native) version or the pkgsrc version of software to satisfy a dependency. This is controlled by setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either “yes”, “no”, or a list of packages. PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

        PREFER_PKGSRC=  yes
        PREFER_NATIVE=  getopt skey tcp_wrappers
    

    A package must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    Chapter 12. The pkginstall framework

    This chapter describes the framework known as pkginstall, whose key features are:

    • Generic installation and manipulation of directories and files outside the pkgsrc-handled tree, LOCALBASE.

    • Automatic handling of configuration files during installation, provided that packages are correctly designed.

    • Generation and installation of system startup scripts.

    • Registration of system users and groups.

    • Registration of system shells.

    • Automatic updating of fonts databases.

    The following sections inspect each of the above points in detail.

    You may be thinking that many of the things described here could be easily done with simple code in the package's post-installation target (post-install). This is incorrect, as the code in them is only executed when building from source. Machines using binary packages could not benefit from it at all (as the code itself could be unavailable). Therefore, the only way to achieve any of the items described above is by means of the installation scripts, which are automatically generated by pkginstall.

    12.1. Files and directories outside the installation prefix

    As you already know, the PLIST file holds a list of files and directories that belong to a package. The names used in it are relative to the installation prefix (${PREFIX}), which means that it cannot register files outside this directory (absolute path names are not allowed). Despite this restriction, some packages need to install files outside this location; e.g., under ${VARBASE} or ${PKG_SYSCONFDIR}.

    The only way to achieve this is to create such files during installation time by using the installation scripts. These scripts can run arbitrary commands, so they have the potential to create and manage files anywhere in the file system. Here is where pkginstall comes into play: it provides generic scripts to abstract the manipulation of such files and directories based on variables set in the package's Makefile. The rest of this section describes these variables.

    12.1.1. Directory manipulation

    The following variables can be set to request the creation of directories anywhere in the file system:

    • MAKE_DIRS and OWN_DIRS contain a list of directories that should be created and should attempt to be destroyed by the installation scripts. The difference between the two is that the latter prompts the administrator to remove any directories that may be left after deinstallation (because they were not empty), while the former does not.

    • MAKE_DIRS_PERMS and OWN_DIRS_PERMS contain a list of tuples describing which directories should be created and should attempt to be destroyed by the installation scripts. Each tuple holds the following values, separated by spaces: the directory name, its owner, its group and its numerical mode. For example:

          MAKE_DIRS_PERMS+=         ${VARBASE}/foo/private ${ROOT_USER} ${ROOT_GROUP} 0700
      

      The difference between the two is exactly the same as their non-PERMS counterparts.

    12.1.2. File manipulation

    Creating non-empty files outside the installation prefix is tricky because the PLIST forces all files to be inside it. To overcome this problem, the only solution is to extract the file in the known place (i.e., inside the installation prefix) and copy it to the appropriate location during installation (done by the installation scripts generated by pkginstall). We will call the former the master file in the following paragraphs, which describe the variables that can be used to automatically and consistently handle files outside the installation prefix:

    • CONF_FILES and SUPPORT_FILES are pairs of master and target files. During installation time, the master file is copied to the target one if and only if the latter does not exist. Upon deinstallation, the target file is removed provided that it was not modified by the installation.

      The difference between the two is that the latter prompts the administrator to remove any files that may be left after deinstallation (because they were not empty), while the former does not.

    • CONF_FILES_PERMS and SUPPORT_FILES_PERMS contain tuples describing master files as well as their target locations. For each of them, it also specifies their owner, their group and their numeric permissions, in this order. For example:

          SUPPORT_FILES_PERMS+= ${PREFIX}/share/somefile ${VARBASE}/somefile ${ROOT_USER} ${ROOT_GROUP} 0700
      

      The difference between the two is exactly the same as their non-PERMS counterparts.

    12.2. Configuration files

    Configuration files are special in the sense that they are installed in their own specific directory, PKG_SYSCONFDIR, and need special treatment during installation (most of which is automated by pkginstall). The main concept you must bear in mind is that files marked as configuration files are automatically copied to the right place (somewhere inside PKG_SYSCONFDIR) during installation if and only if they didn't exist before. Similarly, they will not be removed if they have local modifications. This ensures that administrators never lose any custom changes they may have made.

    12.2.1. How PKG_SYSCONFDIR is set

    As said before, the PKG_SYSCONFDIR variable specifies where configuration files shall be installed. Its contents are set based upon the following variables:

    • PKG_SYSCONFBASE: The configuration's root directory. Defaults to ${PREFIX}/etc although it may be overridden by the user to point to his preferred location (e.g., /etc, /etc/pkg, etc.). Packages must not use it directly.

    • PKG_SYSCONFSUBDIR: A subdirectory of PKG_SYSCONFBASE under which the configuration files for the package being built shall be installed. The definition of this variable only makes sense in the package's Makefile (i.e., it is not user-customizable).

      As an example, consider the Apache package, www/apache2, which places its configuration files under the httpd/ subdirectory of PKG_SYSCONFBASE. This should be set in the package Makefile.

    • PKG_SYSCONFVAR: Specifies the name of the variable that holds this package's configuration directory (if different from PKG_SYSCONFBASE). It defaults to PKGBASE's value, and is always prefixed with PKG_SYSCONFDIR.

    • PKG_SYSCONFDIR.${PKG_SYSCONFVAR}: Holds the directory where the configuration files for the package identified by PKG_SYSCONFVAR's shall be placed.

    Based on the above variables, pkginstall determines the value of PKG_SYSCONFDIR, which is the only variable that can be used within a package to refer to its configuration directory. The algorithm used to set its value is basically the following:

    1. If PKG_SYSCONFDIR.${PKG_SYSCONFVAR} is set, its value is used.

    2. If the previous variable is not defined but PKG_SYSCONFSUBDIR is set in the package's Makefile, the resulting value is ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}.

    3. Otherwise, it is set to ${PKG_SYSCONFBASE}.

    It is worth mentioning that ${PKG_SYSCONFDIR} is automatically added to OWN_DIRS. See Section 12.1.1, “Directory manipulation” what this means.

    12.2.2. Telling the software where configuration files are

    Given that pkgsrc (and users!) expect configuration files to be in a known place, you need to teach each package where it shall install its files. In some cases you will have to patch the package Makefiles to achieve it. If you are lucky, though, it may be as easy as passing an extra flag to the configuration script; this is the case of GNU Autoconf- generated files:

        CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
    

    Note that this specifies where the package has to look for its configuration files, not where they will be originally installed (although the difference is never explicit, unfortunately).

    12.2.3. Patching installations

    As said before, pkginstall automatically handles configuration files. This means that the packages themselves must not touch the contents of ${PKG_SYSCONFDIR} directly. Bad news is that many software installation scripts will, out of the box, mess with the contents of that directory. So what is the correct procedure to fix this issue?

    You must teach the package (usually by manually patching it) to install any configuration files under the examples hierarchy, share/examples/${PKGBASE}/. This way, the PLIST registers them and the administrator always has the original copies available.

    Once the required configuration files are in place (i.e., under the examples hierarchy), the pkginstall framework can use them as master copies during the package installation to update what is in ${PKG_SYSCONFDIR}. To achieve this, the variables CONF_FILES and CONF_FILES_PERMS are used. Check out Section 12.1.2, “File manipulation” for information about their syntax and their purpose. Here is an example, taken from the mail/mutt package:

        EGDIR=        ${PREFIX}/share/doc/mutt/samples
        CONF_FILES=   ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc
    

    Note that the EGDIR variable is specific to that package and has no meaning outside it.

    12.2.4. Disabling handling of configuration files

    The automatic copying of config files can be toggled by setting the environment variable PKG_CONFIG prior to package installation.

    12.3. System startup scripts

    System startup scripts are special files because they must be installed in a place known by the underlying OS, usually outside the installation prefix. Therefore, the same rules described in Section 12.1, “Files and directories outside the installation prefix” apply, and the same solutions can be used. However, pkginstall provides a special mechanism to handle these files.

    In order to provide system startup scripts, the package has to:

    1. Store the script inside ${FILESDIR}, with the .sh suffix appended. Considering the print/cups package as an example, it has a cupsd.sh in its files directory.

    2. Tell pkginstall to handle it, appending the name of the script, without its extension, to the RCD_SCRIPTS variable. Continuing the previous example:

          RCD_SCRIPTS+=   cupsd
      

    Once this is done, pkginstall will do the following steps for each script in an automated fashion:

    1. Process the file found in the files directory applying all the substitutions described in the FILES_SUBST variable.

    2. Copy the script from the files directory to the examples hierarchy, ${PREFIX}/share/examples/rc.d/. Note that this master file must be explicitly registered in the PLIST.

    3. Add code to the installation scripts to copy the startup script from the examples hierarchy into the system-wide startup scripts directory.

    12.3.1. Disabling handling of system startup scripts

    The automatic copying of config files can be toggled by setting the environment variable PKG_RCD_SCRIPTS prior to package installation. Note that the scripts will be always copied inside the examples hierarchy, ${PREFIX}/share/examples/rc.d/, no matter what the value of this variable is.

    12.4. System users and groups

    If a package needs to create special users and/or groups during installation, it can do so by using the pkginstall framework.

    Users can be created by adding entries to the PKG_USERS variable. Each entry has the following syntax:

        user:group
    

    Further specification of user details may be done by setting per-user variables. PKG_UID.user is the numeric UID for the user. PKG_GECOS.user is the user's description or comment. PKG_HOME.user is the user's home directory, and defaults to /nonexistent if not specified. PKG_SHELL.user is the user's shell, and defaults to /sbinno/login if not specified.

    Similarly, groups can be created by adding entries to the PKG_GROUPS variable, whose syntax is:

        group
    

    The numeric GID of the group may be set by defining PKG_GID.group.

    If a package needs to create the users and groups at an earlier stage, then it can set USERGROUP_PHASE to either configure or build to indicate the phase before which the users and groups are created. In this case, the numeric UIDs and GIDs of the created users and groups are automatically hardcoded into the final installation scripts.

    12.5. System shells

    Packages that install system shells should register them in the shell database, /etc/shells, to make things easier to the administrator. This must be done from the installation scripts to keep binary packages working on any system. pkginstall provides an easy way to accomplish this task.

    When a package provides a shell interpreter, it has to set the PKG_SHELL variable to its absolute file name. This will add some hooks to the installation scripts to handle it. Consider the following example, taken from shells/zsh:

        PKG_SHELL=      ${PREFIX}/bin/zsh
    

    12.5.1. Disabling shell registration

    The automatic registration of shell interpreters can be disabled by the administrator by setting the PKG_REGISTER_SHELLS environment variable to NO.

    12.6. Fonts

    Packages that install X11 fonts should update the database files that index the fonts within each fonts directory. This can easily be accomplished within the pkginstall framework.

    When a package installs X11 fonts, it must list the directories in which fonts are installed in the FONTS_DIRS.type variables, where type can be one of “ttf”, “type1” or “x11”. This will add hooks to the installation scripts to run the appropriate commands to update the fonts database files within each of those directories. For convenience, if the directory path is relative, it is taken to be relative to the package's installation prefix. Consider the following example, taken from fonts/dbz-ttf:

        FONTS_DIRS.ttf= ${PREFIX}/lib/X11/fonts/TTF
    

    12.6.1. Disabling automatic update of the fonts databases

    The automatic update of fonts databases can be disabled by the administrator by setting the PKG_UPDATE_FONTS_DB environment variable to NO.

    Chapter 13. Options handling

    Many packages have the ability to be built to support different sets of features. bsd.options.mk is a framework in pkgsrc that provides generic handling of those options that determine different ways in which the packages can be built. It's possible for the user to specify exactly which sets of options will be built into a package or to allow a set of global default options apply.

    13.1. Global default options

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of the options that should be built into every package if that option is supported. This variable should be set in /etc/mk.conf.

    13.2. Converting packages to use bsd.options.mk

    The following example shows how bsd.options.mk should be used by the hypothetical ``wibble'' package, either in the package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

        PKG_OPTIONS_VAR=                PKG_OPTIONS.wibble
        PKG_SUPPORTED_OPTIONS=          wibble-foo ldap
        PKG_OPTIONS_OPTIONAL_GROUPS=    database
        PKG_OPTIONS_GROUP.database=     mysql pgsql
        PKG_SUGGESTED_OPTIONS=          wibble-foo
        PKG_OPTIONS_LEGACY_VARS+=       WIBBLE_USE_OPENLDAP:ldap
        PKG_OPTIONS_LEGACY_OPTS+=       foo:wibble-foo
    
        .include "../../mk/bsd.prefs.mk"
    
        # this package was previously named wibble2
        .if defined(PKG_OPTIONS.wibble2)
        PKG_LEGACY_OPTIONS+=            ${PKG_OPTIONS.wibble2}
        PKG_OPTIONS_DEPRECATED_WARNINGS+= \
                "Deprecated variable PKG_OPTIONS.wibble2 used, use ${PKG_OPTIONS_VAR instead."
        .endif
    
        .include "../../mk/bsd.options.mk"
    
        # Package-specific option-handling
    
        ###
        ### FOO support
        ###
        .if !empty(PKG_OPTIONS:Mwibble-foo)
        CONFIGURE_ARGS+=    --enable-foo
        .endif
    
        ###
        ### LDAP support
        ###
        .if !empty(PKG_OPTIONS:Mldap)
        .  include "../../databases/openldap/buildlink3.mk"
        CONFIGURE_ARGS+=    --enable-ldap=${BUILDLINK_PREFIX.openldap}
        .endif
    
        ###
        ### database support
        ###
        .if !empty(PKG_OPTIONS:Mmysql)
        .  include "../../mk/mysql.buildlink3.mk"
        .endif
        .if !empty(PKG_OPTIONS:Mpgsql)
        .  include "../../mk/pgsql.buildlink3.mk"
        .endif
    

    The first section contains the information about which build options are supported by the package, and any default options settings if needed.

    1. PKG_OPTIONS_VAR is the name of the make(1) variable that the user can set to override the default options. It should be set to PKG_OPTIONS.pkgbase. Do not set it to PKG_OPTIONS.${PKGBASE}, since PKGBASE is set after PKG_OPTIONS_VAR is used.

    2. PKG_SUPPORTED_OPTIONS is a list of build options supported by the package.

    3. PKG_OPTIONS_OPTIONAL_GROUPS is a list of names of groups of mutually exclusive options. The options in each group are listed in PKG_OPTIONS_GROUP.groupname. The most specific setting of any option from the group takes precedence over all other options in the group. Options from the groups will be automatically added to PKG_SUPPORTED_OPTIONS.

    4. PKG_OPTIONS_REQUIRED_GROUPS is like PKG_OPTIONS_OPTIONAL_GROUPS, but building the packages will fail if no option from the group is selected.

    5. PKG_OPTIONS_NONEMPTY_SETS is a list of names of sets of options. At least one option from each set must be selected. The options in each set are listed in PKG_OPTIONS_SET.setname. Options from the sets will be automatically added to PKG_SUPPORTED_OPTIONS. Building the package will fail if no option from the set is selected.

    6. PKG_SUGGESTED_OPTIONS is a list of build options which are enabled by default.

    7. PKG_OPTIONS_LEGACY_VARS is a list of “USE_VARIABLE:option” pairs that map legacy /etc/mk.conf variables to their option counterparts. Pairs should be added with “+=” to keep the listing of global legacy variables. A warning will be issued if the user uses a legacy variable.

    8. PKG_OPTIONS_LEGACY_OPTS is a list of “old-option:new-option” pairs that map options that have been renamed to their new counterparts. Pairs should be added with “+=” to keep the listing of global legacy options. A warning will be issued if the user uses a legacy option.

    9. PKG_LEGACY_OPTIONS is a list of options implied by deprecated variables used. This can be used for cases that neither PKG_OPTIONS_LEGACY_VARS nor PKG_OPTIONS_LEGACY_OPTS can handle, e. g. when PKG_OPTIONS_VAR is renamed.

    10. PKG_OPTIONS_DEPRECATED_WARNINGS is a list of warnings about deprecated variables or options used, and what to use instead.

    A package should never modify PKG_DEFAULT_OPTIONS or the variable named in PKG_OPTIONS_VAR. These are strictly user-settable. To suggest a default set of options, use PKG_SUGGESTED_OPTIONS.

    PKG_OPTIONS_VAR must be defined before including bsd.options.mk. If none of PKG_SUPPORTED_OPTIONS, PKG_OPTIONS_OPTIONAL_GROUPS, and PKG_OPTIONS_REQUIRED_GROUPS are defined (as can happen with platform-specific options if none of them is supported on the current platform), PKG_OPTIONS is set to the empty list and the package is otherwise treated as not using the options framework.

    After the inclusion of bsd.options.mk, the variable PKG_OPTIONS contains the list of selected build options, properly filtered to remove unsupported and duplicate options.

    The remaining sections contain the logic that is specific to each option. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS:

        .if !empty(PKG_OPTIONS:Moption)
    

    13.3. Option Names

    Options that enable similar features in different packages (like optional support for a library) should use a common name in all packages that support it (like the name of the library). If another package already has an option with the same meaning, use the same name.

    Options that enable features specific to one package, where it's unlikely that another (unrelated) package has the same (or a similar) optional feature, should use a name prefixed with pkgname-.

    If a group of related packages share an optional feature specific to that group, prefix it with the name of the “main” package (e. g. djbware-errno-hack).

    For new options, add a line to mk/defaults/options.description. Lines have two fields, separated by tab. The first field is the option name, the second its description. The description should be a whole sentence (starting with an uppercase letter and ending with a period) that describes what enabling the option does. E. g. “Enable ispell support.” The file is sorted by option names.

    Chapter 14. The build process

    14.1. Introduction

    This chapter gives a detailed description on how a package is built. Building a package is separated into different phases (for example fetch, build, install), all of which are described in the following sections. Each phase is splitted into so-called stages, which take the name of the containing phase, prefixed by one of pre-, do- or post-. (Examples are pre-configure, post-build.) Most of the actual work is done in the do-* stages.

    The basic steps for building a program are always the same. First the program's source (distfile) must be brought to the local system and then extracted. After any pkgsrc-specific patches to compile properly are applied, the software can be configured, then built (usually by compiling), and finally the generated binaries, etc. can be put into place on the system.

    14.2. Program location

    Before outlining the process performed by the NetBSD package system in the next section, here's a brief discussion on where programs are installed, and which variables influence this.

    The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the “cross” category. The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See Section 8.3, “patches/*” and Section 16.3.1, “Shared libraries - libtool” for more details.

    When choosing which of these variables to use, follow the following rules:

    • PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own installation path, use “${PREFIX}”.

    • LOCALBASE is where all non-X11 pkgs are installed. If you need to construct a -I or -L argument to the compiler to find includes and libraries installed by another non-X11 pkg, use “${LOCALBASE}”.

    • X11BASE is where the actual X11 distribution (from xsrc, etc.) is installed. When looking for standard X11 includes (not those installed by a pkg), use “${X11BASE}”.

    • X11-based packages are special in that they may be installed in either X11BASE or LOCALBASE.

      Usually, X11 packages should be installed under LOCALBASE whenever possible. Note that you will need to include ../../mk/x11.buildlink3.mk in them to request the presence of X11 and to get the right compilation flags.

      Even though, there are some packages that cannot be installed under LOCALBASE: those that come with app-defaults files. These packages are special and they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your package.

      Some notes: If you need to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to look in both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge package is enabled by default.

    • X11PREFIX should be used to refer to the installed location of an X11 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is installed.

    • If xpkgwedge is installed, it is possible to have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME=<package>”, and the make(1) variable DIRNAME will be set to the prefix of the installed package <package>, or “${X11PREFIX}” if the package is not installed.

      This is best illustrated by example.

      The following lines are taken from pkgsrc/wm/scwm/Makefile:

          EVAL_PREFIX+=           GTKDIR=gtk+
          CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE:Q}
          CONFIGURE_ARGS+=        --with-gtk-prefix=${GTKDIR:Q}
          CONFIGURE_ARGS+=        --enable-multibyte
      

      Specific defaults can be defined for the packages evaluated using EVAL_PREFIX, by using a definition of the form:

          GTKDIR_DEFAULT= ${LOCALBASE}
      

      where GTKDIR corresponds to the first definition in the EVAL_PREFIX pair.

    • Within ${PREFIX}, packages should install files according to hier(7), with the exception that manual pages go into ${PREFIX}/man, not ${PREFIX}/share/man.

    14.3. Directories used during the build process

    When building a package, a number of directories is used to store source files, temporary files, pkgsrc-internal files, and so on. These directories are explained here.

    Some of the directory variables contain relative pathnames. There are two common base directories for these relative directories: PKGSRCDIR/PKGPATH is used for directories that are pkgsrc-specific. WRKSRC is used for directories inside the package itself.

    PKGSRCDIR

    This is an absolute pathname that points to the pkgsrc root directory. Generally, you don't need it.

    PKGPATH

    This is a pathname relative to PKGSRCDIR that points to the current package.

    WRKDIR

    This is an absolute pathname pointing to the directory where all work takes place. The distfiles are extraced to this directory. It also contains temporary directories and log files used by the various pkgsrc frameworks, like buildlink or the wrappers.

    WRKSRC

    This is an absolute pathname pointing to the directory where the distfiles are extracted. It is usually a direct subdirectory of WRKDIR, and often it's the only directory entry that isn't hidden. This variable may be changed by a package Makefile.

    14.4. Running a phase

    You can run a particular phase by typing make phase, where phase is the name of the phase. This will automatically run all phases that are required for this phase. The default phase is build, that is, when you run make without parameters in a package directory, the package will be built, but not installed.

    14.5. The fetch phase

    This will check if the file(s) given in the variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

        ${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS}
    

    where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES.file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    14.6. The checksum phase

    After the distfile(s) are fetched, their checksum is generated and compared with the checksums stored in the distinfo file. If the checksums don't match, the build is aborted. This is to ensure the same distfile is used for building, and that the distfile wasn't changed, e.g. by some malign force, deliberately changed distfiles on the master distribution site or network lossage.

    14.7. The extract phase

    When the distfiles are present on the local system, they need to be extracted, as they usually come in the form of some compressed archive format.

    By default, all DISTFILES are extracted. If you only need some of them, you can set the EXTRACT_ONLY variable to the list of those files.

    Extracting the files is usually done by a little program, mk/scripts/extract, which already knows how to extract various archive formats, so most likely you will not need to change anything here. But if you need, the following variables may help you:

    EXTRACT_OPTS_{BIN,LHA,PAX,RAR,TAR,ZIP,ZOO}

    Use these variables to override the default options for an extract command, which are defined in mk/scripts/extract.

    EXTRACT_USING

    This variable can be set to pax, tar or an absolute pathname pointing to the command with which tar archives should be extracted.

    If the extract program doesn't serve your needs, you can also override the EXTRACT_CMD variable, which holds the command used for extracting the files. This command is executed in the ${WRKSRC} directory. During execution of this command, the shell variable extract_file holds the absolute pathname of the file that is going to be extracted.

    And if that still does not suffice, you can override the do-extract target in the package Makefile.

    14.8. The patch phase

    After extraction, all the patches named by the PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See Section 8.3, “patches/*” for more details.

    By default patch(1) is given special args to make it fail if the patches apply with some lines of fuzz. Please fix (regen) the patches so that they apply cleanly. The rationale behind this is that patches that don't apply cleanly may end up being applied in the wrong place, and cause severe harm there.

    14.9. The tools phase

    This is covered in Chapter 15, Tools needed for building or running.

    14.10. The wrapper phase

    This phase creates wrapper programs for the compilers and linkers. The following variables can be used to tweak the wrappers.

    ECHO_WRAPPER_MSG

    The command used to print progress messages. Does nothing by default. Set to ${ECHO} to see the progress messages.

    WRAPPER_DEBUG

    This variable can be set to yes (default) or no, depending on whether you want additional information in the wrapper log file.

    WRAPPER_UPDATE_CACHE

    This variable can be set to yes or no, depending on whether the wrapper should use its cache, which will improve the speed. The default value is yes, but is forced to no if the platform does not support it.

    WRAPPER_REORDER_CMDS

    A list of reordering commands. A reordering command has the form reorder:l:lib1:lib2. It ensures that that -llib1 occurs before -llib2.

    WRAPPER_TRANSFORM_CMDS

    A list of transformation commands. [TODO: investigate further]

    14.11. The configure phase

    Most pieces of software need information on the header files, system calls, and library routines which are available on the platform they run on. The process of determining this information is known as configuration, and is usually automated. In most cases, a script is supplied with the distfiles, and its invocation results in generation of header files, Makefiles, etc.

    If the package contains a configure script, this can be invoked by setting HAS_CONFIGURE to “yes”. If the configure script is a GNU autoconf script, you should set GNU_CONFIGURE to “yes” instead. What happens in the configure phase is roughly:

        .for d in ${CONFIGURE_DIRS}
                cd ${WRKSRC} && cd ${d} && env ${CONFIGURE_ENV} \
                    ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}
        .endfor
    

    CONFIGURE_DIRS (default: “.”) is a list of pathnames relative to WRKSRC. In each of these directories, the configure script is run with the environment CONFIGURE_ENV and arguments CONFIGURE_ARGS. The variables CONFIGURE_ENV, CONFIGURE_SCRIPT (default: “./configure”) and CONFIGURE_ARGS may all be changed by the package.

    If the program uses an Imakefile for configuration, the appropriate steps can be invoked by setting USE_IMAKE to “yes”. (If you only want the package installed in ${X11PREFIX} but xmkmf not being run, set USE_X11BASE instead.)

    14.12. The build phase

    For building a package, a rough equivalent of the following code is executed.

        .for d in ${BUILD_DIRS}
                cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \
                    ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} \
                        -f ${MAKEFILE} ${BUILD_TARGET}
        .endfor
    

    BUILD_DIRS (default: “.”) is a list of pathnames relative to WRKSRC. In each of these directories, MAKE_PROGRAM is run with the environment MAKE_ENV and arguments BUILD_MAKE_FLAGS. The variables MAKE_ENV, BUILD_MAKE_FLAGS, MAKEFILE and BUILD_TARGET may all be changed by the package.

    The default value of MAKE_PROGRAM is “gmake” if USE_TOOLS contains “gmake”, “make” otherwise. The default value of MAKEFILE is “Makefile”, and BUILD_TARGET defaults to “all”.

    14.13. The test phase

    [TODO]

    14.14. The install phase

    Once the build stage has completed, the final step is to install the software in public directories, so users can access the programs and files.

    In the install phase, a rough equivalent of the following code is executed. Additionally, before and after this code, much magic is performed to do consistency checks, registering the package, and so on.

        .for d in ${INSTALL_DIRS}
                cd ${WRKSRC} && cd ${d} && env ${MAKE_ENV} \
                    ${MAKE_PROGRAM} ${INSTALL_MAKE_FLAGS} \
                        -f ${MAKEFILE} ${BUILD_TARGET}
        .endfor
    

    The variable's meanings are analogous to the ones in the build phase. INSTALL_DIRS defaults to BUILD_DIRS. INSTALL_TARGET is “install” by default, plus “install.man” if USE_IMAKE is defined.

    In the install phase, the following variables are useful. They are all variations of the install(1) command that have the owner, group and permissions preset. INSTALL is the plain install command. The specialized variants, together with their intended use, are:

    INSTALL_PROGRAM_DIR

    directories that contain binaries

    INSTALL_SCRIPT_DIR

    directories that contain scripts

    INSTALL_LIB_DIR

    directories that contain shared and static libraries

    INSTALL_DATA_DIR

    directories that contain data files

    INSTALL_MAN_DIR

    directories that contain man pages

    INSTALL_PROGRAM

    binaries that can be stripped from debugging symbols

    INSTALL_SCRIPT

    binaries that cannot be stripped

    INSTALL_GAME

    game binaries

    INSTALL_LIB

    shared and static libraries

    INSTALL_DATA

    data files

    INSTALL_GAME_DATA

    data files for games

    INSTALL_MAN

    man pages

    Some other variables are:

    INSTALLATION_DIRS

    A list of directories relative to PREFIX that are created by pkgsrc at the beginning of the install phase. If this variable is set, NO_MTREE=“yes” is assumed, which means that the package claims to create all needed directories itself before installing files to it. Therefore this variable should only be set in Makefiles that are under control of the package's author.

    14.15. The package phase

    [TODO]

    14.16. Other helpful targets

    pre/post-*

    For any of the main targets described in the previous section, two auxiliary targets exist with “pre-” and “post-” used as a prefix for the main target's name. These targets are invoked before and after the main target is called, allowing extra configuration or installation steps be performed from a package's Makefile, for example, which a program's configure script or install target omitted.

    do-*

    Should one of the main targets do the wrong thing, and should there be no variable to fix this, you can redefine it with the do-* target. (Note that redefining the target itself instead of the do-* target is a bad idea, as the pre-* and post-* targets won't be called anymore, etc.) You will not usually need to do this.

    reinstall

    If you did a make install and you noticed some file was not installed properly, you can repeat the installation with this target, which will ignore the “already installed” flag.

    deinstall

    This target does a pkg_delete(1) in the current directory, effectively de-installing the package. The following variables can be used to tune the behaviour:

    PKG_VERBOSE

    Add a "-v" to the pkg_delete(1) command.

    DEINSTALLDEPENDS

    Remove all packages that require (depend on) the given package. This can be used to remove any packages that may have been pulled in by a given package, e.g. if make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, this is likely to remove whole KDE. Works by adding “-R” to the pkg_delete(1) command line.

    update

    This target causes the current package to be updated to the latest version. The package and all depending packages first get de-installed, then current versions of the corresponding packages get compiled and installed. This is similar to manually noting which packages are currently installed, then performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    You can use the “update” target to resume package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise, you lose the ability to automatically update the current package along with the dependent packages you have installed.

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    The following variables can be used either on the command line or in /etc/mk.conf to alter the behaviour of make update:

    UPDATE_TARGET

    Install target to recursively use for the updated package and the dependent packages. Defaults to DEPENDS_TARGET if set, “install” otherwise for make update. e.g. make update UPDATE_TARGET=package

    NOCLEAN

    Don't clean up after updating. Useful if you want to leave the work sources of the updated packages around for inspection or other purposes. Be sure you eventually clean up the source tree (see the “clean-update” target below) or you may run into troubles with old source code still lying around on your next make or make update.

    REINSTALL

    Deinstall each package before installing (making DEPENDS_TARGET). This may be necessary if the “clean-update” target (see below) was called after interrupting a running make update.

    DEPENDS_TARGET

    Allows you to disable recursion and hardcode the target for packages. The default is “update” for the update target, facilitating a recursive update of prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    clean-update

    Clean the source tree for all packages that would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    If you are unsure about whether your tree is clean, you can either perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running make update for the first time, otherwise you lose all the packages you wanted to update!):

    # make clean-update
    # make clean CLEANDEPENDS=YES
    # make update
    

    The following variables can be used either on the command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    CLEAR_DIRLIST

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see above).

    info

    This target invokes pkg_info(1) for the current package. You can use this to check which version of a package is installed.

    readme

    This target generates a README.html file, which can be viewed using a browser such as www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    readme-all

    Use this target to create a file README-all.html which contains a list of all packages currently available in the NetBSD Packages Collection, together with the category they belong to and a short description. This file is compiled from the pkgsrc/*/README.html files, so be sure to run this after a make readme.

    cdrom-readme

    This is very much the same as the “readme” target (see above), but is to be used when generating a pkgsrc tree to be written to a CD-ROM. This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

    show-distfiles

    This target shows which distfiles and patchfiles are needed to build the package. (DISTFILES and PATCHFILES, but not patches/*)

    show-downlevel

    This target shows nothing if the package is not installed. If a version of this package is installed, but is not the version provided in this version of pkgsrc, then a warning message is displayed. This target can be used to show which of your installed packages are downlevel, and so the old versions can be deleted, and the current ones added.

    show-pkgsrc-dir

    This target shows the directory in the pkgsrc hierarchy from which the package can be built and installed. This may not be the same directory as the one from which the package was installed. This target is intended to be used by people who may wish to upgrade many packages on a single host, and can be invoked from the top-level pkgsrc Makefile by using the “show-host-specific-pkgs” target.

    show-installed-depends

    This target shows which installed packages match the current package's DEPENDS. Useful if out of date dependencies are causing build problems.

    check-shlibs

    After a package is installed, check all its binaries and (on ELF platforms) shared libraries to see if they find the shared libs they need. Run by default if PKG_DEVELOPER is set in /etc/mk.conf.

    print-PLIST

    After a “make install” from a new or upgraded pkg, this prints out an attempt to generate a new PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is strongly recommended to review the result before putting it into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

    If the package installs files via tar(1) or other methods that don't update file access times, be sure to add these files manually to your PLIST, as the “find -newer” command used by this target won't catch them!

    See Section 10.3, “Tweaking output of make print-PLIST for more information on this target.

    bulk-package

    Used to do bulk builds. If an appropriate binary package already exists, no action is taken. If not, this target will compile, install and package it (and its depends, if PKG_DEPENDS is set properly. See Section 6.3.1, “Configuration”). After creating the binary package, the sources, the just-installed package and its required packages are removed, preserving free disk space.

    Beware that this target may deinstall all packages installed on a system!

    bulk-install

    Used during bulk-installs to install required packages. If an up-to-date binary package is available, it will be installed via pkg_add(1). If not, make bulk-package will be executed, but the installed binary won't be removed.

    A binary package is considered “up-to-date” to be installed via pkg_add(1) if:

    • None of the package's files (Makefile, ...) were modified since it was built.

    • None of the package's required (binary) packages were modified since it was built.

    Beware that this target may deinstall all packages installed on a system!

    Chapter 15. Tools needed for building or running

    The USE_TOOLS definition is used both internally by pkgsrc and also for individual packages to define what commands are needed for building a package (like BUILD_DEPENDS) or for later run-time of an installed packaged (such as DEPENDS). If the native system provides an adequate tool, then in many cases, a pkgsrc package will not be used.

    When building a package, the replacement tools are made available in a directory (as symlinks or wrapper scripts) that is early in the executable search path. Just like the buildlink system, this helps with consistent builds.

    A tool may be needed to help build a specific package. For example, perl, GNU make (gmake) or yacc may be needed.

    Also a tool may be needed, for example, because the native system's supplied tool may be inefficient for building a package with pkgsrc. For example, a package may need GNU awk, bison (instead of yacc) or a better sed.

    The tools used by a package can be listed by running make show-tools.

    15.1. Tools for pkgsrc builds

    The default set of tools used by pkgsrc is defined in bsd.pkg.mk. This includes standard Unix tools, such as: cat, awk, chmod, test, and so on. These can be seen by running: make show-var VARNAME=USE_TOOLS.

    If a package needs a specific program to build then the USE_TOOLS variable can be used to define the tools needed.

    15.2. Tools needed by packages

    In the following examples, the :pkgsrc means to use the pkgsrc version and not the native version for a build dependency. And the :run means that it is used for a run-time dependencies also (and becomes a DEPENDS). The default is a build dependency which can be set with :build. (So in this example, it is the same as gmake:build and pkg-config:build.)

    USE_TOOLS+=     mktemp:pkgsrc
    USE_TOOLS+=     gmake perl:run pkg-config
    

    When using the tools framework, a TOOLS_PATH.foo variable is defined which contains the full path to the appropriate tool. For example, TOOLS_PATH.bash could be “/bin/bash” on Linux systems.

    If you always need a pkgsrc version of the tool at run-time, then just use DEPENDS instead.

    15.3. Tools provided by platforms

    When improving or porting pkgsrc to a new platform, have a look at (or create) the corresponding platform specific make file fragment under pkgsrc/mk/tools/tools.${OPSYS}.mk which defines the name of the common tools. For example:

    .if exists(/usr/bin/bzcat)
    TOOLS_PLATFORM.bzcat?=          /usr/bin/bzcat
    .elif exists(/usr/bin/bzip2)
    TOOLS_PLATFORM.bzcat?=          /usr/bin/bzip2 -cd
    .endif
    
    TOOLS_PLATFORM.true?=           true                    # shell builtin
    

    Chapter 16. Making your package work

    Table of Contents

    16.1. General operation
    16.1.1. How to pull in variables from /etc/mk.conf
    16.1.2. Where to install documentation
    16.1.3. Restricted packages
    16.1.4. Handling dependencies
    16.1.5. Handling conflicts with other packages
    16.1.6. Packages that cannot or should not be built
    16.1.7. Packages which should not be deleted, once installed
    16.1.8. Handling packages with security problems
    16.1.9. How to handle compiler bugs
    16.1.10. How to handle incrementing versions when fixing an existing package
    16.1.11. Portability of packages
    16.2. Possible downloading issues
    16.2.1. Packages whose distfiles aren't available for plain downloading
    16.2.2. How to handle modified distfiles with the 'old' name
    d1166 5 a1170 3
    16.3. Configuration gotchas
    d1172 93 a1264 170
    16.3.1. Shared libraries - libtool
    16.3.2. Using libtool on GNU packages that already support libtool
    16.3.3. GNU Autoconf/Automake
    16.4. Building the package
    16.4.1. CPP defines
    16.4.2. Examples of CPP defines for some platforms
    16.4.3. Getting a list of CPP defines
    16.5. Package specific actions
    16.5.1. User interaction
    16.5.2. Handling licenses
    16.5.3. Installing score files
    16.5.4. Packages containing perl scripts
    16.5.5. Packages with hardcoded paths to other interpreters
    16.5.6. Packages installing perl modules
    16.5.7. Packages installing info files
    16.5.8. Packages installing man pages
    16.5.9. Packages installing GConf2 data files
    16.5.10. Packages installing scrollkeeper data files
    16.5.11. Packages installing X11 fonts
    16.5.12. Packages installing GTK2 modules
    16.5.13. Packages installing SGML or XML data
    16.5.14. Packages installing extensions to the MIME database
    16.5.15. Packages using intltool
    16.5.16. Packages installing startup scripts
    16.5.17. Packages installing TeX modules
    16.6. Feedback to the author

    16.1. General operation

    16.1.1. How to pull in variables from /etc/mk.conf

    The problem with package-defined variables that can be overridden via MAKECONF or /etc/mk.conf is that make(1) expands a variable as it is used, but evaluates preprocessor-like statements (.if, .ifdef and .ifndef) as they are read. So, to use any variable (which may be set in /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be included before that .if* statement.

    Rather than having a number of ad-hoc ways of including /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

        .include "../../mk/bsd.prefs.mk"
    
        .if defined(USE_MENUS)
        # ...
    d1267 57
    a1323 8
    
                

    If you wish to set the CFLAGS variable in /etc/mk.conf, please make sure to use:

        CFLAGS+=  -your -flags
    d1325 15
    a1339 156
    
                

    Using CFLAGS= (i.e. without the “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    16.1.2. Where to install documentation

    Documentation should be installed into ${PREFIX}/share/doc/${PKGBASE} or ${PREFIX}/share/doc/${PKGNAME} (the latter includes the version number of the package).

    16.1.3. Restricted packages

    Some licenses restrict how software may be re-distributed. In order to satisfy these restrictions, the package system defines five make variables that can be set to note these restrictions:

    • RESTRICTED

      This variable should be set whenever a restriction exists (regardless of its kind). Set this variable to a string containing the reason for the restriction.

    • NO_BIN_ON_CDROM

      Binaries may not be placed on CD-ROM. Set this variable to ${RESTRICTED} whenever a binary package may not be included on a CD-ROM.

    • NO_BIN_ON_FTP

      Binaries may not be placed on an FTP server. Set this variable to ${RESTRICTED} whenever a binary package may not not be made available on the Internet.

    • NO_SRC_ON_CDROM

      Distfiles may not be placed on CD-ROM. Set this variable to ${RESTRICTED} if re-distribution of the source code or other distfile(s) is not allowed on CD-ROMs.

    • NO_SRC_ON_FTP

      Distfiles may not be placed on FTP. Set this variable to ${RESTRICTED} if re-distribution of the source code or other distfile(s) via the Internet is not allowed.

    Please note that the use of NO_PACKAGE, IGNORE, NO_CDROM, or other generic make variables to denote restrictions is deprecated, because they unconditionally prevent users from generating binary packages!

    16.1.4. Handling dependencies

    Your package may depend on some other package being present - and there are various ways of expressing this dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, the USE_TOOLS definition, as well as dependencies via buildlink3.mk, which is the preferred way to handle dependencies, and which uses the variables named above. See Chapter 11, Buildlink methodology for more information.

    The basic difference between the two variables is as follows: The DEPENDS definition registers that pre-requisite in the binary package so it will be pulled in when the binary package is later installed, whilst the BUILD_DEPENDS definition does not, marking a dependency that is only needed for building the package.

    This means that if you only need a package present whilst you are building, it should be noted as a BUILD_DEPENDS.

    The format for a BUILD_DEPENDS and a DEPENDS definition is:

        <pre-req-package-name>:../../<category>/<pre-req-package>
    d1341 15
    a1355 20
    
                

    Please note that the “pre-req-package-name” may include any of the wildcard version numbers recognized by pkg_info(1).

    1. If your package needs another package's binaries or libraries to build or run, and if that package has a buildlink3.mk file available, use it:

          .include "../../graphics/jpeg/buildlink3.mk"
      d1357 15
      a1371 11
                      
    2. If your package needs to use another package to build itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

          BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf
      d1373 17
      a1389 12
                      
    3. If your package needs a library with which to link and again there is no buildlink3.mk file available, this is specified using the DEPENDS definition. For example:

          DEPENDS+=       xpm-3.4j:../../graphics/xpm
      d1391 497
      d1889 2
      a1890 4
                        

      You can also use wildcards in package dependences:

          DEPENDS+=       xpm-[0-9]*:../../graphics/xpm
      d1892 149
      a2040 22
      
                        

      Note that such wildcard dependencies are retained when creating binary packages. The dependency is checked when installing the binary package and any package which matches the pattern will be used. Wildcard dependencies should be used with care.

      The “-[0-9]*” should be used instead of “-*” to avoid potentially ambiguous matches such as “tk-postgresql” matching a “tk-*DEPENDS.

      Wildcards can also be used to specify that a package will only build against a certain minimum version of a pre-requisite:

          DEPENDS+=       tiff>=3.5.4:../../graphics/tiff
      d2042 76
      a2117 17
      
                        

      This means that the package will build against version 3.5.4 of the tiff library or newer. Such a dependency may be warranted if, for example, the API of the library has changed with version 3.5.4 and a package would not compile against an earlier version of tiff.

      Please note that such dependencies should only be updated if a package requires a newer pre-requisite, but not to denote recommendations such as ABI changes that do not prevent a package from building correctly. Such recommendations can be expressed using ABI_DEPENDS:

          ABI_DEPENDS+=   tiff>=3.6.1:../../graphics/tiff
      d2119 557
      a2675 56
      
                        

      In addition to the above DEPENDS line, this denotes that while a package will build against tiff>=3.5.4, at least version 3.6.1 is recommended. ABI_DEPENDS entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed).

      To ignore these ABI dependency recommendations and just use the required DEPENDS, set USE_ABI_DEPENDS=NO. This may make it easier and faster to update packages built using pkgsrc, since older compatible dependencies can continue to be used. This is useful for people who watch their rebuilds very carefully; it is not very good as a general-purpose hammer. If you use it, you need to be mindful of possible ABI changes, including those from the underlying OS.

      Packages that are built with recommendations ignored may not be uploaded to ftp.NetBSD.org by developers and should not be used across different systems that may have different versions of binary packages installed.

      For security fixes, please update the package vulnerabilities file. See Section 16.1.8, “Handling packages with security problems” for more information.

    4. If your package needs some executable to be able to run correctly and if there's no buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

          DEPENDS+=        teTeX-[0-9]*:../../print/teTeX
      d2677 10
      a2686 76
      
                        

      The comment about wildcard dependencies from previous paragraph applies here, too.

    If your package needs files from another package to build, add the relevant distribution files to DISTFILES, so they will be extracted automatically. See the print/ghostscript package for an example. (It relies on the jpeg sources being present in source form during the build.)

    Please also note the BUILD_USES_MSGFMT and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    16.1.5. Handling conflicts with other packages

    Your package may conflict with other packages a user might already have installed on his system, e.g. if your package installs the same set of files like another package in our pkgsrc tree.

    In this case you can set CONFLICTS to a space-separated list of packages (including version string) your package conflicts with.

    For example, x11/Xaw3d and x11/Xaw-Xpm install the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

        CONFLICTS=      Xaw-Xpm-[0-9]*
    d2688 10
    a2697 6
    
                

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

        CONFLICTS=      Xaw3d-[0-9]*
    d2699 20
    a2718 153
    
                

    Packages will automatically conflict with other packages with the name prefix and a different version string. “Xaw3d-1.5” e.g. will automatically conflict with the older version “Xaw3d-1.3”.

    16.1.6. Packages that cannot or should not be built

    There are several reasons why a package might be instructed to not build under certain circumstances. If the package builds and runs on most platforms, the exceptions should be noted with NOT_FOR_PLATFORM. If the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. Both ONLY_FOR_PLATFORM and NOT_FOR_PLATFORM are OS triples (OS-version-platform) that can use glob-style wildcards.

    If the package should be skipped (for example, because it provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive message.

    16.1.7. Packages which should not be deleted, once installed

    To ensure that a package may not be deleted, once it has been installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any binary package that is made from this pkgsrc entry. A “preserved” package will not be deleted using pkg_delete(1) unless the “-f” option is used.

    16.1.8. Handling packages with security problems

    When a vulnerability is found, this should be noted in localsrc/security/advisories/pkg-vulnerabilities, and after committing that file, use make upload in the same directory to update the file on ftp.NetBSD.org.

    After fixing the vulnerability by a patch, its PKGREVISION should be increased (this is of course not necessary if the problem is fixed by using a newer release of the software).

    Also, if the fix should be applied to the stable pkgsrc branch, be sure to submit a pullup request!

    Binary packages already on ftp.NetBSD.org will be handled semi-automatically by a weekly cron job.

    16.1.9. How to handle compiler bugs

    Some source files trigger bugs in the compiler, based on combinations of compiler version and architecture and almost always relation to optimisation being enabled. Common symptoms are gcc internal errors or never finishing compiling a file.

    Typically, a workaround involves testing the MACHINE_ARCH and compiler version, disabling optimisation for that file/MACHINE_ARCH/compiler combination, and documenting it in pkgsrc/doc/HACKS. See that file for a number of examples!

    16.1.10. How to handle incrementing versions when fixing an existing package

    When making fixes to an existing package it can be useful to change the version number in PKGNAME. To avoid conflicting with future versions by the original author, a “nb1”, “nb2”, ... suffix can be used on package versions by setting PKGREVISION=1 (2, ...). The “nb” is treated like a “.” by the pkg tools. e.g.

        DISTNAME=       foo-17.42
        PKGREVISION=    9
    d2720 93
    a2812 11
    
                

    will result in a PKGNAME of “foo-17.42nb9”.

    When a new release of the package is released, the PKGREVISION should be removed, e.g. on a new minor release of the above package, things should be like:

        DISTNAME=       foo-17.43
    d2814 316
    a3129 39
              

    16.1.11. Portability of packages

    One appealing feature of pkgsrc is that it runs on many different platforms. As a result, it is important to ensure, where possible, that packages in pkgsrc are portable. There are some particular details you should pay attention to while working on pkgsrc.

    16.1.11.1. ${INSTALL}, ${INSTALL_DATA_DIR}, ...

    The BSD-compatible install supplied with some operating systems will not perform more than one operation at a time. As such, you should call “${INSTALL}”, etc. like this:

        ${INSTALL_DATA_DIR} ${PREFIX}/dir1
        ${INSTALL_DATA_DIR} ${PREFIX}/dir2
    d3131 28
    a3158 52
                

    16.2. Possible downloading issues

    16.2.1. Packages whose distfiles aren't available for plain downloading

    If you need to download from a dynamic URL you can set DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

    If the download can't be automated, because the user must submit personal information to apply for a password, or must pay for the source, or whatever, you can set FETCH_MESSAGE to a list of lines that are displayed to the user before aborting the build. Example:

        FETCH_MESSAGE=  "Please download the files"
        FETCH_MESSAGE+= "    "${DISTFILES:Q}
        FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"."
    d3160 8
    a3167 117
              

    16.2.2. How to handle modified distfiles with the 'old' name

    Sometimes authors of a software package make some modifications after the software was released, and they put up a new distfile without changing the package's version number. If a package is already in pkgsrc at that time, the checksum will no longer match. The contents of the new distfile should be compared against the old one before changing anything, to make sure the distfile was really updated on purpose, and that no trojan horse or so crept in. Then, the correct way to work around this is to set DIST_SUBDIR to a unique directory name, usually based on PKGNAME_NOREV. In case this happens more often, PKGNAME can be used (thus including the nbX suffix) or a date stamp can be appended, like ${PKGNAME_NOREV}-YYYYMMDD. Do not forget regenerating the distinfo file after that, since it contains the DIST_SUBDIR path in the filenames. Furthermore, a mail to the package's authors seems appropriate telling them that changing distfiles after releases without changing the file names is not good practice.

    16.3. Configuration gotchas

    16.3.1. Shared libraries - libtool

    pkgsrc supports many different machines, with different object formats like a.out and ELF, and varying abilities to do shared library and dynamic loading at all. To accompany this, varying commands and options have to be passed to the compiler, linker, etc. to get the Right Thing, which can be pretty annoying especially if you don't have all the machines at your hand to test things. The devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform-independent.

    Here's how to use libtool in a pkg in seven simple steps:

    1. Add USE_LIBTOOL=yes to the package Makefile.

    2. For library objects, use “${LIBTOOL} --mode=compile ${CC}” in place of “${CC}”. You could even add it to the definition of CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

    3. For the linking of the library, remove any “ar”, “ranlib”, and “ld -Bshareable” commands, and instead use:

          ${LIBTOOL} --mode=link ${CC} -o ${.TARGET:.a=.la} ${OBJS:.o=.lo} \
              -rpath ${PREFIX}/lib -version-info major:minor
      d3169 13
      a3181 39
      
                        

      Note that the library is changed to have a .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include “-version-info”, especially when major and minor are zero, as libtool will otherwise strip off the shared library version.

      From the libtool manual:

          So, libtool library versions are described by three integers:
      
          CURRENT
              The most recent interface number that this library implements.
      
          REVISION
              The implementation number of the CURRENT interface.
      
          AGE
              The difference between the newest and oldest interfaces that
              this library implements.  In other words, the library implements
              all the interface numbers in the range from number `CURRENT -
              AGE' to `CURRENT'.
      
          If two libraries have identical CURRENT and AGE numbers, then the
          dynamic linker chooses the library with the greater REVISION number.
      d3183 226
      a3408 73
      
                        

      The “-release” option will produce different results for a.out and ELF (excluding symlinks) in only one case. An ELF library of the form “libfoo-release.so.x.y” will have a symlink of “libfoo.so.x.y” on an a.out platform. This is handled automatically.

      The “-rpath argument” is the install directory of the library being built.

      In the PLIST, include only the .la file, the other files will be added automatically.

    4. When linking shared object (.so) files, i.e. files that are loaded via dlopen(3), NOT shared libraries, use “-module -avoid-version” to prevent them getting version tacked on.

      The PLIST file gets the foo.so entry.

    5. When linking programs that depend on these libraries before they are installed, preface the cc(1) or ld(1) line with “${LIBTOOL} --mode=link”, and it will find the correct libraries (static or shared), but please be aware that libtool will not allow you to specify a relative path in -L (such as “-L../somelib”), because it expects you to change that argument to be the .la file. e.g.

          ${LIBTOOL} --mode=link ${CC} -o someprog -L../somelib -lsomelib
      d3410 152
      d3563 4
      a3566 5
                        

      should be changed to:

          ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la
      d3568 14
      a3581 21
      
                        

      and it will do the right thing with the libraries.

    6. When installing libraries, preface the install(1) or cp(1) command with “${LIBTOOL} --mode=install”, and change the library name to .la. e.g.

          ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib
      d3583 12
      d3596 7
      a3602 131
                        

      This will install the static .a, shared library, any needed symlinks, and run ldconfig(8).

    7. In your PLIST, include only the .la file (this is a change from previous behaviour).

    16.3.2. Using libtool on GNU packages that already support libtool

    Add USE_LIBTOOL=yes to the package Makefile. This will override the package's own libtool in most cases. For older libtool using packages, libtool is made by ltconfig script during the do-configure step; you can check the libtool script location by doing make configure; find work*/ -name libtool.

    LIBTOOL_OVERRIDE specifies which libtool scripts, relative to WRKSRC, to override. By default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the package's libtool script(s), set it as appropriate.

    If you do not need *.a static libraries built and installed, then use SHLIBTOOL_OVERRIDE instead.

    If your package makes use of the platform-independent library for loading dynamic shared objects, that comes with libtool (libltdl), you should include devel/libltdl/buildlink3.mk.

    Some packages use libtool incorrectly so that the package may not work or build in some circumstances. Some of the more common errors are:

    • The inclusion of a shared object (-module) as a dependent library in an executable or library. This in itself isn't a problem if one of two things has been done:

      1. The shared object is named correctly, i.e. libfoo.la, not foo.la

      2. The -dlopen option is used when linking an executable.

    • The use of libltdl without the correct calls to initialisation routines. The function lt_dlinit() should be called and the macro LTDL_SET_PRELOADED_SYMBOLS included in executables.

    16.3.3. GNU Autoconf/Automake

    If a package needs GNU autoconf or automake to be executed to regenerate the configure script and Makefile.in makefile templates, then they should be executed in a pre-configure target.

    For packages that need only autoconf:

        AUTOCONF_REQD=  2.50            # if default version is not good enough
        USE_TOOLS+=     autoconf        # use "autoconf213" for autoconf-2.13
        ...
    
        pre-configure:
                cd ${WRKSRC}; autoconf
    
        ...
    d3604 51
    d3656 1
    a3656 6
                

    and for packages that need automake and autoconf:

        AUTOMAKE_REQD=  1.7.1           # if default version is not good enough
        USE_TOOLS+=     automake        # use "automake14" for automake-1.4
        ...
    d3658 3
    a3660 6
        pre-configure:
                cd ${WRKSRC};                          \
                aclocal; autoheader;                   \
                automake -a --foreign -i; autoconf
    
        ...
    d3662 23
    d3686 5
    a3690 81
                

    Packages which use GNU Automake will almost certainly require GNU Make.

    There are times when the configure process makes additional changes to the generated files, which then causes the build process to try to re-execute the automake sequence. This is prevented by touching various files in the configure stage. If this causes problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package Makefile.

    16.4. Building the package

    16.4.1. CPP defines

    Sometimes you need to compile different code depending on the target platform. The C preprocessor has a set of predefined macros that can be queried by using #ifdef FOO or #if defined(FOO). Among these macros are usually ones that describe the target CPU and operating system. Depending of which of the macros are defined, you can write code that uses features unique to a specific platform. Generally you should rather use the GNU autotools (automake, autoconf, etc.) to check for specific features (like the existence of a header file, a function or a library), but sometimes this is not possible or desired.

    In that case you can use the predefined macros below to configure your code to the platform it runs on. Almost every operating system, hardware architecture and compiler has its own macro. For example, if the macros __GNUC__, __i386__ and __NetBSD__ are all defined, you know that you are using NetBSD on an i386 compatible CPU, and your compiler is GCC.

    16.4.1.1. CPP defines for operating systems

    To distinguish between 4.4 BSD-derived systems and the rest of the world, you should use the following code.

        #include <sys/param.h>
        #if (defined(BSD) && BSD >= 199306)
          /* BSD-specific code goes here */
        #else
          /* non-BSD-specific code goes here */
        #endif
    d3692 26
    a3717 11
    
                  

    If this distinction is not fine enough, you can also use the following defines.

        FreeBSD     __FreeBSD__
        DragonFly   __DragonFly__
        Interix     __INTERIX
        Linux       linux, __linux, __linux__
        NetBSD      __NetBSD__
        OpenBSD     __OpenBSD__
        Solaris     sun, __sun
    d3719 39
    a3757 16
                

    16.4.1.2. CPP defines for CPUs

        i386        i386, __i386, __i386__
        MIPS        __mips
        SPARC       sparc, __sparc
    d3759 29
    a3787 15
                

    16.4.1.3. CPP defines for compilers

        GCC         __GNUC__ (major version), __GNUC_MINOR__
        SunPro      __SUNPRO_C (0x570 for version 5.7)
    d3789 5
    a3793 87
                

    16.4.2. Examples of CPP defines for some platforms

    The list of the CPP identification macros for hardware and operating system may depend on the compiler that is used. The following list contains some examples that may help you to choose the right ones. For example, if you want to conditionally compile code on Solaris, don't use __sun__, as the SunPro compiler does not define it. Use __sun instead.

    GCC 3.3.3 + SuSE Linux 9.1 + i386

    __ELF__, __gnu_linux__, __i386, __i386__, __linux, __linux__, __unix, __unix__, i386, linux, unix.

    GCC 2.95 + NetBSD 1.6.2 + i386

    __ELF__, __NetBSD__, __i386, __i386__, i386.

    GCC 3.3.3 + NetBSD 2.0 + i386

    __ELF__, __NetBSD__, __i386, __i386__, i386.

    GCC 4 + Solaris 8 + SPARC

    __ELF__, __sparc, __sparc__, __sun, __sun__, __SVR4, __svr4__, __unix, __unix__, sparc, sun, unix.

    SunPro 5.7 + Solaris 8 + SPARC

    __SVR4, __sparc, __sun, __unix, sparc, sun, unix.

    16.4.3. Getting a list of CPP defines

    If your system uses the GNU C Compiler, you can get a list of symbols that are defined by default, e.g. to identify the platform, with the following command:

        gcc -E -dM - < /dev/null 
    d3795 52
    a3846 62
    
                

    On other systems you may get the list by using the system's syscall trace utility (ktrace, truss, strace) to have a look which arguments are passed to the actual compiler.

    16.5. Package specific actions

    16.5.1. User interaction

    Occasionally, packages require interaction from the user, and this can be in a number of ways:

    • help in fetching the distfiles

    • help to configure the package before it is built

    • help during the build process

    • help during the installation of a package

    The INTERACTIVE_STAGE definition is provided to notify the pkgsrc mechanism of an interactive stage which will be needed, and this should be set in the package's Makefile, e.g.:

        INTERACTIVE_STAGE=      build
    d3848 53
    a3900 4
    
                

    Multiple interactive stages can be specified:

        INTERACTIVE_STAGE=      configure install
    d3902 19
    a3920 51
              

    16.5.2. Handling licenses

    A package may be covered by a license which the user has or has not agreed to accept. For these cases, pkgsrc contains a mechanism to note that a package is covered by a particular license, and the package cannot be built unless the user has accepted the license. (Installation of binary packages are not currently subject to this mechanism.) Packages with licenses that are either Open Source according to the Open Source Initiative or Free according to the Free Software Foundation will not be marked with a license tag. Packages with licenses that have not been determined to meet either definition will be marked with a license tag referring to the license. This will prevent building unless pkgsrc is informed that the license is acceptable, and enables displaying the license.

    The license tag mechanism is intended to address copyright-related issues surrounding building, installing and using a package, and not to address redistribution issues (see RESTRICTED and NO_SRC_ON_FTP, etc.). However, the above definition of licenses for which tags are not needed implies that packages with redistribution restrictions should have tags.

    Denoting that a package is covered by a particular license is done by placing the license in pkgsrc/licenses and setting the LICENSE variable to a string identifying the license, e.g. in graphics/xv:

        LICENSE=        xv-license
    d3922 11
    a3932 12
    
                

    When trying to build, the user will get a notice that the package is covered by a license which has not been accepted:

        % make
        ===> xv-3.10anb9 has an unacceptable license: xv-license.
        ===>     To view the license, enter "/usr/bin/make show-license".
        ===>     To indicate acceptance, add this line to your /etc/mk.conf:
        ===>     ACCEPTABLE_LICENSES+=xv-license
        *** Error code 1
    d3934 78
    a4011 10
    
                

    The license can be viewed with make show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

        ACCEPTABLE_LICENSES+=xv-license
    d4013 3
    a4015 109
    
                

    When adding a package with a new license, the license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/defaults/mk.conf.

    The use of LICENSE=shareware, LICENSE=no-commercial-use, and similar language is deprecated because it does not crisply refer to a particular license text. Another problem with such usage is that it does not enable a user to denote acceptance of the license for a single package without accepting the same license text for another package. In particular, this can be inappropriate when e.g. one accepts a particular license to indicate to pkgsrc that a fee has been paid.

    16.5.3. Installing score files

    Certain packages, most of them in the games category, install a score file that allows all users on the system to record their highscores. In order for this to work, the binaries need to be installed setgid and the score files owned by the appropriate group and/or owner (traditionally the "games" user/group). The following variables, documented in more detail in mk/defaults/mk.conf, control this behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

    Note that per default, setgid installation of games is disabled; setting SETGIDGAME=YES will set all the other variables accordingly.

    A package should therefor never hard code file ownership or access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    16.5.4. Packages containing perl scripts

    If your package contains interpreted perl scripts, set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted.

    16.5.5. Packages with hardcoded paths to other interpreters

    Your package may also contain scripts with hardcoded paths to other interpreters besides (or as well as) perl. To correct the full pathname to the script interpreter, you need to set the following definitions in your Makefile (we shall use tclsh in this example):

        REPLACE_INTERPRETER+=   tcl
        REPLACE.tcl.old=        .*/bin/tclsh
        REPLACE.tcl.new=        ${PREFIX}/bin/tclsh
        REPLACE_FILES.tcl=      # list of tcl scripts which need to be fixed,
                                # relative to ${WRKSRC}, just as in REPLACE_PERL
    d4017 7
    a4023 46
    
                

    Note

    Before March 2006, these variables were called _REPLACE.* and _REPLACE_FILES.*.

    16.5.6. Packages installing perl modules

    Makefiles of packages providing perl5 modules should include the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

    Perl5 modules will install into different places depending on the version of perl used during the build process. To address this, pkgsrc will append lines to the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of paths to packlist files, e.g.:

        PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    d4025 62
    d4088 2
    a4089 727
                

    The variables PERL5_SITELIB, PERL5_SITEARCH, and PERL5_ARCHLIB represent the three locations in which perl5 modules may be installed, and may be used by perl5 packages that don't have a packlist. These three variables are also substituted for in the PLIST.

    16.5.7. Packages installing info files

    Some packages install info files or use the “makeinfo” or “install-info” commands. INFO_FILES should be defined in the package Makefile so that INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info directory file. The “install-info” command used for the info files registration is either provided by the system, or by a special purpose package automatically added as dependency if needed.

    PKGINFODIR is the directory under ${PREFIX} where info files are primarily located. PKGINFODIR defaults to “info” and can be overridden by the user.

    The info files for the package should be listed in the package PLIST; however any split info files need not be listed.

    A package which needs the “makeinfo” command at build time must add “makeinfo” to USE_TOOLS in its Makefile. If a minimum version of the “makeinfo” command is needed it should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a minimum version of 3.12 is required. If the system does not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

    The build and installation process of the software provided by the package should not use the install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

    To achieve this goal, the pkgsrc infrastructure creates overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

    The script overriding install-info has no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of TEXINFO_REQD either runs the appropriate makeinfo command or exit on error.

    16.5.8. Packages installing man pages

    Many packages install manual pages. The man pages are installed under ${PREFIX}/${PKGMANDIR} which is /usr/pkg/man by default. PKGMANDIR defaults to “man”. For example, you can set PKGMANDIR to “share/man” to have man pages install under /usr/pkg/share/man/ by default.

    Note

    The support for a custom PKGMANDIR is not complete.

    The PLIST files can just use man/ as the top level directory for the man page file entries and the pkgsrc framework will convert as needed.

    Packages that are configured with GNU_CONFIGURE set as “yes”, by default will use the ./configure --mandir switch to set where the man pages should be installed. The path is GNU_CONFIGURE_MANDIR which defaults to ${PREFIX}/${PKGMANDIR}.

    Packages that use GNU_CONFIGURE but do not use --mandir, can set CONFIGURE_HAS_MANDIR to “no”. Or if the ./configure script uses a non-standard use of --mandir, you can set GNU_CONFIGURE_MANDIR as needed.

    See Section 10.5, “Man page compression” for information on installation of compressed manual pages.

    16.5.9. Packages installing GConf2 data files

    If a package installs .schemas or .entries files, used by GConf2, you need to take some extra steps to make sure they get registered in the database:

    1. Include ../../devel/GConf2/schemas.mk instead of its buildlink3.mk file. This takes care of rebuilding the GConf2 database at installation and deinstallation time, and tells the package where to install GConf2 data files using some standard configure arguments. It also disallows any access to the database directly from the package.

    2. Ensure that the package installs its .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to manually patch the package.

    3. Check the PLIST and remove any entries under the etc/gconf directory, as they will be handled automatically. See Section 7.14, “How do I change the location of configuration files?” for more information.

    4. Define the GCONF2_SCHEMAS variable in your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    5. Define the GCONF2_ENTRIES variable in your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    16.5.10. Packages installing scrollkeeper data files

    If a package installs .omf files, used by scrollkeeper, you need to take some extra steps to make sure they get registered in the database:

    1. Include ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This takes care of rebuilding the scrollkeeper database at installation and deinstallation time, and disallows any access to it directly from the package.

    2. Check the PLIST and remove any entries under the libdata/scrollkeeper directory, as they will be handled automatically.

    3. Remove the share/omf directory from the PLIST. It will be handled by scrollkeeper.

    16.5.11. Packages installing X11 fonts

    If a package installs font files, you will need to rebuild the fonts database in the directory where they get installed at installation and deinstallation time. This can be automatically done by using the pkginstall framework.

    You can list the directories where fonts are installed in the FONTS_DIRS.type variables, where type can be one of “ttf”, “type1” or “x11”. Also make sure that the database file fonts.dir is not listed in the PLIST.

    Note that you should not create new directories for fonts; instead use the standard ones to avoid that the user needs to manually configure his X server to find them.

    16.5.12. Packages installing GTK2 modules

    If a package installs GTK2 immodules or loaders, you need to take some extra steps to get them registered in the GTK2 database properly:

    1. Include ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

    2. Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

    3. Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

    4. Patch the package to not touch any of the GTK2 databases directly. These are:

      • libdata/gtk-2.0/gdk-pixbuf.loaders

      • libdata/gtk-2.0/gtk.immodules

    5. Check the PLIST and remove any entries under the libdata/gtk-2.0 directory, as they will be handled automatically.

    16.5.13. Packages installing SGML or XML data

    If a package installs SGML or XML data files that need to be registered in system-wide catalogs (like DTDs, sub-catalogs, etc.), you need to take some extra steps:

    1. Include ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in system-wide catalogs at installation and deinstallation time.

    2. Set SGML_CATALOGS to the full path of any SGML catalogs installed by the package.

    3. Set XML_CATALOGS to the full path of any XML catalogs installed by the package.

    4. Set SGML_ENTRIES to individual entries to be added to the SGML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

    5. Set XML_ENTRIES to individual entries to be added to the XML catalog. These come in groups of three strings; see xmlcatmgr(1) for more information (specifically, arguments recognized by the 'add' action). Note that you will normally not use this variable.

    16.5.14. Packages installing extensions to the MIME database

    If a package provides extensions to the MIME database by installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

    1. Include ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the package.

    2. Check the PLIST and remove any entries under the share/mime directory, except for files saved under share/mime/packages. The former are handled automatically by the update-mime-database program, but the latter are package-dependent and must be removed by the package that installed them in the first place.

    3. Remove any share/mime/* directories from the PLIST. They will be handled by the shared-mime-info package.

    16.5.15. Packages using intltool

    If a package uses intltool during its build, include the ../../textproc/intltool/buildlink3.mk file, which forces it to use the intltool package provided by pkgsrc, instead of the one bundled with the distribution file.

    This tracks intltool's build-time dependencies and uses the latest available version; this way, the package benefits of any bug fixes that may have appeared since it was released.

    16.5.16. Packages installing startup scripts

    If a package contains a rc.d script, it won't be copied into the startup directory by default, but you can enable it, by adding the option PKG_RCD_SCRIPTS=YES in /etc/mk.conf. This option will copy the scripts into /etc/rc.d when a package is installed, and it will automatically remove the scripts when the package is deinstalled.

    16.5.17. Packages installing TeX modules

    If a package installs TeX packages into the texmf tree, the ls-R database of the tree needs to be updated.

    Note

    Except the main TeX packages such as teTeX-texmf, packages should install files into PKG_LOCALTEXMFPREFIX, not PKG_TEXMFPREFIX.

    1. Include ../../print/teTeX/module.mk instead of ../../mk/tex.buildlink3.mk. This takes care of rebuilding the ls-R database at installation and deinstallation time.

    2. If your package installs files into a texmf tree other than the one at PKG_LOCALTEXMFPREFIX, set TEXMFDIRS to the list of all texmf trees that need database update.

      If your package also installs font map files that need to be registered using updmap, set TEX_FONTMAPS to the list of all such font map files. Then updmap will be run automatically at installation/deinstallation to enable/disable font map files for TeX output drivers.

    3. Make sure that none of ls-R databases are included in PLIST, as they will be removed only by the teTeX-bin package.

    16.6. Feedback to the author

    If you have found any bugs in the package you make available, if you had to do special steps to make it run under NetBSD or if you enhanced the software in various other ways, be sure to report these changes back to the original author of the program! With that kind of support, the next release of the program can incorporate these fixes, and people not using the NetBSD packages system can win from your efforts.

    Support the idea of free software!

    Chapter 17. Debugging

    To check out all the gotchas when building a package, here are the steps that I do in order to get a package working. Please note this is basically the same as what was explained in the previous sections, only with some debugging aids.

    • Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

    • d4091 3 a4093 22
    • Install pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

      % mkdir /usr/pkgsrc/category/examplepkg
      % cd /usr/pkgsrc/category/examplepkg
      % url2pkg http://www.example.com/path/to/distfile.tar.gz
      
    • d4095 2 a4096 5
    • Edit the Makefile as requested.

    • d4098 4 a4101 5
    • Fill in the DESCR file

    • d4103 2 a4104 4
    • Run make configure

    • d4106 1 a4106 25
    • Add any dependencies glimpsed from documentation and the configure step to the package's Makefile.

    • Make the package compile, doing multiple rounds of

      % make
      % pkgvi ${WRKSRC}/some/file/that/does/not/compile
      % mkpatches
      % patchdiff
      % mv ${WRKDIR}/.newpatches/* patches
      % make mps
      % make clean
      d4108 209
      d4318 7
      a4324 13
                    

      Doing as non-root user will ensure that no files are modified that shouldn't be, especially during the build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

    • d4326 15 a4340 10
    • Look at the Makefile, fix if necessary; see Section 8.1, “Makefile.

    • d4342 7 a4348 15
    • Generate a PLIST:

      # make install
      # make print-PLIST >PLIST
      # make deinstall
      # make install
      # make deinstall
      d4350 73
      a4422 8
      
                    

      You usually need to be root to do this. Look if there are any files left:

      # make print-PLIST
      d4424 96
      a4519 17
      
                    

      If this reveals any files that are missing in PLIST, add them.

    • Now that the PLIST is OK, install the package again and make a binary package:

      # make reinstall
      # make package
      d4521 38
      a4558 7
                  
    • Delete the installed package:

      # pkg_delete blub
      d4560 81
      a4640 9
                  
    • Repeat the above make print-PLIST command, which shouldn't find anything now:

      # make print-PLIST
      d4642 30
      a4671 7
                  
    • Reinstall the binary package:

      # pkgadd .../blub.tgz
      d4673 32
      a4704 17
                  
    • Play with it. Make sure everything works.

    • Run pkglint from pkgtools/pkglint, and fix the problems it reports:

      # pkglint
      d4706 36
      a4741 202
                  
    • Submit (or commit, if you have cvs access); see Chapter 18, Submitting and Committing.

    Chapter 18. Submitting and Committing

    18.1. Submitting binary packages

    Our policy is that we accept binaries only from pkgsrc developers to guarantee that the packages don't contain any trojan horses etc. This is not to annoy anyone but rather to protect our users! You're still free to put up your home-made binary packages and tell the world where to get them. NetBSD developers doing bulk builds and wanting to upload them please see Section 6.3.8, “Uploading results of a bulk build”.

    18.2. Submitting source packages (for non-NetBSD-developers)

    First, check that your package is complete, compiles and runs well; see Chapter 17, Debugging and the rest of this document. Next, generate an uuencoded gzipped tar(1) archive, preferably with all files in a single directory. Finally, send-pr with category “pkg”, a synopsis which includes the package name and version number, a short description of your package (contents of the COMMENT variable or DESCR file are OK) and attach the archive to your PR.

    If you want to submit several packages, please send a separate PR for each one, it's easier for us to track things that way.

    Alternatively, you can also import new packages into pkgsrc-wip (“pkgsrc work-in-progress”); see the homepage at http://pkgsrc-wip.sourceforge.net/ for details.

    18.3. General notes when adding, updating, or removing packages

    Please note all package additions, updates, moves, and removals in pkgsrc/doc/CHANGES. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on www.NetBSD.org and other sites. Additionally, check the pkgsrc/doc/TODO file and remove the entry for the package you updated or removed, in case it was mentioned there.

    When the PKGREVISION of a package is bumped, the change should appear in pkgsrc/doc/CHANGES if it is security related or otherwise relevant. Mass bumps that result from a dependency being updated should not be mentioned. In all other cases it's the developer's decision.

    There is a make target that helps in creating proper CHANGES entries: make changes-entry. It uses the optional CTYPE and NETBSD_LOGIN_NAME variables. The general usage is to first make sure that your CHANGES file is up-to-date (to avoid having to resolve conflicts later-on) and then to cd to the package directory. For package updates, make changes-entry is enough. For new packages, or package moves or removals, set the CTYPE variable on the command line to "Added", "Moved", or "Removed". You can set NETBSD_LOGIN_NAME in /etc/mk.conf if your local login name is not the same as your NetBSD login name. Don't forget to commit the changes to pkgsrc/doc/CHANGES!

    18.4. Committing: Importing a package into CVS

    This section is only of interest for pkgsrc developers with write access to the pkgsrc repository. Please remember that cvs imports files relative to the current working directory, and that the pathname that you give the cvs import command is so that it knows where to place the files in the repository. Newly created packages should be imported with a vendor tag of “TNF” and a release tag of “pkgsrc-base”, e.g:

        $ cd .../pkgsrc/category/pkgname
        $ cvs import pkgsrc/category/pkgname TNF pkgsrc-base
    d4743 16
    a4758 98
    
              

    Remember to move the directory from which you imported out of the way, or cvs will complain the next time you “cvs update” your source tree. Also don't forget to add the new package to the category's Makefile.

    The commit message of the initial import should include part of the DESCR file, so people reading the mailing lists know what the package is/does.

    For new packages, “cvs import” is preferred to “cvs add” because the former gets everything with a single command, and provides a consistent tag.

    18.5. Updating a package to a newer version

    Please always put a concise, appropriate and relevant summary of the changes between old and new versions into the commit log when updating a package. There are various reasons for this:

    • A URL is volatile, and can change over time. It may go away completely or its information may be overwritten by newer information.

    • Having the change information between old and new versions in our CVS repository is very useful for people who use either cvs or anoncvs.

    • Having the change information between old and new versions in our CVS repository is very useful for people who read the pkgsrc-changes mailing list, so that they can make tactical decisions about when to upgrade the package.

    Please also recognize that, just because a new version of a package has been released, it should not automatically be upgraded in the CVS repository. We prefer to be conservative in the packages that are included in pkgsrc - development or beta packages are not really the best thing for most places in which pkgsrc is used. Please use your judgement about what should go into pkgsrc, and bear in mind that stability is to be preferred above new and possibly untested features.

    18.6. Moving a package in pkgsrc

    1. Make a copy of the directory somewhere else.

    2. Remove all CVS dirs.

      Alternatively to the first two steps you can also do:

      % cvs -d user@@cvs.NetBSD.org:/cvsroot export -D today pkgsrc/category/package
      d4760 23
      a4782 26
      
                      

      and use that for further work.

    3. Fix CATEGORIES and any DEPENDS paths that just did “../package” instead of “../../category/package”.

    4. cvs import the modified package in the new place.

    5. Check if any package depends on it:

      % cd /usr/pkgsrc
      % grep /package */*/Makefile* */*/buildlink*
      d4784 25
      a4808 30
                    
    6. Fix paths in packages from step 5 to point to new location.

    7. cvs rm (-f) the package at the old location.

    8. Remove from oldcategory/Makefile.

    9. Add to newcategory/Makefile.

    10. Commit the changed and removed files:

      % cvs commit oldcategory/package oldcategory/Makefile newcategory/Makefile
      d4810 52
      d4863 1
      a4863 6
                      

      (and any packages from step 5, of course).

    d4865 6 a4870 846

    Chapter 19. Frequently Asked Questions

    This section contains the answers to questions that may arise when you are writing a package. If you don't find your question answered here, first have a look in the other chapters, and if you still don't have the answer, ask on the pkgsrc-users mailing list.

    19.1. What is the difference between MAKEFLAGS, .MAKEFLAGS and MAKE_FLAGS?
    19.2. What is the difference between MAKE, GMAKE and MAKE_PROGRAM?
    19.3. What is the difference between CC, PKG_CC and PKGSRC_COMPILER?
    19.4. What is the difference between BUILDLINK_LDFLAGS, BUILDLINK_LDADD and BUILDLINK_LIBS?
    19.5. Why does make show-var VARNAME=BUILDLINK_PREFIX.foo say it's empty?
    19.1.

    What is the difference between MAKEFLAGS, .MAKEFLAGS and MAKE_FLAGS?

    MAKEFLAGS are the flags passed to the pkgsrc-internal invocations of make(1), while MAKE_FLAGS are the flags that are passed to the MAKE_PROGRAM when building the package. [FIXME: What is .MAKEFLAGS for?]

    19.2.

    What is the difference between MAKE, GMAKE and MAKE_PROGRAM?

    MAKE is the path to the make(1) program that is used in the pkgsrc infrastructure. GMAKE is the path to GNU Make, but you need to say USE_TOOLS+=gmake to use that. MAKE_PROGRAM is the path to the Make program that is used for building the package.

    19.3.

    What is the difference between CC, PKG_CC and PKGSRC_COMPILER?

    CC is the path to the real C compiler, which can be configured by the pkgsrc user. PKG_CC is the path to the compiler wrapper. PKGSRC_COMPILER is not a path to a compiler, but the type of compiler that should be used. See mk/compiler.mk for more information about the latter variable.

    19.4.

    What is the difference between BUILDLINK_LDFLAGS, BUILDLINK_LDADD and BUILDLINK_LIBS?

    [FIXME]

    19.5.

    Why does make show-var VARNAME=BUILDLINK_PREFIX.foo say it's empty?

    For optimization reasons, some variables are only available in the “wrapper” phase and later. To “simulate” the wrapper phase, append PKG_PHASE=wrapper to the above command.

    Part III. The pkgsrc infrastructure internals

    Chapter 20. Design of the pkgsrc infrastructure

    The pkgsrc infrastructure consists of many small Makefile fragments. Each such fragment needs a properly specified interface. This chapter explains how such an interface looks like.

    20.1. Variable evaluation

    20.1.1. At load time

    Variable evaluation takes place either at load time or at runtime, depending on the context in which they occur. The contexts where variables are evaluated at load time are:

    • The right hand side of the := and != operators,

    • Make directives like .if or .for,

    • Dependency lines.

    A special exception are references to the iteration variables of .for loops, which are expanded inline, no matter in which context they appear.

    As the values of variables may change during load time, care must be taken not to evaluate them by accident. Typical examples for variables that should not be evaluated at load time are DEPENDS and CONFIGURE_ARGS. To make the effect more clear, here is an example:

        CONFIGURE_ARGS=         # none
        CFLAGS=                 -O
        CONFIGURE_ARGS+=        CFLAGS=${CFLAGS:Q}
    
        CONFIGURE_ARGS:=        ${CONFIGURE_ARGS}
    
        CFLAGS+=                -Wall
            
    

    This code shows how the use of the := operator can quickly lead to unexpected results. The first paragraph is fairly common code. The second paragraph evaluates the CONFIGURE_ARGS variable, which results in CFLAGS=-O. In the third paragraph, the -Wall is appended to the CFLAGS, but this addition will not appear in CONFIGURE_ARGS. In actual code, the three paragraphs from above typically occur in completely unrelated files.

    20.1.2. At runtime

    After all the files have been loaded, the values of the variables cannot be changed anymore. Variables that are used in the shell commands are expanded at this point.

    20.2. Designing interfaces for Makefile fragments

    Most of the .mk files fall into one of the following classes. Cases where a file falls into more than one class should be avoided as it often leads to subtle bugs.

    20.2.1. Procedures with parameters

    In a traditional imperative programming language some of the .mk files could be described as procedures. They take some input parameters and—after inclusion—provide a result in output parameters. Since all variables in Makefiles have global scope care must be taken not to use parameter names that have already another meaning. For example, PKGNAME is a bad choice for a parameter name.

    Procedures are completely evaluated at preprocessing time. That is, when calling a procedure all input parameters must be completely resolvable. For example, CONFIGURE_ARGS should never be an input parameter since it is very likely that further text will be added after calling the procedure, which would effectively apply the procedure to only a part of the variable. Also, references to other variables wit will be modified after calling the procedure.

    A procedure can declare its output parameters either as suitable for use in preprocessing directives or as only available at runtime. The latter alternative is for variables that contain references to other runtime variables.

    Procedures shall be written such that it is possible to call the procedure more than once. That is, the file must not contain multiple-inclusion guards.

    Examples for procedures are mk/bsd.options.mk and mk/buildlink3/bsd.builtin.mk. To express that the parameters are evaluated at load time, they should be assigned using the := operator, which should be used only for this purpose.

    20.2.2. Actions taken on behalf of parameters

    Action files take some input parameters and may define runtime variables. They shall not define loadtime variables. There are action files that are included implicitly by the pkgsrc infrastructure, while other must be included explicitly.

    An example for action files is mk/subst.mk.

    Chapter 21. Regression tests

    The pkgsrc infrastructure consists of a large codebase, and there are many corners where every little bit of a file is well thought out, making pkgsrc likely to fail as soon as anything is changed near those parts. To prevent most changes from breaking anything, a suite of regression tests should go along with every important part of the pkgsrc infrastructure. This chapter describes how regression tests work in pkgsrc and how you can add new tests.

    21.1. The regression tests framework

    21.2. Running the regression tests

    You first need to install the pkgtools/pkg_regress package, which provides the pkg_regress command. Then you can simply run that command, which will run all tests in the regress category.

    21.3. Adding a new regression test

    Every directory in the regress category that contains a file called spec is considered a regression test. This file is a shell program that is included by the pkg_regress command. The following functions can be overridden to suit your needs.

    21.3.1. Overridable functions

    These functions do not take any parameters. They are all called in “set -e” mode, so you should be careful to check the exitcodes of any commands you run in the test.

    do_setup()

    This function prepares the environment for the test. By default it does nothing.

    do_test()

    This function runs the actual test. By default, it calls TEST_MAKE with the arguments MAKEARGS_TEST and writes its output including error messages into the file TEST_OUTFILE.

    check_result()

    This function is run after the test and is typically used to compare the actual output from the one that is expected. It can make use of the various helper functions from the next section.

    do_cleanup()

    This function cleans everything up after the test has been run. By default it does nothing.

    21.3.2. Helper functions

    exit_status(expected)

    This function compares the exitcode of the do_test() function with its first parameter. If they differ, the test will fail.

    output_require(regex...)

    This function checks for each of its parameters if the output from do_test() matches the extended regular expression. If it does not, the test will fail.

    output_prohibit(regex...)

    This function checks for each of its parameters if the output from do_test() does not match the extended regular expression. If any of the regular expressions matches, the test will fail.

    Chapter 22. Porting pkgsrc

    The pkgsrc system has already been ported to many operating systems, hardware architectures and compilers. This chapter explains the necessary steps to make pkgsrc even more portable.

    22.1. Porting pkgsrc to a new operating system

    To port pkgsrc to a new operating system (called MyOS in this example), you need to touch the following files:

    bootstrap/mods/mk/MyOS.sys.mk

    This file contains some basic definitions, for example the name of the C compiler.

    mk/bsd.prefs.mk

    Insert code that defines the variables OPSYS, OS_VERSION, LOWER_OS_VERSION, LOWER_VENDOR, MACHINE_ARCH, OBJECT_FMT, APPEND_ELF, and the other variables that appear in this file.

    mk/platform/MyOS.mk
    d4872 1 a4872 6

    This file contains the platform-specific definitions that are used by pkgsrc. Start by copying one of the other files and edit it to your needs.

    d4874 1 a4874 3
    mk/platform/MyOS.pkg.dist
    d4876 6 a4881 9

    This file contains a list of directories, together with their permission bits and ownership. These directories will be created automatically with every package that does not explicitly set NO_MTREE. There have been some discussions about whether this file is needed at all, but with no result.

    d4883 7 a4889 3
    mk/platform/MyOS.x11.dist
    d4891 910 a5800 7

    Just copy one of the pre-existing x11.dist files to your MyOS.x11.dist.

    d5802 87 a5888 3
    mk/tools/bootstrap.mk
    d5890 6 a5895 12

    On some operating systems, the tools that are provided with the base system are not good enough for pkgsrc. For example, there are many versions of sed(1) that have a narrow limit on the line length they can process. Therefore pkgsrc brings its own tools, which can be enabled here.

    d5897 5 a5901 4
    mk/tools/MyOS.mk
    d5903 439 a6341 8

    This file defines the paths to all the tools that are needed by one or the other package in pkgsrc, as well as by pkgsrc itself. Find out where these tools are on your platform and add them.

    d6343 2 a6344 11

    Now, you should be able to build some basic packages, like lang/perl5, shells/bash.

    d6346 2 a6347 10

    22.2. Adding support for a new compiler

    d6349 5 a6353 4

    TODO

    d6355 114 a6468 10

    Appendix A. A simple example package: bison

    d6470 2 a6471 2

    Table of Contents

    d6473 7 a6479 3
    A.1. files
    d6481 4 a6484 4
    A.1.1. Makefile
    d6486 1132 a7617 2
    A.1.2. DESCR
    d7619 1 a7619 2
    A.1.3. PLIST
    d7621 270 a7890 40
    A.1.4. Checking a package with pkglint
    A.2. Steps for building, installing, packaging

    We checked to find a piece of software that wasn't in the packages collection, and picked GNU bison. Quite why someone would want to have bison when Berkeley yacc is already present in the tree is beyond us, but it's useful for the purposes of this exercise.

    A.1. files

    A.1.1. Makefile

    d7907 5
    a7911 12
            

    A.1.2. DESCR

    d7913 1
    a7913 2
        improvements.  Why you would want this when Berkeley yacc(1) is part
    d7916 5
    a7920 12
            

    A.1.3. PLIST

    d7927 30
    a7956 75
            

    A.1.4. Checking a package with pkglint

    The NetBSD package system comes with pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    $ pkglint
    looks fine.
    

    Depending on the supplied command line arguments (see pkglint(1)), more checks will be performed. Use e.g. pkglint -Call -Wall for a very thorough check.

    A.2. Steps for building, installing, packaging

    Create the directory where the package lives, plus any auxiliary directories:

    # cd /usr/pkgsrc/lang
    # mkdir bison
    # cd bison
    # mkdir patches
    

    Create Makefile, DESCR and PLIST (see Chapter 8, Package components - files, directories and contents) then continue with fetching the distfile:

    # make fetch
    d7968 6
    a7973 15
    Successfully retrieved file.
    

    Generate the checksum of the distfile into distinfo:

    # make makesum
    

    Now compile:

    # make
    d8023 3
    a8025 7
    sed -e "/^#line/ s|bison|/usr/pkg/share/bison|" < ./bison.simple > bison.s1
    

    Everything seems OK, so install the files:

    # make install
    d8037 5
    a8041 10
    ===>  Registering installation for bison-1.25
    

    You can now use bison, and also - if you decide so - remove it with pkg_delete bison. Should you decide that you want a binary package, do this now:

    # make package
    d8046 21
    a8066 47
    Creating gzip'd tar ball in '/u/pkgsrc/lang/bison/bison-1.25.tgz'
    

    Now that you don't need the source and object files any more, clean up:

    # make clean
    ===>  Cleaning for bison-1.25
    

    Appendix B. Build logs

    B.1. Building figlet

    # make
    d8106 1
    a8106 1
    250-    ftp://ftp.figlet.org/pub/figlet/
    d8109 1
    a8109 1
    250-    http://www.figlet.org/
    d8138 1
    a8138 2
    # make install
    d8153 6
    a8158 16
    #
    

    B.2. Packaging figlet

    # make package
    d8165 8
    a8172 19
    #
    

    Appendix C. Layout of the FTP server's package archive

    Layout for precompiled binary packages on ftp.NetBSD.org:

    d8231 7
    a8237 15
    
          

    To create:

    1. Run bulk build, see Section 6.3, “Doing a bulk build of all packages”

    2. Upload /usr/pkgsrc/packages to

      d8243 108
      a8350 189
                
    3. If necessary, create a symlink ln -s `uname -m` `uname -p` (amiga -> m68k, ...)

    Appendix D. Editing guidelines for the pkgsrc guide

    Table of Contents

    D.1. Targets
    D.2. Procedure

    This section contains information on editing the pkgsrc guide itself.

    D.1. Targets

    The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files are created from it:

    • pkgsrc/doc/pkgsrc.txt

    • pkgsrc/doc/pkgsrc.html

    • http://www.NetBSD.org/Documentation/pkgsrc/: the documentation on the NetBSD website will be built from pkgsrc and kept up to date on the web server itself. This means you must make sure that your changes haven't broken the build!

    • http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: PDF version of the pkgsrc guide.

    • http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: PostScript version of the pkgsrc guide.

    D.2. Procedure

    The procedure to edit the pkgsrc guide is:

    • Make sure you have the packages needed to re-generate the pkgsrc guide (and other XML-based NetBSD documentation) installed. These are “netbsd-doc” for creating the ASCII and HTML versions, and “netbsd-doc-print” for the PostScript and PDF versions. You will need both packages installed, to make sure documentation is consistent across all formats. The packages can be found in pkgsrc/meta-pkgs/netbsd-doc and pkgsrc/meta-pkgs/netbsd-doc-print.

    • Edit the XML file(s) in pkgsrc/doc/guide/files.

    • Run make extract && make do-lint in pkgsrc/doc/guide to check the XML syntax, and fix it if needed.

    • Run make in pkgsrc/doc/guide to build the HTML and ASCII version.

    • If all is well, run make install-doc to put the generated files into pkgsrc/doc.

    • cvs commit pkgsrc/doc/guide/files

    • cvs commit -m re-generate pkgsrc/doc/pkgsrc.{html,txt}

    • Until the webserver on www.NetBSD.org is really updated automatically to pick up changes to the pkgsrc guide automatically, also run make install-htdocs HTDOCSDIR=../../../htdocs (or similar, adjust HTDOCSDIR!).

    • cvs commit htdocs/Documentation/pkgsrc

    @ 1.73 log @regen. @ text @d13 1 a13 1 "Information about using the NetBSD package system (pkgsrc) from both a user view for installing packages as well as from a pkgsrc developers' view for creating new packages." /> d64 1 a64 1

    $NetBSD: pkgsrc.xml,v 1.16 2006/05/12 23:03:22 rillig Exp $

    d77 6 a82 4

    Information about using the NetBSD package system (pkgsrc) from both a user view for installing packages as well as from a pkgsrc developers' view for creating new packages.

    d108 8 d396 5 d1019 7 a1025 2 "#submitting-your-package">18.1. Submitting your packages
    d1028 1 a1028 1 "#general-notes-for-changes">18.2. General notes d1033 1 a1033 1 "#committing-importing">18.3. Committing: Importing d1037 1 a1037 1 "#updating-package">18.4. Updating a package to a d1041 1 a1041 1 "#moving-package">18.5. Moving a package in d1229 7 d1509 63 d1875 4 d5482 4 d6377 43 d7031 1 a7031 1 "#submitting-your-package">18.1. Submitting your d7035 5 a7039 1 "#general-notes-for-changes">18.2. General notes when d7044 1 a7044 1 "#committing-importing">18.3. Committing: Importing a d7048 1 a7048 1 "#updating-package">18.4. Updating a package to a d7052 1 a7052 1 "#moving-package">18.5. Moving a package in d7896 1 a7896 1 newline are replaced with a single space. A backspace d13400 8 a13407 15 can set _FETCH_MESSAGE to a macro which displays a message explaining the situation. _FETCH_MESSAGE must be executable shell commands, not just a message. (Generally, it executes ${ECHO}). See one of the following packages for an example: fonts/acroread-jpnfont, sysutils/storage-manager.

    d15270 1 a15270 1 "#submitting-your-package">18.1. Submitting your d15274 5 a15278 1 "#general-notes-for-changes">18.2. General notes when d15282 1 a15282 1 "#committing-importing">18.3. Committing: Importing a d15286 1 a15286 1 "#updating-package">18.4. Updating a package to a newer d15289 1 a15289 1
    18.5. d15299 2 a15300 2 "submitting-your-package">18.1. Submitting your packages d15305 11 a15315 3

    You have to separate between binary and “normal” (source) packages here:

    d15317 10 a15326 4
    • precompiled binary packages

      d15328 26 a15353 47

      Our policy is that we accept binaries only from pkgsrc developers to guarantee that the packages don't contain any trojan horses etc. This is not to annoy anyone but rather to protect our users! You're still free to put up your home-made binary packages and tell the world where to get them. NetBSD developers doing bulk builds and wanting to upload them please see Section 6.3.8, “Uploading results of a bulk build”.

    • packages

      First, check that your package is complete, compiles and runs well; see Chapter 17, Debugging and the rest of this document. Next, generate an uuencoded gzipped tar(1) archive, preferably with all files in a single directory. Finally, send-pr with category “pkg”, a synopsis which includes the package name and version number, a short description of your package (contents of the COMMENT variable or DESCR file are OK) and attach the archive to your PR.

      If you want to submit several packages, please send a separate PR for each one, it's easier for us to track things that way.

      Alternatively, you can also import new packages into pkgsrc-wip (“pkgsrc work-in-progress”); see the homepage at http://pkgsrc-wip.sourceforge.net/ for details.

    d15361 1 a15361 1 "general-notes-for-changes">18.2. General d15423 1 a15423 1 "committing-importing">18.3. Committing: d15472 1 a15472 1 "updating-package">18.4. Updating a d15523 1 a15523 1 "moving-package">18.5. Moving a package in d15630 1 a15630 1
    19.1. What is the difference d15633 1 a15633 1
    19.2. What is the difference d15636 1 a15636 1
    19.3. What is the difference d15639 1 a15639 1
    19.4. What is the difference d15643 1 a15643 1
    19.5. Why does make show-var d15653 2 a15654 2 "id2654342">19.1. d15683 2 a15684 2 "id2654378">19.2. d15715 2 a15716 2 "id2654417">19.3. d15747 2 a15748 2 "id2654454">19.4. d15768 2 a15769 2 "id2654472">19.5. @ 1.72 log @regen. @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.14 2006/05/10 20:56:00 rillig Exp $

    d1032 1 a1032 1 pkgsrc infrastructure
    d1036 39 a1074 1
    20. d1080 1 a1080 1 "#regression.descr">20.1. The regression tests d1084 1 a1084 1 "#regression.run">20.2. Running the regression d1088 1 a1088 1 "#regression.new">20.3. Adding a new regression d1094 1 a1094 1 "#regression.fun.override">20.3.1. Overridable d1098 1 a1098 1 "#regression.fun.helper">20.3.2. Helper d1105 1 a1105 1
    21. d1111 1 a1111 1 "#porting.opsys">21.1. Porting pkgsrc to a new d1115 1 a1115 1 "#porting.compiler">21.2. Adding support for a new d1361 1 a1361 1

    This document is divided into two parts. The first, d1372 11 a1382 23 without knowing about the package's building details.

    This document is available in various formats:

    d10447 7 a10453 7 PKG_OPTIONS_VAR= PKG_OPTIONS.wibble PKG_SUPPORTED_OPTIONS= wibble-foo ldap PKG_OPTIONS_OPTIONAL_GROUPS= database PKG_OPTIONS_GROUP.database= mysql pgsql PKG_SUGGESTED_OPTIONS= wibble-foo PKG_OPTIONS_LEGACY_VARS+= WIBBLE_USE_OPENLDAP:ldap PKG_OPTIONS_LEGACY_OPTS+= foo:wibble-foo d10459 1 a10459 1 PKG_LEGACY_OPTIONS+= ${PKG_OPTIONS.wibble2} d10461 1 a10461 1 "Deprecated variable PKG_OPTIONS.wibble2 used, use "${PKG_OPTIONS_VAR:Q}" instead." d15495 1 a15495 1
    19.1. What is the difference d15498 1 a15498 1
    19.2. What is the difference d15501 1 a15501 1
    19.3. What is the difference d15504 1 a15504 1
    19.4. What is the difference d15508 1 a15508 1
    19.5. Why does make show-var d15518 2 a15519 2 "id2654337">19.1. d15548 2 a15549 2 "id2654373">19.2. d15580 2 a15581 2 "id2654411">19.3. d15612 2 a15613 2 "id2654449">19.4. d15633 2 a15634 2 "id2654467">19.5. d15669 1 a15669 1 infrastructure d15674 232 a15905 2

    Table of Contents

    d15907 9 a15915 3
    20. Regression tests
    d15917 6 a15922 5
    20.1. The regression tests framework
    d15924 10 a15933 3
    20.2. Running the regression tests
    d15935 6 a15940 3
    20.3. Adding a new regression test
    d15942 10 a15951 5
    20.3.1. Overridable functions
    d15953 45 a15997 7
    20.3.2. Helper functions
    d15999 10 a16008 2
    21. Porting pkgsrc
    d16010 5 a16014 5
    21.1. Porting pkgsrc to a new operating system
    d16016 5 a16020 6
    21.2. Adding support for a new compiler
    d16028 1 a16028 1 "regression">Chapter 20. Regression d16039 1 a16039 1 "#regression.descr">20.1. The regression tests d16042 1 a16042 1
    20.2. d16045 1 a16045 1
    20.3. d16051 1 a16051 1 "#regression.fun.override">20.3.1. Overridable d16055 1 a16055 1 "#regression.fun.helper">20.3.2. Helper d16076 1 a16076 1 "regression.descr">20.1. The regression d16088 1 a16088 1 "regression.run">20.2. Running the d16112 1 a16112 1 "regression.new">20.3. Adding a new d16134 1 a16134 1 "regression.fun.override">20.3.1. Overridable d16197 1 a16197 1 "regression.fun.helper">20.3.2. Helper d16250 1 a16250 1 "porting">Chapter 21. Porting d16260 1 a16260 1
    21.1. d16265 1 a16265 1 "#porting.compiler">21.2. Adding support for a new d16280 1 a16280 1 "porting.opsys">21.1. Porting pkgsrc to a d16403 1 a16403 1 "porting.compiler">21.2. Adding support @ 1.71 log @regen. @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.12 2006/02/18 01:46:43 rillig Exp $

    d552 1 a552 1 "varname">BUILDLINK_DEPENDS.19. d1073 1 a1073 1 "#porting.opsys">19.1. Porting pkgsrc to a new d1077 1 a1077 1 "#porting.compiler">19.2. Adding support for a new d3240 9 a3248 1 Solaris 5.10 d3323 10 a3332 1 Solaris 5.10 d3343 5 a3347 2

    In each of these directories, there is a subdirectory All that contains all the binary packages. Further, there are subdirectories for d5985 2 a5986 2 "refentrytitle">ftp(1) (like lukemftp) at work, don't forget to set BUILDLINK_DEPENDS.pkg in 19. Porting pkgsrc

    19.1. Porting pkgsrc to a new operating system
    19.2. Adding support for a new compiler
    d7061 1 a7061 1 set SITES_foo to a d7069 1 a7069 1 SITES_foo-file.tar.gz= \ a8371 18
    ${PKGLOCALEDIR}

    Packages that install locale files should list them in the PLIST as “${PKGLOCALEDIR}/locale/de/LC_MESSAGES/...” instead of “share/locale/de/LC_MESSAGES/...”. This properly handles the fact that different operating systems expect locale files to be either in share or lib by default.

    d8625 2 a8626 1 BUILDLINK_DEPENDS.BUILDLINK_DEPENDS. d9184 3 a9186 2 "varname">BUILDLINK_DEPENDS.pkg in There are two situations that require increasing the d9195 1 a9195 1 "varname">BUILDLINK_DEPENDS.
    1. if the sonames (major number of the library version) of any installed shared libraries change.

    2. if the API or interface to the header files change.

    d9200 2 a9201 2

    In these cases, BUILDLINK_DEPENDS.BUILDLINK_DEPENDS. d9235 3 a9237 1 BUILDLINK_DEPENDS.Section 16.1.4, “Handling dependencies” for more information about dependencies on other packages, including the BUILDLINK_RECOMMENDED and RECOMMENDED definitions.

    d9345 1 a9345 1 . for _depend_ in ${BUILDLINK_DEPENDS.foo} d9403 1 a9403 1 "varname">BUILDLINK_DEPENDS.BUILDLINK_DEPENDS./etc/passwd:

        user:group[:[userid][:[descr][:[home][:shell]]]]
    

    Only the user and group are required; everything else is optional, but the colons must be in the right places when specifying optional bits. By default, a new user will have home directory /nonexistent, and login shell /sbin/nologin unless they are specified as part of the user element. Note that if the description contains spaces, then spaces should be backslash-escaped, as in:

    d10185 1 a10185 1 foo:foogrp::The\ Foomister d10188 22 a10209 3

    Similarly, groups can be created using the PKG_GROUPS variable, whose syntax is:

    d10211 1 a10211 1 group[:groupid] d10214 13 a10226 2

    As before, only the group name is required; the numeric identifier is optional.

    d11088 1 a11088 1 "varname">SITES_file
    if defined, else [TODO]

    d12830 4 a12833 4 such as security updates or ABI changes that do not prevent a package from building correctly. Such recommendations can be expressed using RECOMMENDED:

    d12835 1 a12835 1 RECOMMENDED+= tiff>=3.6.1:../../graphics/tiff d12843 1 a12843 1 "varname">RECOMMENDED
    entries will be d12848 2 a12849 2

    To ignore these dependency recommendations and just use the required IGNORE_RECOMMENDED=YES. This may d12868 2 a12869 3 vulnerabilities file as well as setting RECOMMENDED, see buildlink3.mk file exists for an affected package, a corresponding BUILDLINK_RECOMMENDED.pkg entry should be added or updated in it.

    d14197 4 a14200 31 commands. Each of the info files:

    • is considered to be installed in the directory ${PREFIX}/${INFO_DIR},

    • is registered in the Info directory file ${PREFIX}/${INFO_DIR}/dir,

    • and must be listed as a filename in the INFO_FILES variable in the package Makefile.

    INFO_DIR defaults to “info” and can be overridden in the package Makefile. INSTALL and USE_MAKEINFO in its Makefile. If a d14269 1 a14269 2 USE_MAKEINFO and TEXINFO_REQD either run d15454 474 a15927 1 "porting">Chapter 19. Porting d15937 1 a15937 1

    19.1. d15942 1 a15942 1 "#porting.compiler">19.2. Adding support for a new d15957 1 a15957 1 "porting.opsys">19.1. Porting pkgsrc to a d16080 1 a16080 1 "porting.compiler">19.2. Adding support @ 1.70 log @regen. @ text @d3082 6 d4513 2 a4514 3 # echo "I do not have enough disk space to build this pig." \ > pkgsrc/misc/openoffice/$BROKENF d4828 2 a4829 2 "filename">/usr/src (system sources, for sysutils/aperture, net/ppp-mppe):

    d5328 7 a5334 3 target="_top">pkgsrc-bugs: A list where problem reports related to pkgsrc are sent and discussed.

    d5348 7 a5354 2 target="_top">pkgsrc-changes: A list where all commit messages to pkgsrc are sent.

    d5360 25 a5384 2 target="_top">tech-pkg: A general discussion list for all things related to pkgsrc.

    d7099 1 a7099 1 "mailto:tech-pkg@@NetBSD.org">tech-pkg@@NetBSD.org>.

    d8795 3 a8797 3 "filename">ossaudio.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API.

    d12672 2 a12673 7 "varname">DEPENDS definition. An example of this is the print/lyx package, which uses the xpm library, version 3.4j to build:

    d12790 3 a12792 2 build, see the first part of the “do-configure” target print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

        if [ ! -e ${_PKGSRCDIR}/graphics/jpeg/${WRKDIR:T}/jpeg-6b ]; then    \
            cd ${_PKGSRCDIR}/../../graphics/jpeg && ${MAKE} extract; \
        fi
    

    If you build any other packages that way, please make sure the working files are deleted too when this package's working files are cleaned up. The easiest way to do so is by adding a pre-clean target:

        pre-clean:
                cd ${_PKGSRCDIR}/../../graphics/jpeg && ${MAKE} clean
    
    d13128 2 a13129 6 "varname">${ECHO}). As of this writing, the following packages use this: cad/simian, devel/ipv6socket, emulators/vmware-module, multimedia/realplayer, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d14012 3 a14014 3 _REPLACE.tcl.old= .*/bin/tclsh _REPLACE.tcl.new= ${PREFIX}/bin/tclsh _REPLACE_FILES.tcl= # list of tcl scripts which need to be fixed, d14017 9 d15127 9 @ 1.69 log @regen. @ text @d183 2 a184 3
    4.1. Working with binary packages
    d189 2 a190 2 "#where-to-get-binary-packages">4.1.1. Where to get binary packages
    d193 1 a193 1 "#how-to-use-binary-packages">4.1.2. How to use d1225 1 a1225 1 "_top">DragonFlyBSD

    d1516 2 a1517 3
    4.1. Working with binary packages
    d1522 2 a1523 2 "#where-to-get-binary-packages">4.1.1. Where to get binary packages d1526 1 a1526 1 "#how-to-use-binary-packages">4.1.2. How to use d1959 1 a1959 1

    DragonFlyBSD

    d2884 8 d2969 12 d2982 36 a3017 2

    You may also want to build 64-bit binaries, e.g.:

    d3019 3 a3021 1 CFLAGS= -xtarget=ultra -xarch=v9 d3024 4 a3027 4

    Whichever compiler you use, please ensure the compiler tools and your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} and e.g. /usr/pkg/{bin,sbin}.

    d3058 1 a3058 1 "plat.sunos.problems">3.2.7.3. Common d3101 2 a3102 2
    4.1. Working with binary packages
    d3107 2 a3108 2 "#where-to-get-binary-packages">4.1.1. Where to get binary packages d3111 1 a3111 1 "#how-to-use-binary-packages">4.1.2. How to use d3145 9 d3159 1 a3159 1 "getting-started">4.1. Working with binary d3165 49 a3213 3

    This section describes how to find, retrieve and install a precompiled binary package that someone else already prepared for your type of machine.

    d3220 2 a3221 2 "where-to-get-binary-packages">4.1.1. Where to get binary packages d3226 9 a3234 2

    Precompiled packages are stored on ftp.NetBSD.org and its mirrors in the directory /pub/NetBSD/packages/<OSVERSION>/<ARCH>/ for anonymous FTP access. OSVERSION is the NetBSD version (uname -r), ARCH is the architecture (uname -p). In that directory, there is a subdirectory for each category plus a d3282 4 a3285 2 "filename">All which includes the actual binaries in .tgz files. The category subdirectories use symbolic links to those files (this is the same directory layout as in /usr/pkgsrc/packages).

    This same directory layout applies for CD-ROM distributions, only that the directory may be rooted somewhere else, probably somewhere below /cdrom. Please consult your CD-ROMs documentation for the exact location.

    d3298 2 a3299 2 "how-to-use-binary-packages">4.1.2. How to use binary packages d4056 1 a4056 1 ssl Enable SSL support. d4058 2 a4059 2 firefox Use firefox as gecko rendering engine. mozilla Use mozilla as gecko rendering engine. d4061 2 a4062 2 mysql Enable support for MySQL database. pgsql Enable support for PostgreSQL database. d5777 8 @ 1.68 log @regen. @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.11 2006/01/13 17:42:33 reed Exp $

    d1026 15 d3003 1 a3003 1 following line to your .tar.gz.

    d10906 2 a10907 3

    If only some of the distfiles need to be uncompressed, the files to be uncompressed should be put into EXTRACT_ONLY.

    d10909 11 a10919 25

    If the distfiles are not in .tar.gz format, they can be extracted by setting either EXTRACT_SUFX, or EXTRACT_CMD, EXTRACT_BEFORE_ARGS and EXTRACT_AFTER_ARGS. In the former case, pkgsrc knows how to extract a number of suffixes (.tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and .gz; see the definition of the various DECOMPRESS_CMD variables in bsd.pkg.extract.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

        EXTRACT_SUFX=           .msg.gz
        EXTRACT_CMD=            zcat
        EXTRACT_BEFORE_ARGS=
        EXTRACT_AFTER_ARGS=     |sh
    
    d15177 168 @ 1.67 log @regen @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.10 2005/10/05 13:59:56 dillo Exp $

    d774 20 a793 1
    15. Making d799 1 a799 1 "#general-operation">15.1. General d805 1 a805 1 "#pulling-vars-from-etc-mk.conf">15.1.1. How to d810 1 a810 1 "#where-to-install-documentation">15.1.2. Where d814 1 a814 1 "#restricted-packages">15.1.3. Restricted d818 1 a818 1 "#dependencies">15.1.4. Handling d822 1 a822 1 "#conflicts">15.1.5. Handling conflicts with d826 1 a826 1 "#not-building-packages">15.1.6. Packages that d830 1 a830 1 "#undeletable-packages">15.1.7. Packages which d835 1 a835 1 "#security-handling">15.1.8. Handling packages d839 1 a839 1 "#compiler-bugs">15.1.9. How to handle compiler d843 1 a843 1 "#bumping-pkgrevision">15.1.10. How to handle d848 1 a848 1 "#portability-of-packages">15.1.11. Portability d854 1 a854 1 "#downloading-issues">15.2. Possible downloading d860 1 a860 1 "#no-plain-download">15.2.1. Packages whose d865 1 a865 1 "#modified-distfiles-same-name">15.2.2. How to d872 1 a872 1 "#configuration-gotchas">15.3. Configuration d878 1 a878 1 "#fixes.libtool">15.3.1. Shared libraries - d882 1 a882 1 "#using-libtool">15.3.2. Using libtool on GNU d887 1 a887 1 "#autoconf-automake">15.3.3. GNU d893 1 a893 1 "#fixes-build">15.4. Building the d899 1 a899 1 "#cpp-defines">15.4.1. CPP d903 1 a903 1 "#cpp-list-examples">15.4.2. Examples of CPP d907 1 a907 1 "#cpp-list">15.4.3. Getting a list of CPP d913 1 a913 1 "#package-specific-actions">15.5. Package specific d919 1 a919 1 "#user-interaction">15.5.1. User d923 1 a923 1 "#handling-licenses">15.5.2. Handling d927 1 a927 1 "#installing-score-files">15.5.3. Installing d931 1 a931 1 "#perl-scripts">15.5.4. Packages containing d935 1 a935 1 "#hardcoded-paths">15.5.5. Packages with d940 1 a940 1 "#perl-modules">15.5.6. Packages installing d944 1 a944 1 "#faq.info-files">15.5.7. Packages installing d948 1 a948 1 "#manpages">15.5.8. Packages installing man d952 1 a952 1 "#gconf2-data-files">15.5.9. Packages d956 1 a956 1 "#scrollkeeper-data-files">15.5.10. Packages d961 1 a961 1 "#x11-fonts">15.5.11. Packages installing X11 d965 1 a965 1 "#gtk2-modules">15.5.12. Packages installing d969 1 a969 1 "#sgml-xml-data">15.5.13. Packages installing d973 1 a973 1 "#mime-database">15.5.14. Packages installing d977 1 a977 1 "#intltool">15.5.15. Packages using d981 1 a981 1 "#startup-scripts">15.5.16. Packages installing d985 1 a985 1 "#tex-packages">15.5.17. Packages installing d991 1 a991 1 "#feedback-to-author">15.6. Feedback to the d996 1 a996 1
    16. d999 1 a999 1
    17. d1005 1 a1005 1 "#submitting-your-package">17.1. Submitting your d1009 1 a1009 1 "#general-notes-for-changes">17.2. General notes d1014 1 a1014 1 "#committing-importing">17.3. Committing: Importing d1018 1 a1018 1 "#updating-package">17.4. Updating a package to a d1022 1 a1022 1 "#moving-package">17.5. Moving a package in d2965 30 d3906 1 a3906 1 PKG_DEFAULT_OPTIONS= -arts -dvdread -esound d4093 1 a4093 1 "Chapter 17. Submitting and Committing">Chapter 17, d4248 33 a4710 10
  • If you have set CVS_USER in build.conf, make sure that account exists and can do a cvs ${CVS_FLAGS} update properly!

  • d4822 1 a4822 1 RSYNC_DST=$CVS_USER@@ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload d4827 4 a4830 4 ftp.NetBSD.org is different from CVS_USER, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use:

    d4861 1 a4861 1 "userinput">chroot /usr/sandbox
    d4863 1 a4863 1 "userinput">rm $HOME/.ssh/id-dsa*
    d4865 1 a4865 1 "userinput">ssh-keygen -t dsa d4890 1 a4890 1 "userinput">exit d4892 1 a4892 1 "userinput">cd /usr/sandbox/usr/pkgsrc d6338 19 a6356 1
    15. Making d6362 1 a6362 1 "#general-operation">15.1. General d6368 1 a6368 1 "#pulling-vars-from-etc-mk.conf">15.1.1. How to d6373 1 a6373 1 "#where-to-install-documentation">15.1.2. Where d6377 1 a6377 1 "#restricted-packages">15.1.3. Restricted d6381 1 a6381 1 "#dependencies">15.1.4. Handling d6385 1 a6385 1 "#conflicts">15.1.5. Handling conflicts with d6389 1 a6389 1 "#not-building-packages">15.1.6. Packages that d6393 1 a6393 1 "#undeletable-packages">15.1.7. Packages which d6398 1 a6398 1 "#security-handling">15.1.8. Handling packages d6402 1 a6402 1 "#compiler-bugs">15.1.9. How to handle compiler d6406 1 a6406 1 "#bumping-pkgrevision">15.1.10. How to handle d6411 1 a6411 1 "#portability-of-packages">15.1.11. Portability d6417 1 a6417 1 "#downloading-issues">15.2. Possible downloading d6423 1 a6423 1 "#no-plain-download">15.2.1. Packages whose d6428 1 a6428 1 "#modified-distfiles-same-name">15.2.2. How to d6435 1 a6435 1 "#configuration-gotchas">15.3. Configuration d6441 1 a6441 1 "#fixes.libtool">15.3.1. Shared libraries - d6445 1 a6445 1 "#using-libtool">15.3.2. Using libtool on GNU d6450 1 a6450 1 "#autoconf-automake">15.3.3. GNU d6455 1 a6455 1
    15.4. d6461 1 a6461 1 "#cpp-defines">15.4.1. CPP d6465 1 a6465 1 "#cpp-list-examples">15.4.2. Examples of CPP d6469 1 a6469 1 "#cpp-list">15.4.3. Getting a list of CPP d6475 1 a6475 1 "#package-specific-actions">15.5. Package specific d6481 1 a6481 1 "#user-interaction">15.5.1. User d6485 1 a6485 1 "#handling-licenses">15.5.2. Handling d6489 1 a6489 1 "#installing-score-files">15.5.3. Installing d6493 1 a6493 1 "#perl-scripts">15.5.4. Packages containing perl d6497 1 a6497 1 "#hardcoded-paths">15.5.5. Packages with d6502 1 a6502 1 "#perl-modules">15.5.6. Packages installing perl d6506 1 a6506 1 "#faq.info-files">15.5.7. Packages installing d6510 1 a6510 1 "#manpages">15.5.8. Packages installing man d6514 1 a6514 1 "#gconf2-data-files">15.5.9. Packages installing d6518 1 a6518 1 "#scrollkeeper-data-files">15.5.10. Packages d6523 1 a6523 1 "#x11-fonts">15.5.11. Packages installing X11 d6527 1 a6527 1 "#gtk2-modules">15.5.12. Packages installing GTK2 d6531 1 a6531 1 "#sgml-xml-data">15.5.13. Packages installing d6535 1 a6535 1 "#mime-database">15.5.14. Packages installing d6539 1 a6539 1 "#intltool">15.5.15. Packages using d6543 1 a6543 1 "#startup-scripts">15.5.16. Packages installing d6547 1 a6547 1 "#tex-packages">15.5.17. Packages installing TeX d6553 1 a6553 1 "#feedback-to-author">15.6. Feedback to the d6558 1 a6558 1
    16. d6561 1 a6561 1
    17. d6567 1 a6567 1 "#submitting-your-package">17.1. Submitting your d6571 1 a6571 1 "#general-notes-for-changes">17.2. General notes when d6576 1 a6576 1 "#committing-importing">17.3. Committing: Importing a d6580 1 a6580 1 "#updating-package">17.4. Updating a package to a d6584 1 a6584 1 "#moving-package">17.5. Moving a package in d6953 1 a6953 1 "15.5.7. Packages installing info files">Section 15.5.7, d8955 1 a8955 1 "15.1.4. Handling dependencies">Section 15.1.4, d10509 1 a10509 1 "15.3.1. Shared libraries - libtool">Section 15.3.1, d10949 4 a10952 1

    [TODO]

    d11101 150 a11250 9 can access the programs and files. As in the build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “install” (plus “install.man”, if USE_IMAKE is set).

    d11812 145 a11956 1 "fixes">
    Chapter 15. Making your package d11967 1 a11967 1 "#general-operation">15.1. General d11973 1 a11973 1 "#pulling-vars-from-etc-mk.conf">15.1.1. How to d11977 1 a11977 1 "#where-to-install-documentation">15.1.2. Where to d11981 1 a11981 1 "#restricted-packages">15.1.3. Restricted d11985 1 a11985 1 "#dependencies">15.1.4. Handling d11989 1 a11989 1 "#conflicts">15.1.5. Handling conflicts with other d11993 1 a11993 1 "#not-building-packages">15.1.6. Packages that d11997 1 a11997 1 "#undeletable-packages">15.1.7. Packages which d12002 1 a12002 1 "#security-handling">15.1.8. Handling packages with d12006 1 a12006 1 "#compiler-bugs">15.1.9. How to handle compiler d12010 1 a12010 1 "#bumping-pkgrevision">15.1.10. How to handle d12015 1 a12015 1 "#portability-of-packages">15.1.11. Portability of d12021 1 a12021 1 "#downloading-issues">15.2. Possible downloading d12027 1 a12027 1 "#no-plain-download">15.2.1. Packages whose d12032 1 a12032 1 "#modified-distfiles-same-name">15.2.2. How to d12039 1 a12039 1 "#configuration-gotchas">15.3. Configuration d12045 1 a12045 1 "#fixes.libtool">15.3.1. Shared libraries - d12049 1 a12049 1 "#using-libtool">15.3.2. Using libtool on GNU d12054 1 a12054 1 "#autoconf-automake">15.3.3. GNU d12059 1 a12059 1
    15.4. d12065 1 a12065 1 "#cpp-defines">15.4.1. CPP defines
    d12068 1 a12068 1 "#cpp-list-examples">15.4.2. Examples of CPP d12071 1 a12071 1
    15.4.3. d12077 1 a12077 1 "#package-specific-actions">15.5. Package specific d12083 1 a12083 1 "#user-interaction">15.5.1. User d12087 1 a12087 1 "#handling-licenses">15.5.2. Handling d12091 1 a12091 1 "#installing-score-files">15.5.3. Installing score d12095 1 a12095 1 "#perl-scripts">15.5.4. Packages containing perl d12099 1 a12099 1 "#hardcoded-paths">15.5.5. Packages with hardcoded d12103 1 a12103 1 "#perl-modules">15.5.6. Packages installing perl d12107 1 a12107 1 "#faq.info-files">15.5.7. Packages installing info d12110 1 a12110 1
    15.5.8. d12114 1 a12114 1 "#gconf2-data-files">15.5.9. Packages installing d12118 1 a12118 1 "#scrollkeeper-data-files">15.5.10. Packages d12122 1 a12122 1 "#x11-fonts">15.5.11. Packages installing X11 d12126 1 a12126 1 "#gtk2-modules">15.5.12. Packages installing GTK2 d12130 1 a12130 1 "#sgml-xml-data">15.5.13. Packages installing SGML d12134 1 a12134 1 "#mime-database">15.5.14. Packages installing d12138 1 a12138 1 "#intltool">15.5.15. Packages using d12142 1 a12142 1 "#startup-scripts">15.5.16. Packages installing d12146 1 a12146 1 "#tex-packages">15.5.17. Packages installing TeX d12152 1 a12152 1 "#feedback-to-author">15.6. Feedback to the d12162 1 a12162 1 "general-operation">15.1. General d12173 1 a12173 1 "pulling-vars-from-etc-mk.conf">15.1.1. How d12241 1 a12241 1 "where-to-install-documentation">15.1.2. Where d12261 1 a12261 1 "restricted-packages">15.1.3. Restricted d12340 1 a12340 1 "dependencies">15.1.4. Handling d12512 2 a12513 2 "15.1.8. Handling packages with security problems"> Section 15.1.8, “Handling packages d12595 1 a12595 1 "conflicts">15.1.5. Handling conflicts d12647 1 a12647 1 "not-building-packages">15.1.6. Packages d12680 1 a12680 1 "undeletable-packages">15.1.7. Packages d12705 1 a12705 1 "security-handling">15.1.8. Handling d12744 1 a12744 1 "compiler-bugs">15.1.9. How to handle d12771 1 a12771 1 "bumping-pkgrevision">15.1.10. How to d12812 1 a12812 1 "portability-of-packages">15.1.11. Portability d12829 1 a12829 1 "install-scripts">15.1.11.1. ${INSTALL}, d12854 1 a12854 1 "downloading-issues">15.2. Possible d12865 1 a12865 1 "no-plain-download">15.2.1. Packages d12939 1 a12939 1 "modified-distfiles-same-name">15.2.2. How d12981 1 a12981 1 "configuration-gotchas">15.3. Configuration d12992 1 a12992 1 "fixes.libtool">15.3.1. Shared libraries d13086 1 a13086 1 d13221 1 a13221 1 "using-libtool">15.3.2. Using libtool on d13304 1 a13304 1 "autoconf-automake">15.3.3. GNU d13361 1 a13361 1 "fixes-build">15.4. Building the d13372 1 a13372 1 "cpp-defines">15.4.1. CPP defines d13407 1 a13407 1 "fixes-build-cpp-opsys">15.4.1.1. CPP d13443 1 a13443 1 "fixes-build-cpp-cpu">15.4.1.2. CPP d13460 1 a13460 1 "fixes-build-cpp-compiler">15.4.1.3. CPP d13477 1 a13477 1 "cpp-list-examples">15.4.2. Examples of d13545 1 a13545 1 "cpp-list">15.4.3. Getting a list of CPP d13570 1 a13570 1 "package-specific-actions">15.5. Package d13581 1 a13581 1 "user-interaction">15.5.1. User d13632 1 a13632 1 "handling-licenses">15.5.2. Handling d13731 1 a13731 1 "installing-score-files">15.5.3. Installing d13770 1 a13770 1 "perl-scripts">15.5.4. Packages d13789 1 a13789 1 "hardcoded-paths">15.5.5. Packages with d13818 1 a13818 1 "perl-modules">15.5.6. Packages d13867 1 a13867 1 "faq.info-files">15.5.7. Packages d13971 1 a13971 1 "manpages">15.5.8. Packages installing d14039 1 a14039 1 "gconf2-data-files">15.5.9. Packages d14128 1 a14128 1 "scrollkeeper-data-files">15.5.10. Packages d14178 1 a14178 1 "x11-fonts">15.5.11. Packages installing d14215 1 a14215 1 "gtk2-modules">15.5.12. Packages d14289 1 a14289 1 "sgml-xml-data">15.5.13. Packages d14353 1 a14353 1 "mime-database">15.5.14. Packages d14420 1 a14420 1 "intltool">15.5.15. Packages using d14445 1 a14445 1 "startup-scripts">15.5.16. Packages d14469 1 a14469 1 "tex-packages">15.5.17. Packages d14546 1 a14546 1 "feedback-to-author">15.6. Feedback to the d14570 1 a14570 1 "debug">Chapter 16. Debugging d14774 1 a14774 1 "Chapter 17. Submitting and Committing">Chapter 17, d14786 1 a14786 1 "submit">Chapter 17. Submitting and d14797 1 a14797 1 "#submitting-your-package">17.1. Submitting your d14801 1 a14801 1 "#general-notes-for-changes">17.2. General notes when d14805 1 a14805 1 "#committing-importing">17.3. Committing: Importing a d14809 1 a14809 1 "#updating-package">17.4. Updating a package to a newer d14812 1 a14812 1
    17.5. d14822 1 a14822 1 "submitting-your-package">17.1. Submitting d14855 1 a14855 1 "Chapter 16. Debugging">Chapter 16, d14891 1 a14891 1 "general-notes-for-changes">17.2. General d14944 1 a14944 1 "committing-importing">17.3. Committing: d14993 1 a14993 1 "updating-package">17.4. Updating a d15044 1 a15044 1 "moving-package">17.5. Moving a package in d15383 1 a15383 1 cc -c -DXPFILE=\"/usr/pkg/share/bison.simple\" -DXPFILE1=\"/usr/pkg/share/bison.hairy\" -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ALLOCA=1 -DHAVE_STRERROR=1 -g ./files.c d15490 2 a15491 2 230- ___ _ _ _ 230- | _| |_ ___ ___| |_|___ ___ ___ ___ d15508 1 a15508 1 230-mirrored to ftp-admin@@plig.org. d15519 1 a15519 1 250- d15527 1 a15527 1 250 d15589 1 a15589 1 Registering depends:. @ 1.66 log @regen. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d1073 1 a1073 1
    d1077 1 a1077 1

    a1106 1 "introduction-section" id= d1239 1 a1239 1

    d1285 1 a1285 1
    a1289 1 "terminology" id= d1384 1 a1384 1
    a1388 1 "typography" id= d1404 1 a1404 1
    d1408 1 a1408 1

    d1695 1 a1695 1

    d1729 1 a1729 2 "as-tar-file" id="as-tar-file">2.1. As tar file

    d1742 1 a1742 1
    d1747 1 a1747 1 "via-sup" id="via-sup">2.2. Via SUP

    d1769 1 a1769 1
    d1774 1 a1774 1 "via-cvs" id="via-cvs">2.3. Via CVS d1816 1 a1816 1
    a1820 1 "uptodate-cvs" id= d1853 1 a1853 1
    d1857 1 a1857 1

    a1907 1 "bootstrapping-pkgsrc" id= d1975 1 a1975 1 Chapter 2, Where to get pkgsrc and how to keep it d2013 1 a2013 1
    a2017 1 "platform-specific-notes" id= d2027 1 a2027 1
    d2031 1 a2031 1

    d2076 3 a2078 3

    3.2.1.1. Using a disk image

    d2098 1 a2098 1
    d2102 2 a2103 2

    3.2.1.2. Using a d2165 1 a2165 1
    d2169 1 a2169 1

    d2231 1 a2231 1

    a2256 1 "platform.interix-sfu-install" id= d2319 1 a2319 1
    a2323 1 "platform.interix-sfu-postinstall" id= d2373 1 a2373 1
    a2377 1 "platform.interix-notes" id= d2416 1 a2416 1
    a2420 1 "platform.interix-limits" id= d2533 1 a2533 1
    a2537 1 "platform.interix-knownissues" id= d2565 1 a2565 1
    d2569 1 a2569 1

    d2657 1 a2657 1

    d2738 1 a2738 1

    d2811 1 a2811 1

    d2856 3 a2858 3

    3.2.7.1. If you are using gcc

    d2883 1 a2883 1
    a2887 1 "solaris-sun-workshop-note" id= d2950 1 a2950 1
    d2954 1 a2954 1

    a3012 1 "getting-started" id= d3023 1 a3023 1
    a3027 1 "where-to-get-binary-packages" id= d3064 1 a3064 1
    a3068 1 "how-to-use-binary-packages" id= d3138 1 a3138 1
    d3142 1 a3142 1

    a3171 1 "building-packages-from-source" id= d3184 1 a3184 1
    d3188 1 a3188 1

    d3208 2 a3209 2

    4.2.2. Fetching d3247 1 a3247 1
    a3251 1 "how-to-build-and-install" id= d3299 2 a3300 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3438 1 a3438 1
    a3442 1 "selecting-the-compiler" id= d3528 1 a3528 1
    d3532 1 a3532 1

    a3565 1 "general-configuration" id= d3647 1 a3647 1
    a3651 1 "variables-affecting-build" id= d3723 1 a3723 1
    a3727 1 "developer-advanced-settings" id= d3805 1 a3805 1
    a3809 1 "selecting-build-options" id= d3852 9 a3860 2 “-” are disabled.

    d3918 1 a3918 1
    d3922 1 a3922 1

    a3997 1 "building-a-single-binary-package" id= d4035 1 a4035 1 "B.2. Packaging figlet">Section B.2, d4044 3 a4046 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d4049 1 a4049 1
    a4053 1 "settings-for-creationg-of-binary-packages" id= d4065 1 a4065 1
    d4070 2 a4071 2 "bulkbuild" id="bulkbuild">6.3. Doing a bulk build of all packages

    d4093 1 a4093 1
    d4097 1 a4097 2

    a4107 1 "binary.bulk.build.conf" id= d4132 1 a4132 1
    d4136 1 a4136 1

    Some other options are scattered in the pkgsrc infrastructure:

    • CHECK_FILES can be set to “yes” to check that the installed set of files matches the PLIST.

    • CHECK_INTERPRETER can be set to “yes” to check that the installed “#!”-scripts will find their interpreter.

    d4201 1 a4201 1
    d4205 1 a4205 1

    a4245 1 "other-environmental-considerations" id= d4287 1 a4287 1
    d4291 1 a4291 1

    d4340 1 a4340 1

    a4404 1 "disk-space-requirements" id= d4443 1 a4443 1
    d4447 3 a4449 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4660 1 a4660 1
    a4664 1 "building-a-partial-set" id= d4714 1 a4714 1
    d4718 1 a4718 1

    a4868 1 "creating-cdroms" id= d4889 1 a4889 1
    d4893 1 a4893 1

    d4963 1 a4963 1

    a5046 1 "mailing-list-pointers" id= d5101 1 a5101 1

    d5811 1 a5811 1
    a5815 1 "audit-packages" id= d5888 1 a5888 1
    d5892 1 a5892 1

    BUILDLINK_DEPENDS. pkg in d6505 1 a6505 1

    a6555 1 "components.Makefile" id= d6871 1 a6871 1
    a6875 1 "components.distinfo" id= d6924 1 a6924 1
    a6928 1 "components.patches" id= d7032 1 a7032 1
    a7036 1 "other-mandatory-files" id= d7076 1 a7076 1
    a7080 1 "components.optional" id= d7164 1 a7164 1
    d7169 1 a7169 1 "work-dir" id="work-dir">8.6.  a7196 1 "files-dir" id= d7217 1 a7217 1
    d7221 1 a7221 1

    a7310 1 "makefile.variables" id= d7414 1 a7414 1
    a7418 1 "makefile.variables.names" id= d7454 1 a7454 1
    a7458 1 "makefile.code" id= d7469 1 a7469 1
    d7473 1 a7473 1

    a7503 1 "converting-internal-to-external" id= d7524 1 a7524 1
    a7528 1 "passing-variable-to-shell" id= d7586 1 a7586 1
    d7590 1 a7590 1

    a7715 1 "bsd-make-bug-workaround" id= d7742 1 a7742 1
    d7746 1 a7746 1

    d7812 1 a7812 1 "rcs-id" id="rcs-id">10.1. RCS ID

    d7825 1 a7825 1
    a7829 1 "automatic-plist-generation" id= d7847 1 a7847 1
    a7851 1 "print-PLIST" id= d7895 1 a7895 1
    a7899 1 "plist.misc" id= d8024 1 a8024 1
    a8028 1 "manpage-compression" id= d8053 1 a8053 1
    a8057 1 "using-PLIST_SRC" id= d8077 1 a8077 1
    a8081 1 "platform-specific-plist" id= d8128 1 a8128 1
    a8132 1 "faq.common-dirs" id= d8220 1 a8220 1
    d8224 1 a8224 1

    a8327 1 "converting-to-buildlink3" id= d8496 1 a8496 1
    a8500 1 "creating-buildlink3.mk" id= d8544 1 a8544 1
    d8548 2 a8549 2

    11.2.1. Anatomy of a d8666 3 a8668 3 "varname">BUILDLINK_LIBDIRS. pkg (not shown above) are lists of subdirectories of d8810 1 a8810 2 "updating-buildlink-depends" id= "updating-buildlink-depends">11.2.2. Updating d8812 2 a8813 2 "varname">BUILDLINK_DEPENDS. pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8874 1 a8874 1
    a8878 1 "writing-builtin.mk" id= d8933 1 a8933 1
    d8937 1 a8937 2

    a9068 1 "native-or-pkgsrc-preference" id= d9112 1 a9112 1
    d9116 1 a9116 1

    a9264 1 "files-and-dirs-outside-prefix" id= d9300 1 a9300 1
    d9304 1 a9304 2

    d9354 2 a9355 2

    12.1.2. File d9417 1 a9417 1
    a9421 1 "conf-files" id= d9442 1 a9442 1
    d9446 2 a9447 2

    12.2.1. How d9572 1 a9572 1
    d9576 1 a9576 2

    d9605 1 a9605 2

    d9665 2 a9666 2

    12.2.4. Disabling d9679 1 a9679 1
    a9683 1 "rcd-scripts" id= d9766 1 a9766 1
    d9770 1 a9770 2

    a9792 1 "users-and-groups" id= d9838 1 a9838 1

    d9870 1 a9870 1
    d9874 2 a9875 2

    12.5.1. Disabling shell d9889 1 a9889 1
    d9894 1 a9894 1 "fonts" id="fonts">12.6. Fonts

    d9926 1 a9926 1

    d10862 1 a10862 1
    a10866 1 "build.wrapper" id= d10876 1 a10876 1
    a10880 1 "build.configure" id= d10935 1 a10935 1
    d10940 2 a10941 3 "build.build" id="build.build">14.12. The build phase

    d10981 1 a10981 1
    d10986 2 a10987 3 "build.test" id="build.test">14.13. The test phase

    d10995 1 a10995 1
    a10999 1 "build.install" id= d11009 5 a11013 4 build-target, MAKE_PROGRAM is invoked on MAKEFILE here, but with the INSTALL_TARGET instead, the latter defaulting to “In the install phase, the following variables are useful. They are all variations of the install(1) command that have the owner, group and permissions preset. INSTALL is the plain install command. The specialized variants, together with their intended use, are:

    INSTALL_PROGRAM_DIR

    directories that contain binaries

    INSTALL_SCRIPT_DIR

    directories that contain scripts

    INSTALL_LIB_DIR

    directories that contain shared and static libraries

    INSTALL_DATA_DIR

    directories that contain data files

    INSTALL_MAN_DIR

    directories that contain man pages

    INSTALL_PROGRAM

    binaries that can be stripped from debugging symbols

    INSTALL_SCRIPT

    binaries that cannot be unstripped

    INSTALL_GAME

    game binaries

    INSTALL_LIB

    shared and static libraries

    INSTALL_DATA

    data files

    INSTALL_GAME_DATA

    data files for games

    INSTALL_MAN

    man pages

    d11019 1 a11019 1
    a11023 1 "build.package" id= d11033 1 a11033 1
    a11037 1 "build.helpful-targets" id= d11573 1 a11573 1
    d11577 1 a11577 1

    a11783 1 "general-operation" id= d11790 1 a11790 1
    a11794 1 "pulling-vars-from-etc-mk.conf" id= d11858 1 a11858 1
    a11862 1 "where-to-install-documentation" id= d11878 1 a11878 1
    d11882 1 a11882 2

    d11961 1 a11961 1

    for more d12212 1 a12212 1
    d12216 1 a12216 1

    d12268 1 a12268 2

    d12301 1 a12301 2

    d12326 1 a12326 1

    d12365 1 a12365 1

    d12392 2 a12393 2

    15.1.10. How to d12429 1 a12429 1
    a12433 1 "portability-of-packages" id= d12446 1 a12446 1
    d12450 1 a12450 1

    a12475 1 "downloading-issues" id= d12482 1 a12482 1
    d12486 1 a12486 1

    a12560 1 "modified-distfiles-same-name" id= d12598 1 a12598 1
    a12602 1 "configuration-gotchas" id= d12609 1 a12609 1
    d12613 1 a12613 1

    d12842 1 a12842 1

    d12925 1 a12925 1

    a12982 1 "fixes-build" id= d12989 1 a12989 1
    d12993 1 a12993 1

    a13028 1 "fixes-build-cpp-opsys" id= d13060 1 a13060 1
    d13064 2 a13065 2

    15.4.1.2. CPP d13077 1 a13077 1
    a13081 1 "fixes-build-cpp-compiler" id= d13094 1 a13094 1
    d13098 1 a13098 1

    d13166 1 a13166 1

    a13191 1 "package-specific-actions" id= d13198 1 a13198 1
    d13202 1 a13202 1

    d13253 1 a13253 1

    a13352 1 "installing-score-files" id= d13387 1 a13387 1
    d13391 1 a13391 1

    d13410 1 a13410 1

    d13439 1 a13439 1

    d13488 1 a13488 1

    d13592 1 a13592 1

    d13660 1 a13660 1

    a13749 1 "scrollkeeper-data-files" id= d13795 1 a13795 1
    d13799 1 a13799 1

    d13836 1 a13836 1

    d13910 1 a13910 1

    d13974 1 a13974 1

    d14041 1 a14041 1

    d14066 1 a14066 1

    d14090 1 a14090 1

    a14167 1 "feedback-to-author" id= d14187 1 a14187 1
    d14191 1 a14191 1

    d14407 1 a14407 1

    a14443 1 "submitting-your-package" id= d14508 1 a14508 1
    a14512 1 "general-notes-for-changes" id= d14561 1 a14561 1
    a14565 1 "committing-importing" id= d14610 1 a14610 1
    a14614 1 "updating-package" id= d14661 1 a14661 1
    a14665 1 "moving-package" id= d14754 1 a14754 1
    d14758 1 a14758 1

    a14807 1 "example-files" id= d14813 1 a14813 1
    d14817 1 a14817 1

    d14845 1 a14845 1

    d14862 1 a14862 1

    a14880 1 "checking-package-with-pkglint" id= d14911 1 a14911 1
    a14915 1 "steps-for-b-i-p" id= d14943 2 a14944 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d15069 1 a15069 1
    d15073 1 a15073 1

    a15095 1 "logs.building" id= d15194 1 a15194 1
    a15198 1 "logs.package" id= d15217 1 a15217 1
    d15221 1 a15221 1

    Section 6.3, “Doing a bulk build of all d15320 1 a15320 1
    d15324 1 a15324 1

    d15351 1 a15351 1 "targets" id="targets">D.1. Targets

    d15403 1 a15403 1
    a15407 1 "procedure" id= @ 1.65 log @regen @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1 September 2005), see www.w3.org" /> d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d1073 1 a1073 1
    d1077 1 a1077 1

    d1107 1 d1240 1 a1240 1

    d1286 1 a1286 1
    d1291 1 d1386 1 a1386 1
    d1391 1 d1407 1 a1407 1
    d1411 1 a1411 1

    d1698 1 a1698 1

    d1732 2 a1733 1 "as-tar-file">2.1. As tar file

    d1746 1 a1746 1
    d1751 1 a1751 1 "via-sup">2.2. Via SUP

    d1773 1 a1773 1
    d1778 1 a1778 1 "via-cvs">2.3. Via CVS

    d1820 1 a1820 1
    d1825 1 d1858 1 a1858 1
    d1862 1 a1862 1

    d1913 1 d1981 1 a1981 1 Chapter 2, Where to get pkgsrc and how to keep it d2019 1 a2019 1
    d2024 1 d2034 1 a2034 1
    d2038 1 a2038 1

    d2083 3 a2085 3

    3.2.1.1. Using a disk image

    d2105 1 a2105 1
    d2109 2 a2110 2

    3.2.1.2. Using a d2172 1 a2172 1
    d2176 1 a2176 1

    d2238 1 a2238 1

    d2264 1 d2327 1 a2327 1
    d2332 1 d2382 1 a2382 1
    d2387 1 d2426 1 a2426 1
    d2431 1 d2544 1 a2544 1
    d2549 1 d2577 1 a2577 1
    d2581 1 a2581 1

    d2669 1 a2669 1

    d2750 1 a2750 1

    d2823 1 a2823 1

    d2868 3 a2870 3

    3.2.7.1. If you are using gcc

    d2895 1 a2895 1
    d2900 1 d2963 1 a2963 1
    d2967 1 a2967 1

    d3026 1 d3037 1 a3037 1
    d3042 1 d3079 1 a3079 1
    d3084 1 d3154 1 a3154 1
    d3158 1 a3158 1

    d3188 1 d3201 1 a3201 1
    d3205 1 a3205 1

    d3225 2 a3226 2

    4.2.2. Fetching d3264 1 a3264 1
    d3269 1 d3317 2 a3318 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3456 1 a3456 1
    d3461 1 d3547 1 a3547 1
    d3551 1 a3551 1

    d3585 1 d3667 1 a3667 1
    d3672 1 d3744 1 a3744 1
    d3749 1 d3827 1 a3827 1
    d3832 1 d3934 1 a3934 1
    d3938 1 a3938 1

    d4014 1 d4052 1 a4052 1 "B.2. Packaging figlet">Section B.2, d4061 3 a4063 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d4066 1 a4066 1
    d4071 1 d4083 1 a4083 1
    d4088 2 a4089 2 "bulkbuild">6.3. Doing a bulk build of all packages

    d4111 1 a4111 1
    d4115 2 a4116 1

    d4127 1 d4152 1 a4152 1
    d4156 1 a4156 1

    d4250 1 a4250 1

    d4291 1 d4333 1 a4333 1
    d4337 1 a4337 1

    d4386 1 a4386 1

    d4451 1 d4490 1 a4490 1
    d4494 3 a4496 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4707 1 a4707 1
    d4712 1 d4762 1 a4762 1
    d4766 1 a4766 1

    d4917 1 d4938 1 a4938 1
    d4942 1 a4942 1

    d5012 1 a5012 1

    d5096 1 d5151 1 a5151 1

    d5872 1 a5872 1
    d5877 1 d5950 1 a5950 1
    d5954 1 a5954 1

    BUILDLINK_DEPENDS.pkg in d6567 1 a6567 1

    d6618 1 d6934 1 a6934 1
    d6939 1 d6988 1 a6988 1
    d6993 1 d7097 1 a7097 1
    d7102 1 d7142 1 a7142 1
    d7147 1 d7231 1 a7231 1
    d7236 1 a7236 1 "work-dir">8.6.  d7264 1 d7285 1 a7285 1
    d7289 1 a7289 1

    d7379 1 d7483 1 a7483 1
    d7488 1 d7524 1 a7524 1
    d7529 1 d7540 1 a7540 1
    d7544 1 a7544 1

    d7575 1 d7596 1 a7596 1
    d7601 1 d7659 1 a7659 1
    d7663 1 a7663 1

    d7789 1 d7816 1 a7816 1
    d7820 1 a7820 1

    d7886 1 a7886 1 "rcs-id">10.1. RCS ID

    d7899 1 a7899 1
    d7904 1 d7922 1 a7922 1
    d7927 1 d7971 1 a7971 1
    d7976 1 d8101 1 a8101 1
    d8106 1 d8131 1 a8131 1
    d8136 1 d8156 1 a8156 1
    d8161 1 d8208 1 a8208 1
    d8213 1 d8301 1 a8301 1
    d8305 1 a8305 1

    d8409 1 d8578 1 a8578 1
    d8583 1 d8627 1 a8627 1
    d8631 2 a8632 2

    11.2.1. Anatomy of a d8749 3 a8751 3 "varname">BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of d8893 2 a8894 1 "updating-buildlink-depends">11.2.2. Updating d8896 2 a8897 2 "varname">BUILDLINK_DEPENDS.pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8957 1 a8957 1
    d8962 1 d9017 1 a9017 1
    d9021 2 a9022 1

    d9154 1 d9198 1 a9198 1
    d9202 1 a9202 1

    d9351 1 d9387 1 a9387 1
    d9391 2 a9392 1

    d9442 2 a9443 2

    12.1.2. File d9505 1 a9505 1
    d9510 1 d9531 1 a9531 1
    d9535 2 a9536 2

    12.2.1. How d9661 1 a9661 1

    d10713 1 a10713 1 "varname">PKGPATH (read-only) d10722 1 a10722 1 "varname">WRKDIR (read-only) d10736 1 a10736 1 "varname">WRKSRC (read-write) d10743 4 a10746 1 directory entry that isn't hidden.

    d10752 1 a10752 1
    d10757 1 d10774 1 a10774 1
    d10779 3 a10781 2 "build.fetch">14.5. The fetch phase d10813 1 a10813 1
    d10818 1 d10834 1 a10834 1
    d10839 1 d10907 1 a10907 1
    d10912 3 a10914 2 "build.patch">14.8. The patch phase d10956 1 a10956 1
    d10961 3 a10963 2 "build.tools">14.9. The tools phase d10971 1 a10971 1
    d10976 1 d10986 1 a10986 1
    d10991 1 d11046 1 a11046 1
    d11051 3 a11053 2 "build.build">14.12. The build phase d11093 1 a11093 1
    d11098 3 a11100 2 "build.test">14.13. The test phase d11108 1 a11108 1
    d11113 1 d11123 4 a11126 5 build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “ d11238 1 d11248 1 a11248 1
    d11253 1 d11789 1 a11789 1
    d11793 1 a11793 1

    d12000 1 d12007 1 a12007 1
    d12012 1 d12076 1 a12076 1
    d12081 1 d12097 1 a12097 1
    d12101 2 a12102 1

    d12181 1 a12181 1

    for more d12432 1 a12432 1
    d12436 1 a12436 1

    d12488 2 a12489 1

    d12522 2 a12523 1

    d12548 1 a12548 1

    d12587 1 a12587 1

    d12614 2 a12615 2

    15.1.10. How to d12651 1 a12651 1
    d12656 1 d12669 1 a12669 1
    d12673 1 a12673 1

    d12699 1 d12706 1 a12706 1
    d12710 1 a12710 1

    d12785 1 d12823 1 a12823 1
    d12828 1 d12835 1 a12835 1
    d12839 1 a12839 1

    d13068 1 a13068 1

    d13151 1 a13151 1

    d13209 1 d13216 1 a13216 1
    d13220 1 a13220 1

    d13256 1 d13288 1 a13288 1
    d13292 2 a13293 2

    15.4.1.2. CPP d13305 1 a13305 1
    d13310 1 d13323 1 a13323 1
    d13327 1 a13327 1

    d13395 1 a13395 1

    d13421 1 d13428 1 a13428 1
    d13432 1 a13432 1

    d13483 1 a13483 1

    d13583 1 d13618 1 a13618 1
    d13622 1 a13622 1

    d13641 1 a13641 1

    d13670 1 a13670 1

    d13719 1 a13719 1

    d13823 1 a13823 1

    d13891 1 a13891 1

    d13981 1 d14027 1 a14027 1
    d14031 1 a14031 1

    d14068 1 a14068 1

    d14142 1 a14142 1

    d14206 1 a14206 1

    d14273 1 a14273 1

    d14298 1 a14298 1

    d14322 1 a14322 1

    d14400 1 d14420 1 a14420 1
    d14424 1 a14424 1

    d14640 1 a14640 1

    d14677 1 d14742 1 a14742 1
    d14747 1 d14796 1 a14796 1
    d14801 1 d14846 1 a14846 1
    d14851 1 d14898 1 a14898 1
    d14903 1 d14992 1 a14992 1
    d14996 1 a14996 1

    d15046 1 d15052 1 a15052 1
    d15056 1 a15056 1

    d15084 1 a15084 1

    d15101 1 a15101 1

    d15120 1 d15151 1 a15151 1
    d15156 1 d15184 2 a15185 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d15310 1 a15310 1
    d15314 1 a15314 1

    d15337 1 d15436 1 a15436 1
    d15441 1 d15460 1 a15460 1
    d15464 1 a15464 1

    Section 6.3, “Doing a bulk build of all d15563 1 a15563 1
    d15567 1 a15567 1

    d15594 1 a15594 1 "targets">D.1. Targets

    d15646 1 a15646 1
    d15651 1 @ 1.64 log @Regenerated after applying a fix from PR 32366 Other changes appeared also, looks ok. @ text @d655 13 a667 2 "#shells-disable">12.5.1. Disabling handling of configuration files d3886 3 a3888 1 options were selected by setting a variable in d3893 5 a3897 2 options setting automatically. A warning is issued to prompt the user to update d5863 1 a5863 1 audit-package.

    d6140 13 a6152 2 "#shells-disable">12.5.1. Disabling handling of configuration files d9177 13 a9189 2 "#shells-disable">12.5.1. Disabling handling of configuration files d9225 4 d9233 1 a9233 8 in detail. Note that in order to use any of the described functionalities, you must add the following to your package's Makefile:

        USE_PKGINSTALL= YES
    
    a9853 1 USE_PKGINSTALL= YES d9862 2 a9863 2 "shells-disable">12.5.1. Disabling handling of configuration files

    d9875 56 d13799 2 a13800 6 This can be automatically done by using mk/fonts.mk, which you need to include in your Makefile.

    d13802 10 a13811 10

    When the file is included, you can list the directories where fonts are installed in the FONTS_type_DIRS variables, where type can be one of “TTF”, “TYPE1” or “X11”. Also make sure that the database file sunpro: d14039 12 @ 1.62 log @regen. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d18 1 a18 1

    d22 2 a23 2

    The pkgsrc guide

    d1062 1 a1062 1
    d1066 1 a1066 1

    a1095 1 "introduction-section" id= d1228 1 a1228 1

    d1274 1 a1274 1
    a1278 1 "terminology" id= d1373 1 a1373 1
    a1377 1 "typography" id= d1393 1 a1393 1
    d1397 1 a1397 1

    d1684 1 a1684 1

    d1718 1 a1718 2 "as-tar-file" id="as-tar-file">2.1. As tar file

    d1731 1 a1731 1
    d1736 1 a1736 1 "via-sup" id="via-sup">2.2. Via SUP

    d1758 1 a1758 1
    d1763 1 a1763 1 "via-cvs" id="via-cvs">2.3. Via CVS

    d1805 1 a1805 1
    a1809 1 "uptodate-cvs" id= d1842 1 a1842 1
    d1846 1 a1846 1

    a1896 1 "bootstrapping-pkgsrc" id= d1964 1 a1964 1 Chapter 2, Where to get pkgsrc and how to keep it d1983 4 a1986 1 "_top">www.pkgsrc.org.

    d2002 1 a2002 1
    a2006 1 "platform-specific-notes" id= d2016 1 a2016 1
    d2020 1 a2020 1

    d2065 3 a2067 3

    3.2.1.1. Using a disk image

    d2087 1 a2087 1
    d2091 2 a2092 2

    3.2.1.2. Using a d2154 1 a2154 1
    d2158 1 a2158 1

    d2220 1 a2220 1

    a2245 1 "platform.interix-sfu-install" id= d2308 1 a2308 1
    a2312 1 "platform.interix-sfu-postinstall" id= d2362 1 a2362 1
    a2366 1 "platform.interix-notes" id= d2405 1 a2405 1
    a2409 1 "platform.interix-limits" id= d2522 1 a2522 1
    a2526 1 "platform.interix-knownissues" id= d2554 1 a2554 1
    d2558 1 a2558 1

    d2646 1 a2646 1

    d2727 1 a2727 1

    d2800 1 a2800 1

    d2845 3 a2847 3

    3.2.7.1. If you are using gcc

    d2872 1 a2872 1
    a2876 1 "solaris-sun-workshop-note" id= d2939 1 a2939 1
    d2943 1 a2943 1

    a3001 1 "getting-started" id= d3012 1 a3012 1
    a3016 1 "where-to-get-binary-packages" id= d3053 1 a3053 1
    a3057 1 "how-to-use-binary-packages" id= d3127 1 a3127 1
    d3131 1 a3131 1

    a3154 1 "building-packages-from-source" id= d3167 1 a3167 1
    d3171 1 a3171 1

    d3191 2 a3192 2

    4.2.2. Fetching d3230 1 a3230 1
    a3234 1 "how-to-build-and-install" id= d3282 2 a3283 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3421 1 a3421 1
    a3425 1 "selecting-the-compiler" id= d3511 1 a3511 1
    d3515 1 a3515 1

    a3548 1 "general-configuration" id= d3630 1 a3630 1
    a3634 1 "variables-affecting-build" id= d3706 1 a3706 1
    a3710 1 "developer-advanced-settings" id= d3788 1 a3788 1
    a3792 1 "selecting-build-options" id= d3889 1 a3889 1
    d3893 1 a3893 1

    a3968 1 "building-a-single-binary-package" id= d4006 1 a4006 1 "B.2. Packaging figlet">Section B.2, d4015 3 a4017 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d4020 1 a4020 1
    a4024 1 "settings-for-creationg-of-binary-packages" id= d4036 1 a4036 1
    d4041 2 a4042 2 "bulkbuild" id="bulkbuild">6.3. Doing a bulk build of all packages

    d4050 7 a4056 4 packages from your system! Having an FTP server configured either on the machine doing the bulk builds or on a nearby NFS server can help to make the packages available to everyone. See d4068 1 a4068 2

    d4078 31 a4108 2

    6.3.1.1. /etc/mk.conf

    a4133 1

    d4135 34 a4168 10

    6.3.1.2. build.conf

    a4169 18

    In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the config file that determines where log files are generated after the build, where to mail the build report to, where your pkgsrc tree is located and the user to which user to su(8) to do a cvs update.

    d4172 1 a4172 1
    d4176 1 a4176 1

    a4216 1 "other-environmental-considerations" id= d4258 1 a4258 1
    d4262 1 a4262 1

    d4311 1 a4311 1

    a4375 1 "disk-space-requirements" id= d4414 1 a4414 1
    d4418 3 a4420 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4590 1 a4590 1 "6.3.1.1. /etc/mk.conf">Section 6.3.1.1, d4631 1 a4631 1
    a4635 1 "building-a-partial-set" id= d4685 1 a4685 1
    d4689 1 a4689 1

    a4839 1 "creating-cdroms" id= d4860 1 a4860 1
    d4864 1 a4864 1

    d4934 1 a4934 1

    a5017 1 "mailing-list-pointers" id= d5072 1 a5072 1

    d5782 1 a5782 1
    a5786 1 "audit-packages" id= d5859 1 a5859 1
    d5863 1 a5863 1

    BUILDLINK_DEPENDS. pkg in d6465 1 a6465 1

    a6515 1 "components.Makefile" id= d6831 1 a6831 1
    a6835 1 "components.distinfo" id= d6884 1 a6884 1
    a6888 1 "components.patches" id= d6992 1 a6992 1
    a6996 1 "other-mandatory-files" id= d7036 1 a7036 1
    a7040 1 "components.optional" id= d7124 1 a7124 1
    d7129 1 a7129 1 "work-dir" id="work-dir">8.6.  a7156 1 "files-dir" id= d7177 1 a7177 1
    d7181 1 a7181 1

    a7270 1 "makefile.variables" id= d7374 1 a7374 1
    a7378 1 "makefile.variables.names" id= d7414 1 a7414 1
    a7418 1 "makefile.code" id= d7429 1 a7429 1
    d7433 1 a7433 1

    a7463 1 "converting-internal-to-external" id= d7484 1 a7484 1
    a7488 1 "passing-variable-to-shell" id= d7546 1 a7546 1
    d7550 1 a7550 1

    a7675 1 "bsd-make-bug-workaround" id= d7702 1 a7702 1
    d7706 1 a7706 1

    d7772 1 a7772 1 "rcs-id" id="rcs-id">10.1. RCS ID

    d7785 1 a7785 1
    a7789 1 "automatic-plist-generation" id= d7807 1 a7807 1
    a7811 1 "print-PLIST" id= d7855 1 a7855 1
    a7859 1 "plist.misc" id= d7984 1 a7984 1
    a7988 1 "manpage-compression" id= d8013 1 a8013 1
    a8017 1 "using-PLIST_SRC" id= d8037 1 a8037 1
    a8041 1 "platform-specific-plist" id= d8088 1 a8088 1
    a8092 1 "faq.common-dirs" id= d8180 1 a8180 1
    d8184 1 a8184 1

    a8287 1 "converting-to-buildlink3" id= d8456 1 a8456 1
    a8460 1 "creating-buildlink3.mk" id= d8504 1 a8504 1
    d8508 2 a8509 2

    11.2.1. Anatomy of a d8626 3 a8628 3 "varname">BUILDLINK_LIBDIRS. pkg (not shown above) are lists of subdirectories of d8770 1 a8770 2 "updating-buildlink-depends" id= "updating-buildlink-depends">11.2.2. Updating d8772 2 a8773 2 "varname">BUILDLINK_DEPENDS. pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8834 1 a8834 1
    a8838 1 "writing-builtin.mk" id= d8893 1 a8893 1
    d8897 1 a8897 2

    a9028 1 "native-or-pkgsrc-preference" id= d9072 1 a9072 1
    d9076 1 a9076 1

    d9217 3 a9219 3 "files-and-dirs-outside-prefix" id= "files-and-dirs-outside-prefix">12.1. Files and directories outside the installation prefix

    d9252 1 a9252 1
    d9256 2 a9257 2

    12.1.1. Directory d9302 1 a9302 1
    d9306 2 a9307 2

    12.1.2. File d9369 1 a9369 1
    d9374 2 a9375 2 "conf-files" id="conf-files">12.2. Configuration files

    d9394 1 a9394 1
    d9398 2 a9399 2

    12.2.1. How d9519 1 a9519 1 "12.1.1. Directory manipulation">Section 12.1.1, d9524 1 a9524 1
    d9528 3 a9530 3

    12.2.2. Telling the software where configuration files are

    d9553 1 a9553 1
    d9557 2 a9558 2

    12.2.3. Patching d9595 1 a9595 1 "12.1.2. File manipulation">Section 12.1.2, d9613 1 a9613 1
    d9617 2 a9618 2

    12.2.4. Disabling d9631 1 a9631 1
    d9636 2 a9637 2 "rcd-scripts" id="rcd-scripts">12.3. System startup scripts

    d9648 2 a9649 2 Section 12.1, “Files and directories outside the installation prefix” apply, and the same d9718 1 a9718 1
    d9722 2 a9723 2

    12.3.1. Disabling d9740 1 a9740 1
    d9745 2 a9746 2 "users-and-groups" id="users-and-groups">12.4. System users and groups

    d9790 1 a9790 1
    d9795 1 a9795 1 "shells" id="shells">12.5. System shells

    d9823 1 a9823 1

    d10762 1 a10762 1
    a10766 1 "build.wrapper" id= d10776 1 a10776 1
    a10780 1 "build.configure" id= d10835 1 a10835 1
    d10840 2 a10841 3 "build.build" id="build.build">14.12. The build phase

    d10881 1 a10881 1
    d10886 2 a10887 3 "build.test" id="build.test">14.13. The test phase

    d10895 1 a10895 1
    a10899 1 "build.install" id= d10919 1 a10919 1
    a10923 1 "build.package" id= d10933 1 a10933 1
    a10937 1 "build.helpful-targets" id= d11473 1 a11473 1
    d11477 1 a11477 1

    a11683 1 "general-operation" id= d11690 1 a11690 1
    a11694 1 "pulling-vars-from-etc-mk.conf" id= d11758 1 a11758 1
    a11762 1 "where-to-install-documentation" id= d11778 1 a11778 1
    d11782 1 a11782 2

    d11861 1 a11861 1

    for more d12112 1 a12112 1
    d12116 1 a12116 1

    d12168 1 a12168 2

    d12201 1 a12201 2

    d12226 1 a12226 1

    d12265 1 a12265 1

    d12292 2 a12293 2

    15.1.10. How to d12329 1 a12329 1
    a12333 1 "portability-of-packages" id= d12346 1 a12346 1
    d12350 1 a12350 1

    a12375 1 "downloading-issues" id= d12382 1 a12382 1
    d12386 1 a12386 1

    a12460 1 "modified-distfiles-same-name" id= d12498 1 a12498 1
    a12502 1 "configuration-gotchas" id= d12509 1 a12509 1
    d12513 1 a12513 1

    d12742 1 a12742 1

    d12825 1 a12825 1

    a12882 1 "fixes-build" id= d12889 1 a12889 1
    d12893 1 a12893 1

    a12928 1 "fixes-build-cpp-opsys" id= d12960 1 a12960 1
    d12964 2 a12965 2

    15.4.1.2. CPP d12977 1 a12977 1
    a12981 1 "fixes-build-cpp-compiler" id= d12994 1 a12994 1
    d12998 1 a12998 1

    d13066 1 a13066 1

    a13091 1 "package-specific-actions" id= d13098 1 a13098 1
    d13102 1 a13102 1

    d13153 1 a13153 1

    a13252 1 "installing-score-files" id= d13287 1 a13287 1
    d13291 1 a13291 1

    d13310 1 a13310 1

    d13339 1 a13339 1

    d13388 1 a13388 1

    d13492 1 a13492 1

    d13560 1 a13560 1

    a13649 1 "scrollkeeper-data-files" id= d13695 1 a13695 1
    d13699 1 a13699 1

    d13740 1 a13740 1

    d13814 1 a13814 1

    d13878 1 a13878 1

    d13945 1 a13945 1

    d13970 1 a13970 1

    d13994 1 a13994 1

    a14059 1 "feedback-to-author" id= d14079 1 a14079 1
    d14083 1 a14083 1

    d14299 1 a14299 1

    a14335 1 "submitting-your-package" id= d14400 1 a14400 1
    a14404 1 "general-notes-for-changes" id= d14453 1 a14453 1
    a14457 1 "committing-importing" id= d14502 1 a14502 1
    a14506 1 "updating-package" id= d14553 1 a14553 1
    a14557 1 "moving-package" id= d14646 1 a14646 1
    d14650 1 a14650 1

    a14699 1 "example-files" id= d14705 1 a14705 1
    d14709 1 a14709 1

    d14737 1 a14737 1

    d14754 1 a14754 1

    a14772 1 "checking-package-with-pkglint" id= d14803 1 a14803 1
    a14807 1 "steps-for-b-i-p" id= d14835 2 a14836 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d14961 1 a14961 1
    d14965 1 a14965 1

    a14987 1 "logs.building" id= d15086 1 a15086 1
    a15090 1 "logs.package" id= d15109 1 a15109 1
    d15113 1 a15113 1

    Section 6.3, “Doing a bulk build of all d15212 1 a15212 1
    d15216 1 a15216 1

    d15243 1 a15243 1 "targets" id="targets">D.1. Targets

    d15295 1 a15295 1
    a15299 1 "procedure" id= @ 1.61 log @regen. @ text @d13079 1 a13079 1

    __ELF__, __gnu_linux__, __i386, _i386__, d13088 1 a13088 1

    __ELF__, __NetBSD__, __i386, _i386__, d13096 1 a13096 1

    __ELF__, __NetBSD__, __i386, _i386__, @ 1.60 log @regen. @ text @d12963 13 a12975 13 features unique to a specific platform. The best way to handle these differences is to use the GNU autotools (automake, autoconf, etc.) to check for specific features (like the existence of a header file, a function or a library).

    If that is not possible you can use the predefined macros below to configure your code to the platform it runs on. Almost every operating system, hardware architecture and compiler has its own macro. For example, if the macros __GNUC__, __i386__ and d13075 19 a13093 2

    SunPro 5.7 + Solaris 8 + SPARC
    d13096 2 a13097 2

    __SVR4, __sparc, __sun, __unix, sparc, sun, unix.

    d13108 8 @ 1.59 log @regen. @ text @d873 5 a877 1 "#cpp-list">15.4.2. Getting a list of CPP d6338 5 a6342 1 "#cpp-list">15.4.2. Getting a list of CPP d11634 5 a11638 1
    15.4.2. d12998 1 a12998 1 /* your BSD-specific code goes here */ d13000 1 a13000 1 /* non-BSD-specific code */ d13013 1 a13013 1 Solaris sun, __sun (GCC and SunPro), __sun__ (only GCC) d13047 1 d13056 43 d13100 1 a13100 1 "cpp-list">15.4.2. Getting a list of CPP d13106 3 a13108 4

    When your system uses the GNU C Compiler, you can get a list of symbols that are defined by default, e.g. to identify the platform, with the following command:

    d13112 5 d14841 3 a14843 3 pkglint(1)), more verbose checks will be performed. Use e.g. pkglint -v for a very verbose check.

    @ 1.58 log @re-generate @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1 September 2005), see www.w3.org" /> d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d117 2 a118 1 to get pkgsrc
    d130 4 d1058 1 a1058 1
    d1062 1 a1062 1

    d1092 1 d1225 1 a1225 1

    d1271 1 a1271 1
    d1276 1 d1371 1 a1371 1
    d1376 1 d1392 1 a1392 1
    d1396 1 a1396 1

    d1420 3 d1679 1 a1679 1
    d1683 1 a1683 1

    d1702 3 d1712 1 a1712 1

    d1731 1 a1731 1
    d1736 1 a1736 1 "via-sup">2.2. Via SUP

    d1758 1 a1758 1
    d1763 1 a1763 1 "via-cvs">2.3. Via CVS

    d1804 37 d1843 1 a1843 1
    d1847 1 a1847 1

    d1898 1 d1965 6 a1970 5 "Chapter 2. Where to get pkgsrc">Chapter 2, Where to get pkgsrc for other ways to get pkgsrc before bootstrapping. The given bootstrap command will use the defaults of d2006 1 d2016 1 a2016 1
    d2020 1 a2020 1

    d2065 3 a2067 3

    3.2.1.1. Using a disk image

    d2087 1 a2087 1
    d2091 2 a2092 2

    3.2.1.2. Using a d2114 1 a2114 1 "userinput">./bootstrap --pkgdbdir /usr/pkg/pkgdb --pkgsrcdir /Volumes/ufs/pkgsrc d2154 1 a2154 1
    d2158 1 a2158 1

    d2220 1 a2220 1

    d2246 1 d2309 1 a2309 1
    d2314 1 d2364 1 a2364 1
    d2369 1 d2408 1 a2408 1
    d2413 1 d2526 1 a2526 1
    d2531 1 d2559 1 a2559 1
    d2563 1 a2563 1

    d2651 1 a2651 1

    d2732 1 a2732 1

    d2805 1 a2805 1

    d2850 3 a2852 3

    3.2.7.1. If you are using gcc

    d2877 1 a2877 1
    d2882 1 d2945 1 a2945 1
    d2949 1 a2949 1

    d3008 1 d3019 1 a3019 1
    d3024 1 d3061 1 a3061 1
    d3066 1 d3136 1 a3136 1
    d3140 1 a3140 1

    d3164 1 d3177 1 a3177 1
    d3181 1 a3181 1

    d3201 2 a3202 2

    4.2.2. Fetching d3240 1 a3240 1
    d3245 1 d3293 2 a3294 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3432 1 a3432 1
    d3437 1 d3523 1 a3523 1
    d3527 1 a3527 1

    d3561 1 d3643 1 a3643 1
    d3648 1 d3720 1 a3720 1
    d3725 1 d3803 1 a3803 1
    d3808 1 d3905 1 a3905 1
    d3909 1 a3909 1

    d3985 1 d4023 1 a4023 1 "B.2. Packaging figlet">Section B.2, d4032 3 a4034 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d4037 1 a4037 1
    d4042 1 d4054 1 a4054 1
    d4059 2 a4060 2 "bulkbuild">6.3. Doing a bulk build of all packages

    d4079 1 a4079 1
    d4083 2 a4084 1

    d4094 1 a4094 1

    d4127 1 a4127 1

    d4158 1 a4158 1

    d4199 1 d4241 1 a4241 1
    d4245 1 a4245 1

    d4294 1 a4294 1

    d4359 1 d4398 1 a4398 1
    d4402 3 a4404 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4615 1 a4615 1
    d4620 1 d4670 1 a4670 1
    d4674 1 a4674 1

    d4825 1 d4846 1 a4846 1
    d4850 1 a4850 1

    d4920 1 a4920 1

    d5004 1 d5059 1 a5059 1

    d5780 1 a5780 1
    d5785 1 d5853 1 a5853 1 for way to control this check.

    d5858 1 a5858 1
    d5862 1 a5862 1

    BUILDLINK_DEPENDS.pkg in d6460 1 a6460 1

    d6511 1 d6827 1 a6827 1
    d6832 1 d6881 1 a6881 1
    d6886 1 d6990 1 a6990 1
    d6995 1 d7035 1 a7035 1
    d7040 1 d7124 1 a7124 1
    d7129 1 a7129 1 "work-dir">8.6.  d7157 1 d7178 1 a7178 1
    d7182 1 a7182 1

    d7272 1 d7376 1 a7376 1
    d7381 1 d7417 1 a7417 1
    d7422 1 d7433 1 a7433 1
    d7437 1 a7437 1

    d7468 1 d7489 1 a7489 1
    d7494 1 d7552 1 a7552 1
    d7556 1 a7556 1

    d7682 1 d7709 1 a7709 1
    d7713 1 a7713 1

    d7779 1 a7779 1 "rcs-id">10.1. RCS ID

    d7792 1 a7792 1
    d7797 1 d7815 1 a7815 1
    d7820 1 d7864 1 a7864 1
    d7869 1 d7994 1 a7994 1
    d7999 1 d8024 1 a8024 1
    d8029 1 d8049 1 a8049 1
    d8054 1 d8101 1 a8101 1
    d8106 1 d8194 1 a8194 1
    d8198 1 a8198 1

    d8302 1 d8471 1 a8471 1
    d8476 1 d8520 1 a8520 1
    d8524 2 a8525 2

    11.2.1. Anatomy of a d8642 3 a8644 3 "varname">BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of d8786 2 a8787 1 "updating-buildlink-depends">11.2.2. Updating d8789 2 a8790 2 "varname">BUILDLINK_DEPENDS.pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8850 1 a8850 1
    d8855 1 d8910 1 a8910 1
    d8914 2 a8915 1

    d9047 1 d9091 1 a9091 1
    d9095 1 a9095 1

    d9236 3 a9238 3 "files-and-dirs-outside-prefix">12.1. Files and directories outside the installation prefix

    d9271 1 a9271 1
    d9275 2 a9276 2

    12.1.1. Directory d9321 1 a9321 1
    d9325 2 a9326 2

    12.1.2. File d9388 1 a9388 1
    d9393 2 a9394 2 "conf-files">12.2. Configuration files

    d9413 1 a9413 1
    d9417 2 a9418 2

    12.2.1. How d9538 1 a9538 1 "12.1.1. Directory manipulation">Section 12.1.1, d9543 1 a9543 1
    d9547 3 a9549 3

    12.2.2. Telling the software where configuration files are

    d9572 1 a9572 1
    d9576 2 a9577 2

    12.2.3. Patching d9614 1 a9614 1 "12.1.2. File manipulation">Section 12.1.2, d9632 1 a9632 1
    d9636 2 a9637 2

    12.2.4. Disabling d9650 1 a9650 1
    d9655 2 a9656 2 "rcd-scripts">12.3. System startup scripts

    d9667 2 a9668 2 Section 12.1, “Files and directories outside the installation prefix” apply, and the same d9737 1 a9737 1
    d9741 2 a9742 2

    12.3.1. Disabling d9759 1 a9759 1
    d9764 2 a9765 2 "users-and-groups">12.4. System users and groups

    d9809 1 a9809 1
    d9814 1 a9814 1 "shells">12.5. System shells

    d9842 1 a9842 1
    d9846 3 a9848 3

    12.5.1. Disabling handling of configuration files

    d9862 1 a9862 1

    d10792 1 a10792 1
    d10797 1 d10807 1 a10807 1
    d10812 1 d10867 1 a10867 1
    d10872 3 a10874 2 "build.build">14.12. The build phase

    d10914 1 a10914 1
    d10919 3 a10921 2 "build.test">14.13. The test phase

    d10929 1 a10929 1
    d10934 1 d10954 1 a10954 1
    d10959 1 d10969 1 a10969 1
    d10974 1 d11510 1 a11510 1
    d11514 1 a11514 1

    d11717 1 d11724 1 a11724 1
    d11729 1 d11793 1 a11793 1
    d11798 1 d11814 1 a11814 1
    d11818 2 a11819 1

    d11898 1 a11898 1

    for more d12149 1 a12149 1
    d12153 1 a12153 1

    d12205 2 a12206 1

    d12239 2 a12240 1

    d12265 1 a12265 1

    d12304 1 a12304 1

    d12331 2 a12332 2

    15.1.10. How to d12368 1 a12368 1
    d12373 1 d12386 1 a12386 1
    d12390 1 a12390 1

    d12416 1 d12423 1 a12423 1
    d12427 1 a12427 1

    d12502 1 d12540 1 a12540 1
    d12545 1 d12552 1 a12552 1
    d12556 1 a12556 1

    d12785 1 a12785 1

    d12868 1 a12868 1

    d12926 1 d12933 1 a12933 1
    d12937 1 a12937 1

    d12973 1 d13005 1 a13005 1
    d13009 2 a13010 2

    15.4.1.2. CPP d13022 1 a13022 1
    d13027 1 d13039 1 a13039 1
    d13043 1 a13043 1

    d13065 1 d13072 1 a13072 1
    d13076 1 a13076 1

    d13127 1 a13127 1

    d13227 1 d13262 1 a13262 1
    d13266 1 a13266 1

    d13285 1 a13285 1

    d13314 1 a13314 1

    d13363 1 a13363 1

    d13467 1 a13467 1

    d13535 1 a13535 1

    d13625 1 d13671 1 a13671 1
    d13675 1 a13675 1

    d13716 1 a13716 1

    d13790 1 a13790 1

    d13854 1 a13854 1

    d13921 1 a13921 1

    d13946 1 a13946 1

    d13970 1 a13970 1

    d14036 1 d14056 1 a14056 1
    d14060 1 a14060 1

    d14276 1 a14276 1

    d14313 1 d14378 1 a14378 1
    d14383 1 d14432 1 a14432 1
    d14437 1 d14482 1 a14482 1
    d14487 1 d14534 1 a14534 1
    d14539 1 d14628 1 a14628 1
    d14632 1 a14632 1

    d14682 1 d14688 1 a14688 1
    d14692 1 a14692 1

    d14720 1 a14720 1

    d14737 1 a14737 1

    d14756 1 d14787 1 a14787 1
    d14792 1 d14820 2 a14821 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d14946 1 a14946 1
    d14950 1 a14950 1

    d14973 1 d15072 1 a15072 1
    d15077 1 d15096 1 a15096 1
    d15100 1 a15100 1

    Section 6.3, “Doing a bulk build of all d15199 1 a15199 1
    d15203 1 a15203 1

    d15230 1 a15230 1 "targets">D.1. Targets

    d15282 1 a15282 1
    d15287 1 @ 1.57 log @regen. @ text @d3698 31 d5756 7 @ 1.56 log @regen. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d909 5 a913 1 "#gconf2-data-files">15.5.8. Packages d917 1 a917 1 "#scrollkeeper-data-files">15.5.9. Packages d922 1 a922 1 "#x11-fonts">15.5.10. Packages installing X11 d926 1 a926 1 "#gtk2-modules">15.5.11. Packages installing d930 1 a930 1 "#sgml-xml-data">15.5.12. Packages installing d934 1 a934 1 "#mime-database">15.5.13. Packages installing d938 1 a938 1 "#intltool">15.5.14. Packages using d942 1 a942 1 "#startup-scripts">15.5.15. Packages installing d944 4 d1053 1 a1053 1
    d1057 1 a1057 1

    a1086 1 "introduction-section" id= d1219 1 a1219 1

    d1265 1 a1265 1
    a1269 1 "terminology" id= d1364 1 a1364 1
    a1368 1 "typography" id= d1384 1 a1384 1
    d1388 1 a1388 1

    d1672 1 a1672 1

    d1703 1 a1703 2 "as-tar-file" id="as-tar-file">2.1. As tar file

    d1716 1 a1716 1
    d1721 1 a1721 1 "via-sup" id="via-sup">2.2. Via SUP

    d1743 1 a1743 1
    d1748 1 a1748 1 "via-cvs" id="via-cvs">2.3. Via CVS

    d1791 1 a1791 1
    d1795 1 a1795 1

    a1845 1 "bootstrapping-pkgsrc" id= d1912 1 a1912 1 "Chapter 2. Where to get pkgsrc">Chapter 2, d1947 1 a1947 1
    a1951 1 "platform-specific-notes" id= d1961 1 a1961 1
    d1965 1 a1965 1

    d2010 3 a2012 3

    3.2.1.1. Using a disk image

    d2032 1 a2032 1
    d2036 2 a2037 2

    3.2.1.2. Using a d2099 1 a2099 1
    d2103 1 a2103 1

    d2165 1 a2165 1

    a2190 1 "platform.interix-sfu-install" id= d2253 1 a2253 1
    a2257 1 "platform.interix-sfu-postinstall" id= d2307 1 a2307 1
    a2311 1 "platform.interix-notes" id= d2350 1 a2350 1
    a2354 1 "platform.interix-limits" id= d2370 1 a2370 1 "strong">X-Windows:

    d2373 1 a2373 1 client libraries, and can run X-Windows based d2380 6 a2385 2 target="_top">Hummingbird Exceed
    , and the free X-Windows server included with X-Windows d2467 1 a2467 1
    a2471 1 "platform.interix-knownissues" id= d2499 1 a2499 1
    d2503 1 a2503 1

    d2591 1 a2591 1

    d2672 1 a2672 1

    d2745 1 a2745 1

    d2790 3 a2792 3

    3.2.7.1. If you are using gcc

    d2817 1 a2817 1
    a2821 1 "solaris-sun-workshop-note" id= d2884 1 a2884 1
    d2888 1 a2888 1

    a2946 1 "getting-started" id= d2957 1 a2957 1
    a2961 1 "where-to-get-binary-packages" id= d2998 1 a2998 1
    a3002 1 "how-to-use-binary-packages" id= d3072 1 a3072 1
    d3076 1 a3076 1

    a3099 1 "building-packages-from-source" id= d3112 1 a3112 1
    d3116 1 a3116 1

    d3136 2 a3137 2

    4.2.2. Fetching d3175 1 a3175 1
    a3179 1 "how-to-build-and-install" id= d3227 2 a3228 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3366 1 a3366 1
    a3370 1 "selecting-the-compiler" id= d3456 1 a3456 1
    d3460 1 a3460 1

    a3493 1 "general-configuration" id= d3575 1 a3575 1
    a3579 1 "variables-affecting-build" id= d3651 1 a3651 1
    a3655 1 "developer-advanced-settings" id= d3702 1 a3702 1
    a3706 1 "selecting-build-options" id= d3803 1 a3803 1
    d3807 1 a3807 1

    a3882 1 "building-a-single-binary-package" id= d3920 1 a3920 1 "B.2. Packaging figlet">Section B.2, d3929 3 a3931 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d3934 1 a3934 1
    a3938 1 "settings-for-creationg-of-binary-packages" id= d3950 1 a3950 1
    d3955 2 a3956 2 "bulkbuild" id="bulkbuild">6.3. Doing a bulk build of all packages

    d3975 1 a3975 1
    d3979 1 a3979 2

    d3989 1 a3989 1

    d4022 1 a4022 1

    d4053 1 a4053 1

    a4093 1 "other-environmental-considerations" id= d4135 1 a4135 1
    d4139 1 a4139 1

    d4188 1 a4188 1

    a4252 1 "disk-space-requirements" id= d4291 1 a4291 1
    d4295 3 a4297 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4508 1 a4508 1
    a4512 1 "building-a-partial-set" id= d4562 1 a4562 1
    d4566 1 a4566 1

    a4716 1 "creating-cdroms" id= d4737 1 a4737 1
    d4741 1 a4741 1

    d4811 1 a4811 1

    a4894 1 "mailing-list-pointers" id= d4949 1 a4949 1

    d5659 1 a5659 1
    a5663 1 "audit-packages" id= d5729 1 a5729 1
    d5733 1 a5733 1

    BUILDLINK_DEPENDS. pkg in 15.5.8. Packages installing d6254 1 a6254 1 "#scrollkeeper-data-files">15.5.9. Packages d6259 1 a6259 1 "#x11-fonts">15.5.10. Packages installing X11 d6263 1 a6263 1 "#gtk2-modules">15.5.11. Packages installing GTK2 d6267 1 a6267 1 "#sgml-xml-data">15.5.12. Packages installing d6271 1 a6271 1 "#mime-database">15.5.13. Packages installing d6275 1 a6275 1 "#intltool">15.5.14. Packages using d6279 1 a6279 1 "#startup-scripts">15.5.15. Packages installing d6281 4 d6327 1 a6327 1
    d6331 1 a6331 1

    a6381 1 "components.Makefile" id= d6697 1 a6697 1
    a6701 1 "components.distinfo" id= d6750 1 a6750 1
    a6754 1 "components.patches" id= d6858 1 a6858 1
    a6862 1 "other-mandatory-files" id= d6902 1 a6902 1
    a6906 1 "components.optional" id= d6990 1 a6990 1
    d6995 1 a6995 1 "work-dir" id="work-dir">8.6.  a7022 1 "files-dir" id= d7043 1 a7043 1
    d7047 1 a7047 1

    a7136 1 "makefile.variables" id= d7240 1 a7240 1
    a7244 1 "makefile.variables.names" id= d7280 1 a7280 1
    a7284 1 "makefile.code" id= d7295 1 a7295 1
    d7299 1 a7299 1

    a7329 1 "converting-internal-to-external" id= d7350 1 a7350 1
    a7354 1 "passing-variable-to-shell" id= d7412 1 a7412 1
    d7416 1 a7416 1

    a7541 1 "bsd-make-bug-workaround" id= d7568 1 a7568 1
    d7572 1 a7572 1

    d7638 1 a7638 1 "rcs-id" id="rcs-id">10.1. RCS ID

    d7651 1 a7651 1
    a7655 1 "automatic-plist-generation" id= d7673 1 a7673 1
    a7677 1 "print-PLIST" id= d7721 1 a7721 1
    a7725 1 "plist.misc" id= d7850 1 a7850 1
    a7854 1 "manpage-compression" id= d7879 1 a7879 1
    a7883 1 "using-PLIST_SRC" id= d7903 1 a7903 1
    a7907 1 "platform-specific-plist" id= d7954 1 a7954 1
    a7958 1 "faq.common-dirs" id= d8046 1 a8046 1
    d8050 1 a8050 1

    a8153 1 "converting-to-buildlink3" id= d8322 1 a8322 1
    a8326 1 "creating-buildlink3.mk" id= d8370 1 a8370 1
    d8374 2 a8375 2

    11.2.1. Anatomy of a d8492 3 a8494 3 "varname">BUILDLINK_LIBDIRS. pkg (not shown above) are lists of subdirectories of d8636 1 a8636 2 "updating-buildlink-depends" id= "updating-buildlink-depends">11.2.2. Updating d8638 2 a8639 2 "varname">BUILDLINK_DEPENDS. pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8700 1 a8700 1
    a8704 1 "writing-builtin.mk" id= d8759 1 a8759 1
    d8763 1 a8763 2

    a8894 1 "native-or-pkgsrc-preference" id= d8938 1 a8938 1
    d8942 1 a8942 1

    d9083 3 a9085 3 "files-and-dirs-outside-prefix" id= "files-and-dirs-outside-prefix">12.1. Files and directories outside the installation prefix

    d9118 1 a9118 1
    d9122 2 a9123 2

    12.1.1. Directory d9168 1 a9168 1
    d9172 2 a9173 2

    12.1.2. File d9235 1 a9235 1
    d9240 2 a9241 2 "conf-files" id="conf-files">12.2. Configuration files

    d9260 1 a9260 1
    d9264 2 a9265 2

    12.2.1. How d9385 1 a9385 1 "12.1.1. Directory manipulation">Section 12.1.1, d9390 1 a9390 1
    d9394 3 a9396 3

    12.2.2. Telling the software where configuration files are

    d9419 1 a9419 1
    d9423 2 a9424 2

    12.2.3. Patching d9461 1 a9461 1 "12.1.2. File manipulation">Section 12.1.2, d9479 1 a9479 1
    d9483 2 a9484 2

    12.2.4. Disabling d9497 1 a9497 1
    d9502 2 a9503 2 "rcd-scripts" id="rcd-scripts">12.3. System startup scripts

    d9514 2 a9515 2 Section 12.1, “Files and directories outside the installation prefix” apply, and the same d9584 1 a9584 1
    d9588 2 a9589 2

    12.3.1. Disabling d9606 1 a9606 1
    d9611 2 a9612 2 "users-and-groups" id="users-and-groups">12.4. System users and groups

    d9656 1 a9656 1
    d9661 1 a9661 1 "shells" id="shells">12.5. System shells

    d9689 1 a9689 1

    d10625 1 a10625 1
    a10629 1 "build.wrapper" id= d10639 1 a10639 1
    a10643 1 "build.configure" id= d10698 1 a10698 1
    d10703 2 a10704 3 "build.build" id="build.build">14.12. The build phase

    d10744 1 a10744 1
    d10749 2 a10750 3 "build.test" id="build.test">14.13. The test phase

    d10758 1 a10758 1
    a10762 1 "build.install" id= d10782 1 a10782 1
    a10786 1 "build.package" id= d10796 1 a10796 1
    a10800 1 "build.helpful-targets" id= d11336 1 a11336 1
    d11340 1 a11340 1

    15.5.8. Packages installing d11499 1 a11499 1 "#scrollkeeper-data-files">15.5.9. Packages d11503 1 a11503 1 "#x11-fonts">15.5.10. Packages installing X11 d11507 1 a11507 1 "#gtk2-modules">15.5.11. Packages installing GTK2 d11511 1 a11511 1 "#sgml-xml-data">15.5.12. Packages installing SGML d11515 1 a11515 1 "#mime-database">15.5.13. Packages installing d11519 1 a11519 1 "#intltool">15.5.14. Packages using d11523 1 a11523 1 "#startup-scripts">15.5.15. Packages installing d11525 4 d11538 1 a11538 1
    a11542 1 "general-operation" id= d11549 1 a11549 1
    a11553 1 "pulling-vars-from-etc-mk.conf" id= d11617 1 a11617 1
    a11621 1 "where-to-install-documentation" id= d11637 1 a11637 1
    d11641 1 a11641 2

    d11720 1 a11720 1

    for more d11971 1 a11971 1
    d11975 1 a11975 1

    d12027 1 a12027 2

    d12060 1 a12060 2

    d12085 1 a12085 1

    d12124 1 a12124 1

    d12151 2 a12152 2

    15.1.10. How to d12188 1 a12188 1
    a12192 1 "portability-of-packages" id= d12205 1 a12205 1
    d12209 1 a12209 1

    a12234 1 "downloading-issues" id= d12241 1 a12241 1
    d12245 1 a12245 1

    a12319 1 "modified-distfiles-same-name" id= d12357 1 a12357 1
    a12361 1 "configuration-gotchas" id= d12368 1 a12368 1
    d12372 1 a12372 1

    d12601 1 a12601 1

    d12684 1 a12684 1

    a12741 1 "fixes-build" id= d12748 1 a12748 1
    d12752 1 a12752 1

    a12787 1 "fixes-build-cpp-opsys" id= d12811 1 d12819 1 a12819 1
    d12823 2 a12824 2

    15.4.1.2. CPP d12836 1 a12836 1
    a12840 1 "fixes-build-cpp-compiler" id= d12852 1 a12852 1
    d12856 1 a12856 1

    a12877 1 "package-specific-actions" id= d12884 1 a12884 1
    d12888 1 a12888 1

    d12939 1 a12939 1

    a13038 1 "installing-score-files" id= d13073 1 a13073 1
    d13077 1 a13077 1

    d13096 1 a13096 1

    d13125 1 a13125 1

    d13174 1 a13174 1

    d13346 2 a13347 2

    15.5.8. Packages d13431 1 a13431 1
    d13436 1 a13436 2 "scrollkeeper-data-files" id= "scrollkeeper-data-files">15.5.9. Packages d13481 1 a13481 1
    d13485 2 a13486 2

    15.5.10. Packages installing d13522 1 a13522 1
    d13526 2 a13527 2

    15.5.11. Packages d13596 1 a13596 1
    d13600 2 a13601 2

    15.5.12. Packages d13660 1 a13660 1
    d13664 2 a13665 2

    15.5.13. Packages d13727 1 a13727 1
    d13731 2 a13732 2

    15.5.14. Packages using d13752 1 a13752 1
    d13756 2 a13757 2

    15.5.15. Packages d13775 64 d13841 1 a13841 1
    a13845 1 "feedback-to-author" id= d13865 1 a13865 1
    d13869 1 a13869 1

    d14085 1 a14085 1

    a14121 1 "submitting-your-package" id= d14186 1 a14186 1
    a14190 1 "general-notes-for-changes" id= d14239 1 a14239 1
    a14243 1 "committing-importing" id= d14288 1 a14288 1
    a14292 1 "updating-package" id= d14339 1 a14339 1
    a14343 1 "moving-package" id= d14432 1 a14432 1
    d14436 1 a14436 1

    a14485 1 "example-files" id= d14491 1 a14491 1
    d14495 1 a14495 1

    d14523 1 a14523 1

    d14540 1 a14540 1

    a14558 1 "checking-package-with-pkglint" id= d14589 1 a14589 1
    a14593 1 "steps-for-b-i-p" id= d14621 2 a14622 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d14747 1 a14747 1
    d14751 1 a14751 1

    a14773 1 "logs.building" id= d14872 1 a14872 1
    a14876 1 "logs.package" id= d14895 1 a14895 1
    d14899 1 a14899 1

    Section 6.3, “Doing a bulk build of all d14998 1 a14998 1
    d15002 1 a15002 1

    d15029 1 a15029 1 "targets" id="targets">D.1. Targets

    d15081 1 a15081 1
    a15085 1 "procedure" id= @ 1.55 log @regen. @ text @d683 4 a686 1 "#build.prefix">14.1. Program d690 56 a745 1 "#main-targets">14.2. Main targets d748 6 a753 1 "#build.helpful-targets">14.3. Other helpful d3958 1 a3958 1 "14.3. Other helpful targets">Section 14.3, d6056 4 a6059 1
    14.1. d6062 3 a6064 2
    14.2. Main targets
    d6067 55 a6121 1 "#build.helpful-targets">14.3. Other helpful d7703 1 a7703 1 "14.3. Other helpful targets">Section 14.3, d10101 4 a10104 1
    14.1. d10107 30 a10136 2
    14.2. Main targets
    d10139 22 a10160 1 "#build.helpful-targets">14.3. Other helpful d10165 40 a10204 12

    The basic steps for building a program are always the same. First the program's source (distfile) must be brought to the local system and then extracted. After any patches to compile properly on NetBSD are applied, the software can be configured, then built (usually by compiling), and finally the generated binaries, etc. can be put into place on the system. These are exactly the steps performed by the NetBSD package system, which is implemented as a series of targets in a central Makefile, pkgsrc/mk/bsd.pkg.mk.

    d10212 1 a10212 1 "build.prefix">14.1. Program location

    d10397 3 a10399 2 "main-targets" id= "main-targets">14.2. Main targets

    d10404 14 a10417 3

    The main targets used during the build process defined in bsd.pkg.mk are:

    d10421 11 a10431 1
    fetch
    d10434 75 a10508 10

    This will check if the file(s) given in the variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

    d10512 53
    a10564 38
                    

    where ${site} varies through several possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES_file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    checksum

    After the distfile(s) are fetched, their checksum is generated and compared with the checksums stored in the distinfo file. If the checksums don't match, the build is aborted. This is to ensure the same distfile is used for building, and that the distfile wasn't changed, e.g. by some malign force, deliberately changed distfiles on the master distribution site or network lossage.

    extract

    When the distfiles are present on the local system, they need to be extracted, as they are usually in the form of some compressed archive format, most commonly .tar.gz.

    d10566 3 a10568 4

    If only some of the distfiles need to be uncompressed, the files to be uncompressed should be put into EXTRACT_ONLY.

    d10570 44 a10613 47

    If the distfiles are not in .tar.gz format, they can be extracted by setting either EXTRACT_SUFX, or EXTRACT_CMD, EXTRACT_BEFORE_ARGS and EXTRACT_AFTER_ARGS. In the former case, pkgsrc knows how to extract a number of suffixes (.tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and .gz; see the definition of the various DECOMPRESS_CMD variables in bsd.pkg.extract.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

    d10619 116
    a10734 1
                  
    d10736 12 a10747 1
    patch
    d10749 10 a10758 27

    After extraction, all the patches named by the PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See Section 8.3, “patches/*” for more details.

    d10760 10 a10769 98

    By default patch(1) is given special args to make it fail if the patches apply with some lines of fuzz. Please fix (regen) the patches so that they apply cleanly. The rationale behind this is that patches that don't apply cleanly may end up being applied in the wrong place, and cause severe harm there.

    configure

    Most pieces of software need information on the header files, system calls, and library routines which are available in NetBSD. This is the process known as configuration, and is usually automated. In most cases, a script is supplied with the source, and its invocation results in generation of header files, Makefiles, etc.

    If the program's distfile contains its own configure script, this can be invoked by setting HAS_CONFIGURE. If the configure script is a GNU autoconf script, GNU_CONFIGURE should be specified instead. In either case, any arguments to the configure script can be specified in the CONFIGURE_ARGS variable, and the configure script's name can be set in CONFIGURE_SCRIPT if it differs from the default “configure”. Here's an example from the sysutils/top package:

        HAS_CONFIGURE=          yes
        CONFIGURE_SCRIPT=       Configure
        CONFIGURE_ARGS+=        netbsd13
    

    If the program uses an Imakefile for configuration, the appropriate steps can be invoked by setting USE_IMAKE to “YES”. (If you only want the package installed in $X11PREFIX but xmkmf not being run, set USE_X11BASE instead!)

    build

    Once configuration has taken place, the software will be built by invoking $MAKE_PROGRAM on $MAKEFILE with $BUILD_TARGET as the target to build. The default MAKE_PROGRAM is “gmake” if USE_TOOLS contains “gmake”, “make” otherwise. MAKEFILE is set to “Makefile” by default, and BUILD_TARGET defaults to “all”. Any of these variables can be set in the package's Makefile to change the default build process.

    install

    Once the build stage has completed, the final step is to install the software in public directories, so users can access the programs and files. As in the build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “install” (plus “install.man”, if USE_IMAKE is set).

    d10772 2 a10773 6

    If no target is specified, the default is “build”. If a subsequent stage is requested, all prior stages are made: e.g. make build will also perform the equivalent of:

    d10775 5 a10779 6 make fetch make checksum make extract make patch make configure make build d10781 79 d10868 1 a10868 1 "build.helpful-targets">14.3. Other d12882 1 @ 1.54 log @regen @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1 September 2005), see www.w3.org" /> d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d695 2 a696 2
    15. Notes on fixes for packages
    d795 2 a796 2 "#building-considerations">15.4. Building considerations d982 1 a982 1
    d986 1 a986 1

    d1016 1 d1149 1 a1149 1

    d1195 1 a1195 1
    d1200 1 d1295 1 a1295 1
    d1300 1 d1316 1 a1316 1
    d1320 1 a1320 1

    d1604 1 a1604 1

    d1635 2 a1636 1 "as-tar-file">2.1. As tar file

    d1649 1 a1649 1
    d1654 1 a1654 1 "via-sup">2.2. Via SUP

    d1676 1 a1676 1
    d1681 1 a1681 1 "via-cvs">2.3. Via CVS d1724 1 a1724 1
    d1728 1 a1728 1

    d1779 1 d1846 1 a1846 1 "Chapter 2. Where to get pkgsrc">Chapter 2, d1881 1 a1881 1
    d1886 1 d1896 1 a1896 1
    d1900 1 a1900 1

    d1945 3 a1947 3

    3.2.1.1. Using a disk image

    d1967 1 a1967 1
    d1971 2 a1972 2

    3.2.1.2. Using a d2034 1 a2034 1
    d2038 1 a2038 1

    d2100 1 a2100 1

    d2126 1 d2189 1 a2189 1
    d2194 1 d2244 1 a2244 1
    d2249 1 d2288 1 a2288 1
    d2293 1 d2402 1 a2402 1
    d2407 1 d2435 1 a2435 1
    d2439 1 a2439 1

    d2527 1 a2527 1

    d2608 1 a2608 1

    d2681 1 a2681 1

    d2726 3 a2728 3

    3.2.7.1. If you are using gcc

    d2753 1 a2753 1
    d2758 1 d2821 1 a2821 1
    d2825 1 a2825 1

    d2884 1 d2895 1 a2895 1
    d2900 1 d2937 1 a2937 1
    d2942 1 d3012 1 a3012 1
    d3016 1 a3016 1

    d3040 1 d3053 1 a3053 1
    d3057 1 a3057 1

    d3077 2 a3078 2

    4.2.2. Fetching d3116 1 a3116 1
    d3121 1 d3169 2 a3170 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3308 1 a3308 1
    d3313 1 d3399 1 a3399 1
    d3403 1 a3403 1

    d3437 1 d3519 1 a3519 1
    d3524 1 d3596 1 a3596 1
    d3601 1 d3648 1 a3648 1
    d3653 1 d3750 1 a3750 1
    d3754 1 a3754 1

    d3830 1 d3868 1 a3868 1 "B.2. Packaging figlet">Section B.2, d3877 3 a3879 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d3882 1 a3882 1
    d3887 1 d3899 1 a3899 1
    d3904 2 a3905 2 "bulkbuild">6.3. Doing a bulk build of all packages

    d3924 1 a3924 1
    d3928 2 a3929 1

    d3939 1 a3939 1

    d3972 1 a3972 1

    d4003 1 a4003 1

    d4044 1 d4086 1 a4086 1
    d4090 1 a4090 1

    d4139 1 a4139 1

    d4204 1 d4243 1 a4243 1
    d4247 3 a4249 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4460 1 a4460 1
    d4465 1 d4515 1 a4515 1
    d4519 1 a4519 1

    d4670 1 d4691 1 a4691 1
    d4695 1 a4695 1

    d4765 1 a4765 1

    d4849 1 d4904 1 a4904 1

    d5625 1 a5625 1
    d5630 1 d5696 1 a5696 1
    d5700 1 a5700 1

    BUILDLINK_DEPENDS.pkg in 15. Notes on fixes for packages d6104 2 a6105 3
    15.4. Building considerations
    d6228 1 a6228 1
    d6232 1 a6232 1

    d6283 1 d6599 1 a6599 1
    d6604 1 d6653 1 a6653 1
    d6658 1 d6762 1 a6762 1
    d6767 1 d6807 1 a6807 1
    d6812 1 d6896 1 a6896 1
    d6901 1 a6901 1 "work-dir">8.6.  d6929 1 d6950 1 a6950 1
    d6954 1 a6954 1

    d7044 1 d7148 1 a7148 1
    d7153 1 d7189 1 a7189 1
    d7194 1 d7205 1 a7205 1
    d7209 1 a7209 1

    d7240 1 d7261 1 a7261 1
    d7266 1 d7324 1 a7324 1
    d7328 1 a7328 1

    d7454 1 d7481 1 a7481 1
    d7485 1 a7485 1

    d7551 1 a7551 1 "rcs-id">10.1. RCS ID

    d7564 1 a7564 1
    d7569 1 d7587 1 a7587 1
    d7592 1 d7636 1 a7636 1
    d7641 1 d7766 1 a7766 1
    d7771 1 d7796 1 a7796 1
    d7801 1 d7821 1 a7821 1
    d7826 1 d7873 1 a7873 1
    d7878 1 d7966 1 a7966 1
    d7970 1 a7970 1

    d8074 1 d8243 1 a8243 1
    d8248 1 d8292 1 a8292 1
    d8296 2 a8297 2

    11.2.1. Anatomy of a d8414 3 a8416 3 "varname">BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of d8558 2 a8559 1 "updating-buildlink-depends">11.2.2. Updating d8561 2 a8562 2 "varname">BUILDLINK_DEPENDS.pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8622 1 a8622 1
    d8627 1 d8682 1 a8682 1
    d8686 2 a8687 1

    d8819 1 d8863 1 a8863 1
    d8867 1 a8867 1

    d9008 3 a9010 3 "files-and-dirs-outside-prefix">12.1. Files and directories outside the installation prefix

    d9043 1 a9043 1
    d9047 2 a9048 2

    12.1.1. Directory d9093 1 a9093 1
    d9097 2 a9098 2

    12.1.2. File d9160 1 a9160 1
    d9165 2 a9166 2 "conf-files">12.2. Configuration files

    d9185 1 a9185 1
    d9189 2 a9190 2

    12.2.1. How d9310 1 a9310 1 "12.1.1. Directory manipulation">Section 12.1.1, d9315 1 a9315 1
    d9319 3 a9321 3

    12.2.2. Telling the software where configuration files are

    d9344 1 a9344 1
    d9348 2 a9349 2

    12.2.3. Patching d9386 1 a9386 1 "12.1.2. File manipulation">Section 12.1.2, d9404 1 a9404 1
    d9408 2 a9409 2

    12.2.4. Disabling d9422 1 a9422 1
    d9427 2 a9428 2 "rcd-scripts">12.3. System startup scripts

    d9439 2 a9440 2 Section 12.1, “Files and directories outside the installation prefix” apply, and the same d9509 1 a9509 1
    d9513 2 a9514 2

    12.3.1. Disabling d9531 1 a9531 1
    d9536 2 a9537 2 "users-and-groups">12.4. System users and groups

    d9581 1 a9581 1
    d9586 1 a9586 1 "shells">12.5. System shells

    d9614 1 a9614 1
    d9618 3 a9620 3

    12.5.1. Disabling handling of configuration files

    d9634 1 a9634 1
    d9638 1 a9638 1

    d9679 1 d9694 1 a9694 1
    d9699 1 d9839 3 a9841 2 "replaceable">USE_VARIABLE:option” pairs that map legacy old-option:new-option” pairs that map options that have been renamed to their new counterparts. Pairs should be added with d9923 1 a9923 1
    d9928 1 d9965 1 a9965 1
    d9969 1 a9969 1

    d10010 1 d10191 1 a10191 1
    d10196 1 d10468 1 a10468 1
    d10473 1 d11009 1 a11009 1
    d11013 3 a11015 3

    Chapter 15. Notes on fixes for packages

    d11117 2 a11118 3
    15.4. Building considerations
    d11204 1 a11204 1
    d11209 1 d11216 1 a11216 1
    d11221 1 d11285 1 a11285 1
    d11290 1 d11306 1 a11306 1
    d11310 2 a11311 1

    d11390 1 a11390 1

    for more d11641 1 a11641 1
    d11645 1 a11645 1

    d11697 2 a11698 1

    d11731 2 a11732 1

    d11757 1 a11757 1

    d11796 1 a11796 1

    d11823 2 a11824 2

    15.1.10. How to d11860 1 a11860 1
    d11865 1 d11878 1 a11878 1
    d11882 1 a11882 1

    d11908 1 d11915 1 a11915 1
    d11919 1 a11919 1

    d11994 1 d12032 1 a12032 1
    d12037 1 d12044 1 a12044 1
    d12048 1 a12048 1

    d12277 1 a12277 1

    d12360 1 a12360 1

    d12418 3 a12420 2 "building-considerations">15.4. Building considerations

    d12425 1 a12425 1
    d12429 1 a12429 1

    To port an application to NetBSD, it's usually necessary for the compiler to be able to judge the system on which it's compiling, and we use definitions so that the C pre-processor can do this.

    To test whether you are working on a 4.4 BSD-derived system, you should use the BSD definition, which is defined in <sys/param.h> on said systems.

    d12477 5
    d12484 8
    a12491 6
                

    and then you can surround the BSD-specific parts of your package's C/C++ code using this conditional:

        #if (defined(BSD) && BSD >= 199306)
        ...
        #endif
    d12493 1
    d12495 32
    a12526 4
                

    Please use the “__NetBSD__” definition sparingly - it should only apply to features of NetBSD that are not present in other 4.4-lite-derived BSDs.

    d12529 1 a12529 1
    d12533 1 a12533 1

    d12555 1 d12562 1 a12562 1
    d12566 1 a12566 1

    d12617 1 a12617 1

    d12717 1 d12752 1 a12752 1
    d12756 1 a12756 1

    d12775 1 a12775 1

    d12804 1 a12804 1

    d12853 1 a12853 1

    d12957 1 a12957 1

    d13047 1 d13093 1 a13093 1
    d13097 1 a13097 1

    d13138 1 a13138 1

    d13212 1 a13212 1

    d13276 1 a13276 1

    d13343 1 a13343 1

    d13368 1 a13368 1

    d13394 1 d13414 1 a13414 1
    d13418 1 a13418 1

    d13634 1 a13634 1

    d13671 1 d13736 1 a13736 1
    d13741 1 d13790 1 a13790 1
    d13795 1 d13840 1 a13840 1
    d13845 1 d13892 1 a13892 1
    d13897 1 d13986 1 a13986 1
    d13990 1 a13990 1

    d14040 1 d14046 1 a14046 1
    d14050 1 a14050 1

    d14078 1 a14078 1

    d14095 1 a14095 1

    d14114 1 d14145 1 a14145 1
    d14150 1 d14178 2 a14179 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d14304 1 a14304 1
    d14308 1 a14308 1

    d14331 1 d14430 1 a14430 1
    d14435 1 d14454 1 a14454 1
    d14458 1 a14458 1

    Section 6.3, “Doing a bulk build of all d14557 1 a14557 1
    d14561 1 a14561 1

    d14588 1 a14588 1 "targets">D.1. Targets

    d14640 1 a14640 1
    d14645 1 @ 1.53 log @regenagain @ text @d2298 2 a2299 2 X-Windows: d2324 2 a2325 2 X-Windows acceleration: d2339 2 a2340 2 Audio: d2365 2 a2366 2 CD/DVDs, USB, and SCSI: d2377 2 a2378 2 Tape drives: @ 1.52 log @regen @ text @d2343 2 a2344 2 output. To provide audio support, pkgsrc uses the esound server component. To output audio, the d18 1 a18 1
    d22 2 a23 2

    The pkgsrc guide

    d982 1 a982 1
    d986 1 a986 1

    a1015 1 "introduction-section" id= d1148 1 a1148 1

    d1194 1 a1194 1
    a1198 1 "terminology" id= d1293 1 a1293 1
    a1297 1 "typography" id= d1313 1 a1313 1
    d1317 1 a1317 1

    d1601 1 a1601 1

    d1632 1 a1632 2 "as-tar-file" id="as-tar-file">2.1. As tar file

    d1645 1 a1645 1
    d1650 1 a1650 1 "via-sup" id="via-sup">2.2. Via SUP

    d1672 1 a1672 1
    d1677 1 a1677 1 "via-cvs" id="via-cvs">2.3. Via CVS

    d1720 1 a1720 1
    d1724 1 a1724 1

    a1774 1 "bootstrapping-pkgsrc" id= d1841 1 a1841 1 "Chapter 2. Where to get pkgsrc">Chapter 2, d1876 1 a1876 1
    a1880 1 "platform-specific-notes" id= d1890 1 a1890 1
    d1894 1 a1894 1

    d1939 3 a1941 3

    3.2.1.1. Using a disk image

    d1961 1 a1961 1
    d1965 2 a1966 2

    3.2.1.2. Using a d2028 1 a2028 1
    d2032 1 a2032 1

    d2094 1 a2094 1

    a2119 1 "platform.interix-sfu-install" id= d2162 18 a2179 7

    Finally, during installation you may be asked whether to enable setuid behavior for Interix programs, and whether to make pathnames default to case-sensitive. Setuid should be enabled, and case-sensitivity MUST be enabled. (Without case-sensitivity, a large number of packages including perl will not build.)

    d2182 1 a2182 1
    a2186 1 "platform.interix-sfu-postinstall" id= d2236 1 a2236 1
    a2240 1 "platform.interix-notes" id= d2247 1 a2247 1

    The package imanager (either the pkgsrc "su" user, d2278 143 d2423 1 a2423 1

    d2427 1 a2427 1

    d2515 1 a2515 1

    d2596 1 a2596 1

    d2669 1 a2669 1

    d2714 3 a2716 3

    3.2.7.1. If you are using gcc

    d2741 1 a2741 1
    a2745 1 "solaris-sun-workshop-note" id= d2808 1 a2808 1
    d2812 1 a2812 1

    a2870 1 "getting-started" id= d2881 1 a2881 1
    a2885 1 "where-to-get-binary-packages" id= d2922 1 a2922 1
    a2926 1 "how-to-use-binary-packages" id= d2996 1 a2996 1
    d3000 1 a3000 1

    a3023 1 "building-packages-from-source" id= d3036 1 a3036 1
    d3040 1 a3040 1

    d3060 2 a3061 2

    4.2.2. Fetching d3099 1 a3099 1
    a3103 1 "how-to-build-and-install" id= d3151 2 a3152 2 "Appendix B. Build logs">Appendix B, Build logs.

    d3290 1 a3290 1
    a3294 1 "selecting-the-compiler" id= d3380 1 a3380 1
    d3384 1 a3384 1

    a3417 1 "general-configuration" id= d3499 1 a3499 1
    a3503 1 "variables-affecting-build" id= d3575 1 a3575 1
    a3579 1 "developer-advanced-settings" id= d3626 1 a3626 1
    a3630 1 "selecting-build-options" id= d3727 1 a3727 1
    d3731 1 a3731 1

    a3806 1 "building-a-single-binary-package" id= d3844 1 a3844 1 "B.2. Packaging figlet">Section B.2, d3853 3 a3855 3 "Chapter 17. Submitting and Committing">Chapter 17, Submitting and Committing for information on how to submit such a binary package.

    d3858 1 a3858 1
    a3862 1 "settings-for-creationg-of-binary-packages" id= d3874 1 a3874 1
    d3879 2 a3880 2 "bulkbuild" id="bulkbuild">6.3. Doing a bulk build of all packages

    d3899 1 a3899 1
    d3903 1 a3903 2

    d3913 1 a3913 1

    d3946 1 a3946 1

    d3977 1 a3977 1

    a4017 1 "other-environmental-considerations" id= d4059 1 a4059 1
    d4063 1 a4063 1

    d4112 1 a4112 1

    a4176 1 "disk-space-requirements" id= d4215 1 a4215 1
    d4219 3 a4221 3

    6.3.6. Setting up a sandbox for chrooted builds

    d4432 1 a4432 1
    a4436 1 "building-a-partial-set" id= d4486 1 a4486 1
    d4490 1 a4490 1

    a4640 1 "creating-cdroms" id= d4661 1 a4661 1
    d4665 1 a4665 1

    d4735 1 a4735 1

    a4818 1 "mailing-list-pointers" id= d4873 1 a4873 1

    d5583 1 a5583 1
    a5587 1 "audit-packages" id= d5653 1 a5653 1
    d5657 1 a5657 1

    BUILDLINK_DEPENDS. pkg in d6190 1 a6190 1

    a6240 1 "components.Makefile" id= d6556 1 a6556 1
    a6560 1 "components.distinfo" id= d6609 1 a6609 1
    a6613 1 "components.patches" id= d6717 1 a6717 1
    a6721 1 "other-mandatory-files" id= d6761 1 a6761 1
    a6765 1 "components.optional" id= d6849 1 a6849 1
    d6854 1 a6854 1 "work-dir" id="work-dir">8.6.  a6881 1 "files-dir" id= d6902 1 a6902 1
    d6906 1 a6906 1

    a6995 1 "makefile.variables" id= d7099 1 a7099 1
    a7103 1 "makefile.variables.names" id= d7139 1 a7139 1
    a7143 1 "makefile.code" id= d7154 1 a7154 1
    d7158 1 a7158 1

    a7188 1 "converting-internal-to-external" id= d7209 1 a7209 1
    a7213 1 "passing-variable-to-shell" id= d7271 1 a7271 1
    d7275 1 a7275 1

    a7400 1 "bsd-make-bug-workaround" id= d7427 1 a7427 1
    d7431 1 a7431 1

    d7497 1 a7497 1 "rcs-id" id="rcs-id">10.1. RCS ID

    d7510 1 a7510 1
    a7514 1 "automatic-plist-generation" id= d7532 1 a7532 1
    a7536 1 "print-PLIST" id= d7580 1 a7580 1
    a7584 1 "plist.misc" id= d7709 1 a7709 1
    a7713 1 "manpage-compression" id= d7738 1 a7738 1
    a7742 1 "using-PLIST_SRC" id= d7762 1 a7762 1
    a7766 1 "platform-specific-plist" id= d7813 1 a7813 1
    a7817 1 "faq.common-dirs" id= d7905 1 a7905 1
    d7909 1 a7909 1

    a8012 1 "converting-to-buildlink3" id= d8181 1 a8181 1
    a8185 1 "creating-buildlink3.mk" id= d8229 1 a8229 1
    d8233 2 a8234 2

    11.2.1. Anatomy of a d8351 3 a8353 3 "varname">BUILDLINK_LIBDIRS. pkg (not shown above) are lists of subdirectories of d8495 1 a8495 2 "updating-buildlink-depends" id= "updating-buildlink-depends">11.2.2. Updating d8497 2 a8498 2 "varname">BUILDLINK_DEPENDS. pkg in Section 15.1.4, “Handling dependencies” for more information about dependencies on other packages, d8559 1 a8559 1
    a8563 1 "writing-builtin.mk" id= d8618 1 a8618 1
    d8622 1 a8622 2

    a8753 1 "native-or-pkgsrc-preference" id= d8797 1 a8797 1
    d8801 1 a8801 1

    d8942 3 a8944 3 "files-and-dirs-outside-prefix" id= "files-and-dirs-outside-prefix">12.1. Files and directories outside the installation prefix

    d8977 1 a8977 1
    d8981 2 a8982 2

    12.1.1. Directory d9027 1 a9027 1
    d9031 2 a9032 2

    12.1.2. File d9094 1 a9094 1
    d9099 2 a9100 2 "conf-files" id="conf-files">12.2. Configuration files

    d9119 1 a9119 1
    d9123 2 a9124 2

    12.2.1. How d9244 1 a9244 1 "12.1.1. Directory manipulation">Section 12.1.1, d9249 1 a9249 1
    d9253 3 a9255 3

    12.2.2. Telling the software where configuration files are

    d9278 1 a9278 1
    d9282 2 a9283 2

    12.2.3. Patching d9320 1 a9320 1 "12.1.2. File manipulation">Section 12.1.2, d9338 1 a9338 1
    d9342 2 a9343 2

    12.2.4. Disabling d9356 1 a9356 1
    d9361 2 a9362 2 "rcd-scripts" id="rcd-scripts">12.3. System startup scripts

    d9373 2 a9374 2 Section 12.1, “Files and directories outside the installation prefix” apply, and the same d9443 1 a9443 1
    d9447 2 a9448 2

    12.3.1. Disabling d9465 1 a9465 1
    d9470 2 a9471 2 "users-and-groups" id="users-and-groups">12.4. System users and groups

    d9515 1 a9515 1
    d9520 1 a9520 1 "shells" id="shells">12.5. System shells

    d9548 1 a9548 1
    d9552 3 a9554 3

    12.5.1. Disabling handling of configuration files

    d9568 1 a9568 1
    d9572 1 a9572 1

    a9612 1 "global-default-options" id= d9627 1 a9627 1
    a9631 1 "converting-to-options" id= d9771 2 a9772 3 "replaceable">USE_VARIABLE: option” pairs that map legacy old-option: new-option” pairs that map options that have been renamed to their new counterparts. Pairs should be added with d9853 1 a9853 1
    a9857 1 "option-names" id= d9894 1 a9894 1
    d9898 1 a9898 1

    a9938 1 "build.prefix" id= d10119 1 a10119 1
    a10123 1 "main-targets" id= d10395 1 a10395 1
    a10399 1 "build.helpful-targets" id= d10935 1 a10935 1
    d10939 1 a10939 1

    a11135 1 "general-operation" id= d11142 1 a11142 1
    a11146 1 "pulling-vars-from-etc-mk.conf" id= d11210 1 a11210 1
    a11214 1 "where-to-install-documentation" id= d11230 1 a11230 1
    d11234 1 a11234 2

    d11313 1 a11313 1

    for more d11564 1 a11564 1
    d11568 1 a11568 1

    d11620 1 a11620 2

    d11653 1 a11653 2

    d11678 1 a11678 1

    d11717 1 a11717 1

    d11744 2 a11745 2

    15.1.10. How to d11781 1 a11781 1
    a11785 1 "portability-of-packages" id= d11798 1 a11798 1
    d11802 1 a11802 1

    a11827 1 "downloading-issues" id= d11834 1 a11834 1
    d11838 1 a11838 1

    a11912 1 "modified-distfiles-same-name" id= d11950 1 a11950 1
    a11954 1 "configuration-gotchas" id= d11961 1 a11961 1
    d11965 1 a11965 1

    d12194 1 a12194 1

    d12277 1 a12277 1

    a12334 1 "building-considerations" id= d12341 1 a12341 1
    d12345 1 a12345 1

    d12384 1 a12384 1

    a12405 1 "package-specific-actions" id= d12412 1 a12412 1
    d12416 1 a12416 1

    d12467 1 a12467 1

    a12566 1 "installing-score-files" id= d12601 1 a12601 1
    d12605 1 a12605 1

    d12624 1 a12624 1

    d12653 1 a12653 1

    d12702 1 a12702 1

    d12806 1 a12806 1

    a12895 1 "scrollkeeper-data-files" id= d12941 1 a12941 1
    d12945 1 a12945 1

    d12986 1 a12986 1

    d13060 1 a13060 1

    d13124 1 a13124 1

    d13191 1 a13191 1

    d13216 1 a13216 1

    a13241 1 "feedback-to-author" id= d13261 1 a13261 1
    d13265 1 a13265 1

    d13481 1 a13481 1

    a13517 1 "submitting-your-package" id= d13582 1 a13582 1
    a13586 1 "general-notes-for-changes" id= d13635 1 a13635 1
    a13639 1 "committing-importing" id= d13684 1 a13684 1
    a13688 1 "updating-package" id= d13735 1 a13735 1
    a13739 1 "moving-package" id= d13828 1 a13828 1
    d13832 1 a13832 1

    a13881 1 "example-files" id= d13887 1 a13887 1
    d13891 1 a13891 1

    d13919 1 a13919 1

    d13936 1 a13936 1

    a13954 1 "checking-package-with-pkglint" id= d13985 1 a13985 1
    a13989 1 "steps-for-b-i-p" id= d14017 2 a14018 2 Chapter 8, Package components - files, directories and contents) then continue with fetching the d14143 1 a14143 1
    d14147 1 a14147 1

    a14169 1 "logs.building" id= d14268 1 a14268 1
    a14272 1 "logs.package" id= d14291 1 a14291 1
    d14295 1 a14295 1

    Section 6.3, “Doing a bulk build of all d14394 1 a14394 1
    d14398 1 a14398 1

    d14425 1 a14425 1 "targets" id="targets">D.1. Targets

    d14477 1 a14477 1
    a14481 1 "procedure" id= @ 1.50 log @re-generated. @ text @d91 2 a92 2
    1. Introduction
    d803 4 d987 2 a988 1 "introduction">Chapter 1. Introduction

    d1663 1 a1663 1 release=pkgsrc d2273 1 a2273 1 interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi: d2343 1 a2343 1 PKGSRC_COMPILER=mipspro d2389 2 a2390 2 env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ ac_cv___attribute__=yes ./bootstrap d2414 1 a2414 1 PKGSRC_COMPILER=icc d2426 1 a2426 1 ICCBASE=/opt/icc d2509 5 a2513 5 .ifdef BSD_PKG_MK # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here .else # OpenBSD stuff .endif d2639 3 a2641 3 CC= cc CXX= CC CPP= /usr/ccs/lib/cpp d2647 1 a2647 1 CFLAGS= -xtarget=ultra -xarch=v9 d3513 11 a3523 12 The following options are supported by this package: ssl Enable SSL support. Exactly one of the following gecko options is required: firefox Use firefox as gecko rendering engine. mozilla Use mozilla as gecko rendering engine. At most one of the following database options may be selected: mysql Enable support for MySQL database. pgsql Enable support for PostgreSQL database. These options are enabled by default: firefox These options are currently enabled: mozilla ssl d3800 8 a3807 8 PACKAGES?= ${_PKGSRCDIR}/packages/${MACHINE_ARCH} WRKOBJDIR?= /usr/tmp/pkgsrc # build here instead of in pkgsrc BSDSRCDIR= /usr/src BSDXSRCDIR= /usr/xsrc # for x11/xservers OBJHOSTNAME?= yes # use work.`hostname` FAILOVER_FETCH= yes # insist on the correct checksum PKG_DEVELOPER?= yes _ACCEPTABLE= yes d3917 4 a3920 4 ( cd /usr/pkgsrc/security/ssh ; make bulk-install ) if [ -f /usr/pkg/etc/rc.d/sshd ]; then /usr/pkg/etc/rc.d/sshd fi d4738 1 a4738 1 % echo subscribe % cd .../pkgsrc % ls -d */*-dirs d7792 1 a7792 2 USE_DIRS+= xdg-1.1 d7968 1 a7968 1 DEPENDS+= foo>=1.1.0:../../category/foo d7973 1 a7973 1 .include "../../category/foo/buildlink3.mk" d7981 2 a7982 2 BUILDLINK_DEPENDS.foo+= foo>=1.1.0 .include "../../category/foo/buildlink3.mk" d8153 1 a8153 1 # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $ d8155 2 a8156 2 BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ TIFF_BUILDLINK3_MK:= ${TIFF_BUILDLINK3_MK}+ d8158 3 a8160 3 .if !empty(BUILDLINK_DEPTH:M+) BUILDLINK_DEPENDS+= tiff .endif d8162 2 a8163 2 BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Ntiff} BUILDLINK_PACKAGES+= tiff d8165 4 a8168 4 .if !empty(TIFF_BUILDLINK3_MK:M+) BUILDLINK_DEPENDS.tiff+= tiff>=3.6.1 BUILDLINK_PKGSRCDIR.tiff?= ../../graphics/tiff .endif # TIFF_BUILDLINK3_MK d8170 2 a8171 2 .include "../../devel/zlib/buildlink3.mk" .include "../../graphics/jpeg/buildlink3.mk" d8173 1 a8173 1 BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} d8543 38 a8580 39 .if !defined(IS_BUILTIN.foo) # # IS_BUILTIN.foo is set to "yes" or "no" depending on whether "foo" # genuinely exists in the system or not. # IS_BUILTIN.foo?= no # BUILTIN_PKG.foo should be set here if "foo" is built-in and its package # version can be determined. # . if !empty(IS_BUILTIN.foo:M[yY][eE][sS]) BUILTIN_PKG.foo?= foo-1.0 . endif .endif # IS_BUILTIN.foo .if !defined(USE_BUILTIN.foo) USE_BUILTIN.foo?= ${IS_BUILTIN.foo} . if defined(BUILTIN_PKG.foo) . for _depend_ in ${BUILDLINK_DEPENDS.foo} . if !empty(USE_BUILTIN.foo:M[yY][eE][sS]) USE_BUILTIN.foo!= \ if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.foo}; then \ ${ECHO} "yes"; \ else \ ${ECHO} "no"; \ fi . endif . endfor . endif .endif # USE_BUILTIN.foo CHECK_BUILTIN.foo?= no .if !empty(CHECK_BUILTIN.foo:M[nN][oO]) # # Here we place code that depends on whether USE_BUILTIN.foo is set to # "yes" or "no". # .endif # CHECK_BUILTIN.foo d8693 2 a8694 3 PREFER_PKGSRC= yes PREFER_NATIVE= getopt skey tcp_wrappers d8832 1 a8832 1 USE_PKGINSTALL=YES d8926 1 a8926 1 MAKE_DIRS_PERMS+= ${VARBASE}/foo/private ${ROOT_USER} ${ROOT_GROUP} 0700 d8992 1 a8992 1 SUPPORT_FILES_PERMS+= ${PREFIX}/share/somefile ${VARBASE}/somefile ${ROOT_USER} ${ROOT_GROUP} 0700 d9178 1 a9178 1 CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} d9239 2 a9240 2 EGDIR= ${PREFIX}/share/doc/mutt/samples CONF_FILES= ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc d9315 1 a9315 1 RCD_SCRIPTS+= cupsd d9396 1 a9396 1 user:group[:[userid][:[descr][:[home][:shell]]]] d9408 1 a9408 1 description contains spaces, then spaces should be double d9411 1 a9411 1 foo:foogrp::The\\ Foomister d9418 1 a9418 1 group[:groupid] d9454 2 a9455 2 USE_PKGINSTALL= YES PKG_SHELL= ${PREFIX}/bin/zsh d9564 45 a9608 44 PKG_OPTIONS_VAR= PKG_OPTIONS.wibble PKG_SUPPORTED_OPTIONS= wibble-foo ldap PKG_OPTIONS_OPTIONAL_GROUPS= database PKG_OPTIONS_GROUP.database= mysql pgsql PKG_SUGGESTED_OPTIONS= wibble-foo PKG_OPTIONS_LEGACY_VARS+= WIBBLE_USE_OPENLDAP:ldap PKG_OPTIONS_LEGACY_OPTS+= foo:wibble-foo .include "../../mk/bsd.prefs.mk" # this package was previously named wibble2 .if defined(PKG_OPTIONS.wibble2) PKG_LEGACY_OPTIONS+= ${PKG_OPTIONS.wibble2} PKG_OPTIONS_DEPRECATED_WARNINGS+="Deprecated variable PKG_OPTIONS.wibble2 used, use "${PKG_OPTIONS_VAR:Q}" instead." .endif .include "../../mk/bsd.options.mk" # Package-specific option-handling ### ### FOO support ### .if !empty(PKG_OPTIONS:Mwibble-foo) CONFIGURE_ARGS+= --enable-foo .endif ### ### LDAP support ### .if !empty(PKG_OPTIONS:Mldap) . include "../../databases/openldap/buildlink3.mk" CONFIGURE_ARGS+= --enable-ldap=${BUILDLINK_PREFIX.openldap} .endif ### ### database support ### .if !empty(PKG_OPTIONS:Mmysql) . include "../../mk/mysql.buildlink3.mk" .endif .if !empty(PKG_OPTIONS:Mpgsql) . include "../../mk/pgsql.buildlink3.mk" .endif d9762 1 a9762 1 .if !empty(PKG_OPTIONS:M% send-pr(1). The right person to contact before making major changes to the package. When packaging a new program, set MAINTAINER to yourself. If you really can't maintain the package for future updates, set it to to which the distribution actually unpacks. The default is ${WRKDIR}/${DISTNAME}. The value of WRKSRC should be set explicitly if the package does not follow standard conventions and include the package's name as a subdirectory.

    d6449 24 a6472 7

    Most important, the mandatory message digest, or checksum, of all the distfiles needed for the package to compile, confirming they match the original file distributed by the author. This ensures that the distfile retrieved from the Internet has not been corrupted during transfer or altered by a malign force to introduce a security hole. It is generated using the d6474 2 a6475 18 makesum command. The digest algorithm used was, at one stage, md5, but that was felt lacking compared to sha1, and so sha1 is now the default algorithm. The distfile size is also generated and stored in new distinfo files. The pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d6477 2 a6478 2

    Some packages have different sets of distfiles on a per architecture basis, for example

    The message digest/checksum for all the official patches found in the patches/ directory (see Section 8.3, “patches/*”) for the package is also stored in the distinfo file. This is a message digest/checksum of all lines in the patch file except the NetBSD RCS Id. This file is generated by invoking make makepatchsum (or make mps if you're in a hurry).

    d6710 1 a6710 1

    Display this file after installation of the a6758 44

    If a package doesn't create a subdirectory for itself (like GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC accordingly, e.g. editors/sam again, but the quick answer is:

    WRKSRC=             ${WRKDIR}
    

    If a package doesn't create a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is another one:

    WRKSRC=         ${WRKDIR}/${DISTNAME}/unix
    

    The name of the working directory created by pkgsrc is work by default. If the same pkgsrc tree should be used on several different platforms, the variable OBJMACHINE can be set in /etc/mk.conf to attach the platform to the directory name, e.g. work.i386 or work.sparc.

    @ 1.48 log @regen (option names) @ text @d8151 1 a8151 1 "prompt">% createbuildlink -3 >buildlink3.mk @ 1.47 log @Regenerate. Various changes to pkgsrc guide since this was last generated in early August. @ text @d64 1 a64 1

    $NetBSD: pkgsrc.xml,v 1.9 2005/06/08 13:59:30 dillo Exp $

    d506 2 a507 2 "#manpage-compression">10.5. Man page-compression d671 3 d1316 2 a1317 1 "users-guide">The pkgsrc user's guide

    d5540 2 a5541 2 "developers-guide">The pkgsrc developer's guide

    d5661 2 a5662 2 "#manpage-compression">10.5. Man page-compression d5821 3 d7369 2 a7370 2 "#manpage-compression">10.5. Man page-compression d7631 2 a7632 2 "manpage-compression">10.5. Man page-compression

    d9522 3 d9784 1 d9786 39 a9824 10

    If another package already has an option with the same meaning, use the same name. For options applicable to multiple packages (like enabling support for a library), use short option names (like the name of the library). For options specific to this package, prefix the name with pkgname-. Document the option and its meaning in mk/defaults/options.description.

    @ 1.46 log @regen for upstream patch admonition. (Also noticed part numbering changed to I/II/A, but that seems ok.) @ text @d142 1 a142 1 "#platform-specific-notes">3.2. Platform specific d288 1 a288 1 sandbox for chroot'ed builds d506 2 a507 2 "#manpage-compression">10.5. Manpage-compression d515 1 a515 1 "#platform-specific-plist">10.7. Platform specific d614 1 a614 1 software were configuration files d1014 2 a1015 2

    There is a lot of software freely available for Unix based systems, which usually runs on NetBSD and other d1280 1 a1280 1 be constructed from all the files in the Distfile by d1348 1 a1348 1 "#platform-specific-notes">3.2. Platform specific d1493 1 a1493 1 sandbox for chroot'ed builds d1735 1 a1735 1 "#platform-specific-notes">3.2. Platform specific d1857 13 d1878 2 a1879 2 "platform-specific-notes">3.2. Platform specific notes

    d1928 1 a1928 1 because pkgsrc currently requires the filesystem to d2097 1 a2097 1

    Interix is a POSIX compatible subsystem for the d2196 2 a2197 2

    To enable case-sensitivity for the filesystem, run REGEDIT.EXE, and change the d2320 2 a2321 2 runs into issues when trying to link over a network mounted filesystem.

    d2497 2 a2498 2 work around this by enclosing all the pkgsrc specific parts of the file with:

    d2628 1 a2628 1 "filename">/etc/mk.conf, eg.

    d2636 1 a2636 1 eg.

    d2646 1 a2646 1 "filename">/usr/ccs/{bin,lib} and eg. d2763 1 a2763 1

    This same directory layout applies for CDROM d2767 1 a2767 1 "filename">/cdrom. Please consult your CDROMs d2783 1 a2783 1

    If you have the files on a CDROM or downloaded them d2808 1 a2808 1 semicolon separated list of paths (including remote d2827 5 a2831 6 regularly, and especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration. An example PKG_PATH would be: make. For example, type

    d3019 1 a3019 1 with other programs (ie, do not try and use d3126 1 a3126 1

    A final word of warning: If you setup a system that d3278 5 a3282 5

    In this section you can find some variables that apply all pkgsrc packages. The preferred method of setting them is by setting them in /etc/mk.conf.

    d3634 1 a3634 1 for chroot'ed builds d3678 1 a3678 1 "refentrytitle">pkg_add(1) This saves d3846 1 a3846 1 perform certain site specific tasks at the end of the d4084 1 a4084 1 up a sandbox for chroot'ed builds

    d4277 1 a4277 1

    When the chroot sandbox is setup, you can start the d4312 1 a4312 1 pkgsrc. By setting defining Please use appropviate values for "pkgsrc-200xQy", d4419 1 a4419 1 needs to be set up. This example shows how to setup d4523 2 a4524 2 all the dependencies for given package on the same CD as that package.

    d4538 1 a4538 1 cdpack(1) manpage. The following short example assumes d4991 1 a4991 1

    Utilities for people maintaining pkgsrc (or more a4998 10 "ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/pkgtools/pkgconflict/README.html" target="_top">pkgtools/pkgconflict: Find packages that conflict but aren't marked as such.

  • By default resuming transfers in pkgsrc is disabled, d5172 1 a5172 1 URL e.g. in Amdahl, the machine “/usr/pkgsrc or one of it's d5333 1 a5333 1 It is recommended to do that to format manpages.

    d5362 2 a5363 2 NetBSD machine. Please get it and install it, by extracting it in Note that, after changing these settings, you must d5657 2 a5658 2 "#manpage-compression">10.5. Manpage-compression d5666 1 a5666 1 "#platform-specific-plist">10.7. Platform specific d5762 1 a5762 1 software were configuration files d6230 1 a6230 1 list of URI's where file “ d6274 1 a6274 1

    PATCHFILES Name(s) d6360 2 a6361 2 if manpages are installed in compressed form by the package; see comment in $LOCALPATCHES/$PKGPATH). For example if you want to keep a private patch for make the distribution files are unpacked into the directory denoted by d7164 1 a7164 1 need to be quoted because the quoting has already be d7192 1 a7192 1 expression you can apply the Whenever a variable can be empty the d7362 2 a7363 2 "#manpage-compression">10.5. Manpage-compression d7370 1 a7370 1 "#platform-specific-plist">10.7. Platform specific and d7390 3 a7392 3 "refentrytitle">pkg_create(1) manpage for a full list. This chapter addresses some issues that need attention when dealing with the d7624 2 a7625 1 "manpage-compression">10.5. Manpage-compression

  • d7630 1 a7630 1

    Manpages should be installed in compressed form if d7638 1 a7638 1 appended/removed automatically for manpages according to d7679 2 a7680 2 "platform-specific-plist">10.7. Platform specific and differing PLISTs

    d7811 1 a7811 1

    Note that, even if your package is using curses.buildlink3.mk If the d8050 1 a8050 1 "filename">x11/openmotif;

    d8058 1 a8058 1 use the Open Sound System (OSS) API;

    d8079 1 a8079 1 "filename">devel/pth
    as needed;

    d8245 1 a8245 1 directory;

    d8435 1 a8435 1 change;

    d8764 1 a8764 1 software were configuration files d8839 1 a8839 1 in detail. Note that, in order to use any of the described d8892 1 a8892 1 anywhere in the filesystem. Here is where pkginstall d8898 1 a8898 1 describes which these variables are.

    d8912 2 a8913 1 creation of directories anywhere in the filesystem:

    d9087 2 a9088 2 "filename">Makefile
    (i.e., it is not user customizable).

    d9178 1 a9178 1 software were configuration files are

    d9189 1 a9189 1 is the case of GNU Autoconf generated files:

    d9576 2 a9577 2 PKG_OPTIONAL_GROUPS= database PKG_GROUP.database= mysql pgsql d9753 1 a9753 1 are defined (as can happen with platform specific options d9896 2 a9897 2

    X11 based are special in that they may be installed in either bsd.pkg.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in WRKDIR. Otherwise you lose the d10530 2 a10531 7

    If you unsure about whether your tree is clean you can either perform a make clean at the top of the tree, or use the following sequence of commands from the directory of the package you want to update (before running d10533 5 d10771 1 a10771 1 (and it's depends, if . After creating the binary package, the sources, the just-installed package and it's required packages are removed, d10789 1 a10789 1 packages. If an upto-date binary package is d10796 1 a10796 1 the installed binary not be removed.

    d10799 1 a10799 1 “upto-date” d11057 1 a11057 1 variable as it is used, but evaluates preprocessor like d11067 1 a11067 1

    Rather than have a number of ad-hoc ways of d11088 1 a11088 1 "filename">/etc/mk.conf please make sure to d11222 2 a11223 1 "varname">DEPENDS definitions, as well as d11480 1 a11480 1 "varname">CONFLICTS to a space separated list of d11484 1 a11484 1

    For example x11/Xaw-Xpm install provide the same shared library, thus you set in Typically a workaround involves testing the d11675 1 a11675 1 removed. e.g. on a new minor release of the above d11892 1 a11892 1 being platform independent.

    d12128 4 a12131 4

    If your package makes use of the platform independent library for loading dynamic shared objects, that comes with libtool (libltdl), you should include devel/libltdl/buildlink3.mk.

    d12282 1 a12282 1 present in other 4.4-lite derived BSDs.

    d12338 1 a12338 1 "filename">Makefile
    . e.g.

    d12670 1 a12670 1

    To achieve this goal the pkgsrc infrastructure d12881 1 a12881 1

    If a package installs gtk2 immodules or loaders, you d12911 1 a12911 1

    Patch the package to not touch any of the gtk2 d13058 1 a13058 1 update-mime-database program, but the later are d13874 1 a13874 1 pkglint(1)) more verbose checks will be performed. Use d14397 1 a14397 1 for creating the ASCII- and HTML-version, and d14399 2 a14400 2 "quote">netbsd-doc-print”for the PostScript- and PDF version. You will need both @ 1.45 log @regen (more variables documented) @ text @d111 1 a111 1

    1. The pkgsrc d387 1 a387 1
    2. The d912 1 a912 1
    1. A simple d917 1 a917 1
    1.1. d923 1 a923 1 "#example-Makefile">1.1.1. Makefile
    d926 1 a926 1 "#example-descr">1.1.2. DESCR d929 1 a929 1 "#example-plist">1.1.3. PLIST d932 1 a932 1 "#checking-package-with-pkglint">1.1.4. Checking a d938 1 a938 1
    1.2. d944 1 a944 1
    2. Build d949 1 a949 1
    2.1. d952 1 a952 1
    2.2. d957 1 a957 1
    3. Layout d960 1 a960 1
    4. Editing d965 1 a965 1
    4.1. d968 1 a968 1
    4.2. d1153 1 a1153 1 "Part 1. The pkgsrc user's guide">The pkgsrc d1159 4 a1162 4 "Part 2. The pkgsrc developer's guide">The pkgsrc developer's guide, explains how to prepare a package so it can be easily built by other NetBSD users without knowing about the package's building details.

    d1313 1 a1313 2 "users-guide">Part 1. The pkgsrc user's guide

    d2871 1 a2871 1 "Part 2. The pkgsrc developer's guide">Part 2, d2978 1 a2978 1 "Appendix 2. Build logs">Appendix 2, Build d3678 1 a3678 1 "2.2. Packaging figlet">Section 2.2, d5521 2 a5522 2 "developers-guide">Part 2. The pkgsrc developer's guide

    d6514 7 d13698 1 a13698 1 "examples">Appendix 1. A simple example d13708 1 a13708 1
    1.1. d13714 1 a13714 1 "#example-Makefile">1.1.1. Makefile
    d13717 1 a13717 1 "#example-descr">1.1.2. DESCR d13720 1 a13720 1 "#example-plist">1.1.3. PLIST d13723 1 a13723 1 "#checking-package-with-pkglint">1.1.4. Checking a d13729 1 a13729 1
    1.2. d13748 1 a13748 1 "example-files">1.1. files

    d13758 1 a13758 1 "example-Makefile">1.1.1. Makefile

    d13786 1 a13786 1 "example-descr">1.1.2. DESCR

    d13803 1 a13803 1 "example-plist">1.1.3. PLIST

    d13822 1 a13822 1 "checking-package-with-pkglint">1.1.4. Checking d13858 1 a13858 1 "steps-for-b-i-p">1.2. Steps for building, d14016 1 a14016 1 "logs">Appendix 2. Build logs

    d14025 1 a14025 1
    2.1. d14028 1 a14028 1
    2.2. d14039 1 a14039 1 "logs.building">2.1. Building figlet

    d14143 1 a14143 1 "logs.package">2.2. Packaging figlet

    d14166 1 a14166 1 "ftp-layout">Appendix 3. Layout of the d14271 1 a14271 1 "editing">Appendix 4. Editing guidelines d14281 1 a14281 1
    4.1. d14284 1 a14284 1
    4.2. d14297 1 a14297 1 "targets" id="targets">4.1. Targets

    d14355 1 a14355 1 "procedure">4.2. Procedure

    @ 1.44 log @re-generate @ text @d111 1 a111 1
    I. The pkgsrc d230 13 a242 1 "#selecting-options">5.1. Selecting Build d387 1 a387 1
    II. The d399 2 a400 1 "#components.Makefile">8.1. 8.2. work*
    d426 2 a427 1 9.1. PLIST generation d535 2 a536 1 buildlink3.mk d550 3 a552 1 buildlink3.mk d558 2 a559 1 "#writing-builtin.mk">11.3. Writing builtin.mk d668 2 a669 1 to use A. A simple d917 1 a917 1
    A.1. d923 1 a923 1 "#example-Makefile">A.1.1. Makefile
    d926 1 a926 1 "#example-descr">A.1.2. DESCR
    d929 1 a929 1 "#example-plist">A.1.3. PLIST d932 1 a932 1 "#checking-package-with-pkglint">A.1.4. Checking a d938 1 a938 1
    A.2. d944 1 a944 1
    B. Build d949 1 a949 1
    B.1. d952 1 a952 1
    B.2. d957 1 a957 1
    C. Layout d960 1 a960 1
    D. Editing d965 1 a965 1
    D.1. d968 1 a968 1
    D.2. d1039 2 a1040 1 class="pkgname">www/apache - The Apache web d1048 2 a1049 1 class="pkgname">www/mozilla - The Mozilla web d1057 2 a1058 1 class="pkgname">meta-pkgs/gnome - The GNOME d1066 2 a1067 1 class="pkgname">meta-pkgs/kde3 - The K Desktop d1153 1 a1153 1 "Part I. The pkgsrc user's guide">The pkgsrc d1159 4 a1162 4 "Part II. The pkgsrc developer's guide">The pkgsrc developer's guide, explains how to prepare a package so it can be easily built by other NetBSD users without knowing about the package's building details.

    d1212 2 a1213 1 stored under .tgz file so it can be d1263 2 a1264 1 are usually generated in The pkgsrc user's guide

    d1436 13 a1448 1 "#selecting-options">5.1. Selecting Build d1637 2 a1638 1 /usr/pkgsrc.

    d1658 2 a1659 1

    in it, see the examples in /usr/pkgsrc directory exists. Then, simply run sup -v /path/to/your/supfile.

    d1693 4 a1696 2

    This will create the pkgsrc directory in your By default, /usr will be on your root file system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /Volumes/<volume name> when the machine boots. If you are (re)formatting a partition as UFS, you need to ensure that the partition map correctly reflects “Apple_UFS” and not “/var/db/pkg. It is therefore recommended that you choose a different location (e.g. An example in /etc/mk.conf. Otherwise, pkgsrc will assume you are using gcc and may end up passing invalid flags to the compiler. Note that bootstrap should create an appropriate PKGSRC_COMPILER in /opt/intel_cc_80, which is also the pkgsrc default. If you have installed it into a different directory, set ICCBASE in /var/db/pkg. It is therefore recommended that you choose a different location (e.g. An example lang/gcc or install a binary gcc package, then remove gcc used during d2614 2 a2615 1 CPP in /usr/ccs/{bin,lib} and eg. All which includes the actual binaries in Additionally to the vulnerable directory to which binary packages with known vulnerabilities are moved, since removing them could cause missing dependencies. To use these packages, add the vulnerable directory to your PKG_PATH. However, you should run security/audit-packages regularly, and especially after installing new packages, and verify that the vulnerabilities are acceptable for your configuration. An example PKG_PATH would be: /usr/pkg/bin and /usr/pkg/sbin in your PATH so you can actually start the just installed program.

    d2872 1 a2872 1 "Part II. The pkgsrc developer's guide">Part II, d2914 2 a2915 1 a look at /etc/mk.conf file, and adding the definitions there.

    d2934 2 a2935 1 need. Put these distfiles into Appendix B, Build d2983 2 a2984 1 the packages tree - src/, obj/, or Some packages look in pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. d3018 2 a3019 1 "varname">LOCALBASE can be set in /usr/pkg, and that you should not install any if you use a non-standard 5.1. Selecting Build d3247 219 a3465 3 "selecting-options" id= "selecting-options">5.1. Selecting Build Options

    d3494 2 a3495 1

    The following variables can be defined in /etc/mk.conf for each option. To ease transition to the options framework for the user, these legacy variables are converted to the appropriate options setting automatically. A warning is issued to prompt the user to update Section B.2, d3684 2 a3685 1 class="pkgname">misc/figlet example.

    d3756 4 a3759 2

    You may want to set variables in /etc/mk.conf. Look at 6.3.1.2. build.conf

    d3791 12 a3802 8

    In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the config file that determines where log files are generated after the build, where to mail the build report to, where your pkgsrc tree is located and the user to which user to 6.3.1.3.  pre-build.local

    d3823 2 a3824 1 pre-build stage. If the file /usr/pkgsrc/mk/bulk, it will be executed (as a pre-build.local is to have the line:

    d3862 8 a3869 6

    As /usr/pkg will be completely deleted at the start of bulk builds, make sure your login shell is placed somewhere else. Either drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via d3874 10 a3883 8 /etc/rc.local, so you can login after a reboot (remember that your current process won't die if the package is removed, you just can't start any new instances of the shell any more). Also, if you use NetBSD earlier than 1.5, or you still want to use the pkgsrc version of ssh for some reason, be sure to install ssh before starting it from rc.local:

    d3921 3 a3923 2 /usr/local, etc. then become root and type:

    d3942 2 a3943 1 build.conf file.

    d3984 2 a3985 1 directory specified in the broken.html, a short version of that report will also be mailed to the build's admin.

    d3997 4 a4000 2 compiled in /usr/pkgsrc/.broken (or /usr/sandbox. This can be done by using null mounts, or manually.

    d4075 2 a4076 1

    There is a shell script called in /dev/*

    d4117 3 a4119 2

    /etc/resolv.conf (for security/smtpd and mail):

    d4141 3 a4143 2

    /etc/localtime (for security/smtpd):

    d4155 4 a4158 2

    /usr/src (system sources, for sysutils/aperture, net/ppp-mppe):

    d4177 2 a4178 1

    Create Create /usr/pkg (not part of default install):

    d4199 2 a4200 1

    Checkout pkgsrc via cvs into Make .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    d4226 2 a4227 1

    Edit Adjust CVS_USER in SPECIFIC_PKGS in mk/bulk/build.conf. This will prompt you for your GPG password to sign the files d4358 3 a4360 3 mk/bulk/build.conf file, i.e. adjust it to something like one of the following:

    d4375 5 a4379 4

    A separate upload directory is used here to allow "closing" the directory during upload. To do so, run the following command on ftp.NetBSD.org next:

    d4385 2 a4386 1

    Please note that Now take the output of ~/.ssh/authorized_keys file on ftp.NetBSD.org. You can remove the key after the upload is done!

    d4448 2 a4449 2 vulnerable subdirectory.

    d4461 4 a4464 2 the upload directory to have them accessible to everyone:

    d4494 2 a4495 1 class="pkgname">pkgtools/cdpack package provides a d4515 2 a4516 1 that the binary packages are left in COPYRIGHT, Each image will contain README, COPYING, and The pkgsrc/pkgtools directory pkgtools contains a number of useful utilities for both users and developers of pkgsrc. This section attempts only to make the reader aware of the utilities and when they might be useful, and not to duplicate the documentation that comes with each package.

    d4763 2 a4764 1 class="pkgname">pkgtools/x11-links: Symlinks d4779 2 a4780 1 class="pkgname">pkgtools/digest: Calculates d4788 2 a4789 1 class="pkgname">pkgtools/libnbcompat: d4797 2 a4798 1 class="pkgname">pkgtools/mtree: Installed on d4806 4 a4809 2 class="pkgname">pkgtools/pkg_install: Up-to-date replacement for pkgtools/pkg_tarup: Create a d4838 2 a4839 1 class="pkgname">pkgtools/dfdisk: Adds extra d4850 2 a4851 1 class="pkgname">pkgtools/xpkgwedge: Put X11 d4859 2 a4860 1 class="pkgname">devel/cpuflags: Determine the d4876 2 a4877 1 class="pkgname">pkgtools/pkg_chk: Reports on d4886 2 a4887 1 class="pkgname">pkgtools/pkgdep: Makes d4896 2 a4897 1 class="pkgname">pkgtools/pkgdepgraph: Makes d4901 2 a4902 1 class="pkgname">pkgtools/pkgdep (uses d4910 2 a4911 1 class="pkgname">pkgtools/pkglint: The d4921 3 a4923 2 class="pkgname">pkgtools/pkgsurvey: Report what packages you have installed.

    d4937 2 a4938 1 class="pkgname">pkgtools/pkgdiff: Automate d4947 2 a4948 1 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: Aids in d4960 2 a4961 1 class="pkgname">pkgtools/gensolpkg: Convert d4976 2 a4977 1 class="pkgname">pkgtools/pkgconflict: Find d4986 2 a4987 1 class="pkgname">pkgtools/pkg_comp: Build d4995 3 a4997 2 class="pkgname">pkgtools/libkver: Spoof kernel version for chrooted cross builds.

    d5038 2 a5039 1 ~/pkg as the installation d5061 5 a5065 3 into /etc/mk.conf. If, during a fetch step, an incomplete distfile is found, pkgsrc will try to resume it.

    d5078 2 a5079 1

    For example, if you want to use /usr/X11R6, /usr/X11R6, bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

    d5190 2 a5191 1

    /usr/bin/ftp

    d5204 8 a5211 6 /usr/bin/ftp, which automatically tries passive connections first, and falls back to active connections if the server refuses to do passive. For the other tools, add the following to your /etc/mk.conf file: PASSIVE_FETCH=1.

    d5213 2 a5214 1

    Having that option present will prevent make fetch-list in then tar up pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the d5324 3 a5326 2 class="pkgname">pkgtools/pkg_install package, you can get away with setting /etc/mk.conf.

    d5345 2 a5346 1

    You didn't install the compiler set, /:

    d5359 5 a5363 4

    comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

    d5390 4 a5393 2 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf) to point to your preferred configuration directory; some common examples include /etc or /etc/pkg.

    d5469 2 a5470 1 class="pkgname">security/audit-packages package. It d5506 2 a5507 1 class="pkgname">security/audit-packages package is d5522 2 a5523 2 "developers-guide">The pkgsrc developer's guide

    d5539 2 a5540 1 "#components.Makefile">8.1. 8.2. work* d5565 3 a5567 1 files/* d5572 2 a5573 1 Programming in 9.1. PLIST generation d5671 2 a5672 1 "#creating-buildlink3.mk">11.2. Writing pkg in 11.3. Writing builtin.mk file d5800 2 a5801 1 use 8.1. 8.2. work* d6084 2 a6085 1 files/* d6099 2 a6100 1 "components.Makefile">8.1. Makefile. The A package Makefile contains several sections that describe the package.

    d6150 15 d6171 106 d6281 1 a6281 1

    The second section contains the following d6288 15 a6302 3 mail address of the package's maintainer, which is the person you can contact when the package does not work.

    d6313 2 a6314 2 one-line comment about the purpose of the package.

    d6319 1 a6319 25

    The MASTER_SITES may be set to one of the predefined sites:

            ${MASTER_SITE_APACHE}
            ${MASTER_SITE_BACKUP}
            ${MASTER_SITE_CYGWIN}
            ${MASTER_SITE_DEBIAN}
            ${MASTER_SITE_FREEBSD}
            ${MASTER_SITE_FREEBSD_LOCAL}
            ${MASTER_SITE_GNOME}
            ${MASTER_SITE_GNU}
            ${MASTER_SITE_GNUSTEP}
            ${MASTER_SITE_IFARCHIVE}
            ${MASTER_SITE_MOZILLA}
            ${MASTER_SITE_OPENOFFICE}
            ${MASTER_SITE_PERL_CPAN}
            ${MASTER_SITE_R_CRAN}
            ${MASTER_SITE_SOURCEFORGE}
            ${MASTER_SITE_SUNSITE}
            ${MASTER_SITE_SUSE}
            ${MASTER_SITE_TEX_CTAN}
            ${MASTER_SITE_XCONTRIB}
            ${MASTER_SITE_XEMACS}
        
    
    d6321 17 a6337 21

    If one of these predefined sites is chosen, you may require the ability to specify a subdirectory of that site. Since these macros may expand to more than one actual site, you must use the following construct to specify a subdirectory:

            ${MASTER_SITE_GNU:=subdirectory/name/}
            ${MASTER_SITE_SOURCEFORGE:=project_name/} 
    

    Note the trailing slash after the subdirectory name.

    Note

    MASTER_SITE_SUBDIR has been deprecated and should no longer be used.

    a6339 33

    If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES_foo to a list of URI's where file “foo” may be found. “foo” includes the suffix, e.g.

    DISTFILES=      ${DISTNAME}${EXTRACT_SUFX}
    DISTFILES+=     foo-file.tar.gz
    SITES_foo-file.tar.gz=http://www.somewhere.com/somehow/ \
            http://www.somewhereelse.com/mirror/somehow/
    

    Note that the normal default setting of DISTFILES must be made explicit if you want to add to it (rather than replace it), as you usually would.

    Currently the following values are available for CATEGORIES. If more than one is used, they need to be separated by spaces:

    archivers     cross         geography     meta-pkgs     security
    audio         databases     graphics      misc          shells
    benchmarks    devel         ham           multimedia    sysutils
    biology       editors       inputmethod   net           textproc
    cad           emulators     lang          news          time
    chat          finance       mail          parallel      wm
    comms         fonts         math          pkgtools      www
    converters    games         mbone         print         x11
    
    d6347 2 a6348 1 package; see comment in Replace /usr/local with “${PREFIX}” in all files (see patches, below).

    d6363 2 a6364 2 "15.5.7. Packages installing info files">Section 15.5.7, “Packages installing info a6366 23
  • Set MAINTAINER to be yourself. If you really can't maintain the package for future updates, set it to .

  • If a home page for the software in question exists, add the variable HOMEPAGE right after MAINTAINER. The value of this variable should be the URL for the home page.

  • Be sure to set the COMMENT variable to a short description of the package, not containing the pkg's name.

  • d6377 2 a6378 1 "components.distinfo">8.2. pkgtools/digest utility calculates d6415 3 a6417 2 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when d6422 2 a6423 1 patches found in the distinfo file. This is a message digest/checksum of all lines in the patch file except the NetBSD RCS Id. This file is generated by invoking make d6460 11 a6470 8 patch-aa is applied before patch-ab, etc.

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set pkgtools/pkgdiff package to avoid d6496 2 a6497 1 filename.orig, e.g. with d6512 2 a6513 1 “distinfo”.

    d6521 2 a6522 1 pkgsrc tree in the PLIST. See Makefile:

    d6667 2 a6668 1 "quote">somevalue
    ” in
    8.6. make clean
    . Besides the sources, this directory is also used to keep various timestamp files.

    d6708 2 a6709 1 class="pkgname">editors/sam again, but the quick d6715 7 a6721 9

    Please note that the old NO_WRKSUBDIR has been deprecated and should not be used. Also, if your package doesn't create a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is d6735 3 a6737 2 work by default. If the same pkgsrc tree should be used on several different d6741 3 a6743 1 work.i386 or 8.7. Makefiles

    d6791 2 a6792 1 "#makefile.variables">9.1. Pkgsrc consists of many The basic ingredients for Makefiles, including the pitfalls that come along with them.

    d6868 2 a6869 1 "makefile.variables">9.1. Makefile variables contain strings that can be processed using the five operators ``='', ``+='', ``?='', ``:='', and ``!='', which are described in the When a variable's value is parsed from a Makefiles.

    d7303 2 a7304 1 class="pkgname">regress/make-quoting
    , testcase d7329 2 a7330 1 PLIST d7358 9 a7366 6

    The PLIST file contains a package's “packing list”, i.e. a list of files that belong to the package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the PLIST file you write:

    d7400 3 a7402 1 PLIST generation

    d7449 2 a7450 1

    For example, to get all files inside the share or lib by default.

    d7576 2 a7577 1 default, please look in MANZ is set (in PLIST itself.

    d7640 3 a7642 2 PLIST used in generating the binary package, set the variable PLIST.common

    d7677 3 a7679 1

    PLIST.${OPSYS}

    d7683 2 a7684 1

    textproc/scrollkeeper, which removes the shared directory share/applications, it should have the following line in it:

    d7789 2 a7790 1

    Note that, even if your package is using 11.2. Writing buildlink3.mk d7841 2 a7842 1 "#writing-builtin.mk">11.3. Writing builtin.mk file d7894 4 a7897 2 normal system header and library paths, e.g. /usr/include, only the There are several buildlink3.mk files in bdb.buildlink3.mk chooses either the native or a pkgsrc Berkeley DB implementation based on the values of devel/ncurses package.

    d7997 6 a8002 5

    krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between adding a dependency on Heimdal or MIT-krb5 for packages that require a Kerberos 5 d8007 2 a8008 1

    x11/lesstif or x11/openmotif;

    d8023 2 a8024 1

    devel/pth as needed;

    d8052 5 a8056 4

    xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    d8061 2 a8062 1

    The comments in those buildlink3.mk files

    d8081 2 a8082 1

    A package's buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    d8095 2 a8096 1

    To generate an initial pkgtools/createbuildlink package is d8105 2 a8106 1 buildlink3.mk files:

    d8127 2 a8128 1

    The following real-life example pkgsrc/graphics/tiff:

    d8158 6 a8163 4 across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    d8172 2 a8173 1 buildlink3.mk file for d8177 2 a8178 1 of packages for which buildlink3.mk file.

    d8240 2 a8241 1 are lists of subdirectories of include/*.h.

    d8300 2 a8301 1 stdout a list of files relative to ${BUILDLINK_DIR}. By default, this takes the +CONTENTS input into a list of files relative to include and +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib directories.

    d8360 2 a8361 1

    The last section includes any buildlink3.mk file is d8386 2 a8387 1 pkg in buildlink3.mk files, their BUILDLINK_DEPENDS. pkg adjusted, too. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

    d8453 3 a8455 1 builtin.mk files

    d8462 2 a8463 1 base system. Aside from a builtin.mk file

    d8574 2 a8575 1 only used internally within the builtin.mk file.

    d8595 5 a8599 4 builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in must have a Makefile:

    d8841 2 a8842 1

    As you already know, the ${VARBASE} or ${PKG_SYSCONFDIR}.

    d8864 2 a8865 1 variables set in the package's ${PREFIX}/etc although it may be overridden by the user to point to his preferred location (e.g., /etc, Makefile (i.e., it is not user customizable).

    d9062 4 a9065 2 class="pkgname">www/apache2, which places its configuration files under the Otherwise, it is set to It is worth mentioning that OWN_DIRS. See PLIST registers them and the administrator always has the original copies d9205 2 a9206 1 package installation to update what is in mail/mutt package:

    d9275 2 a9276 1

    Store the script inside print/cups package as an example, it has a FILES_SUBST variable.

    d9317 2 a9318 1 examples hierarchy, /sbin/nologin unless they are specified as part of the user element. Note that if the description contains spaces, then spaces should be double backslash-escaped, as in:

    d9417 2 a9418 1 them in the shell database, shells/zsh:

    d9452 3 a9454 3 PKG_REGISTER_SHELLS environment variable to NO.

    d9480 2 a9481 1 use /etc/mk.conf.

    d9523 2 a9524 1 packages to use The following example shows how Makefile, or in a file, e.g. options.mk, that is included by the main package After the inclusion of LOCALBASE (Makefile, you need to look in both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge package is d9941 2 a9942 1

    The following lines are taken from Within ${PREFIX}, packages should install files according to ${PREFIX}/man, not bsd.pkg.mk are:

    d10006 2 a10007 1 the local system in If the distfiles are not in .tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and bsd.pkg.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

    d10119 2 a10120 1 .Z or .orig or sysutils/top
    package:

    d10344 4 a10347 2 pkgsrc/x11/kde, this is likely to remove whole KDE. Works by d10399 2 a10400 1 the command line or in This target generates a www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on Use this target to create a file PATCHFILES, but not /etc/mk.conf.

    d10696 4 a10699 2 PLIST from a find -newer d10704 6 a10709 3 into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST, as the “find -newer” command used by this target won't catch them!

    d10776 3 a10778 2

    None of the package's files (Makefile, ...) were d11018 3 a11020 2 or /etc/mk.conf is that /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

    d11053 2 a11054 1 "varname">CFLAGS
    variable in devel/cpuflags package if you're d11085 2 a11086 1

    Documentation should be installed into ${PREFIX}/share/doc/${PKGNAME} (the latter includes the version number of the package).

    d11190 2 a11191 1 dependencies via print/lyx package, which uses the xpm library, version 3.4j to build:

    d11360 4 a11363 2 buildlink3.mk file, this is specified using the print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d11387 2 a11388 1 class="pkgname">print/ghostscript5 package (it d11418 2 a11419 1 class="pkgname">devel/gettext package. The latter d11425 2 a11426 1 class="pkgname">devel/gettext-m4 package.

    d11453 2 a11454 1 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in and in IGNORE is deprecated because it didn't provide enough information to determine whether the build should fail.

    d11553 2 a11554 1 in will call graphics/ns-cult3d is an example of this usage.

    d11742 2 a11743 1 class="pkgname">cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, multimedia/realplayer, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent d11804 2 a11805 1 used (thus including the devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d11896 5 a11900 2 .la extension, and the objects are changed to have a .a, In the PLIST, include only the When linking shared object (The PLIST file gets the foo.so entry.

    d12002 3 a12004 1 .la file. e.g.

    d12031 2 a12032 1 library name to This will install the static In your PLIST, include only the If you do not need *.a static libraries built and installed, then use SHLIBTOOL_OVERRIDE instead.

    d12115 6 a12120 3 i.e. libfoo.la, not foo.la

    d12229 2 a12230 1 defined in graphics/xv:

    d12382 4 a12385 2 be added to /etc/mk.conf to indicate acceptance of the particular license:

    d12391 2 a12392 1 license text should be added to mk/defaults/mk.conf, control this behaviour: Makefile (we shall use tclsh in this example):

    d12514 2 a12515 1 include the Makefile fragment PLIST corresponding to the files listed in the installed PLIST.

    d12571 2 a12572 1 INSTALL and Makefile. By default, a minimum version of 3.12 is required. If the system does not provide a devel/gtexinfo package will be d12631 3 a12633 2 INSTALL script, and it must use the appropriate If a package installs .schemas or Include .schemas files under Makefile with a list of all Makefile with a list of all If a package installs Include Remove the Include libdata/gtk-2.0 directory, as they will be handled automatically.

    d12929 2 a12930 1

    Include Makefile, which takes care of registering those files in system-wide catalogs at installation and deinstallation time.

    d12986 4 a12989 2 database by installing .xml files inside Include share/mime directory, except for files saved under Remove any PKG_RCD_SCRIPTS=YES in PKG_DEVELOPER=1 in pkgtools/url2pkg, create a d13165 3 a13167 2

    Edit the Makefile as requested.

    d13171 3 a13173 2

    Fill in the DESCR file

    d13183 2 a13184 1 and the configure step to the package's pkgtools/pkgdiff package.

    d13223 2 a13224 1

    Look at the Generate a You usually need to be PLIST, add them.

    d13266 4 a13269 3

    Now that the PLIST is OK, install the package again and make a binary package:

    d13313 2 a13314 1 class="pkgname">pkgtools/pkglint, and fix the d13452 2 a13453 1 removals in CHANGES entries: d13472 2 a13473 1 usage is to first make sure that your /etc/mk.conf if your local login name is not the same as your NetBSD login name. Don't forget to commit the changes to DESCR file, so people reading the mailing lists know what the package is/does.

    d13661 2 a13662 1

    Remove from Add to Appendix A. A simple example d13702 1 a13702 1

    A.1. d13708 1 a13708 1 "#example-Makefile">A.1.1. Makefile
    d13711 1 a13711 1 "#example-descr">A.1.2. DESCR
    d13714 1 a13714 1 "#example-plist">A.1.3. PLIST
    d13717 1 a13717 1 "#checking-package-with-pkglint">A.1.4. Checking a d13723 1 a13723 1
    A.2. d13742 1 a13742 1 "example-files">A.1. files

    d13752 1 a13752 1 "example-Makefile">A.1.1. Makefile

    d13780 1 a13780 1 "example-descr">A.1.2. DESCR

    d13797 1 a13797 1 "example-plist">A.1.3. PLIST

    d13816 1 a13816 1 "checking-package-with-pkglint">A.1.4. Checking d13826 4 a13829 3 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the d13852 1 a13852 1 "steps-for-b-i-p">A.2. Steps for building, d13871 6 a13876 2

    Create Makefile, DESCR and Generate the checksum of the distfile into Appendix B. Build logs

    d14019 1 a14019 1
    B.1. d14022 1 a14022 1
    B.2. d14033 1 a14033 1 "logs.building">B.1. Building figlet

    d14137 1 a14137 1 "logs.package">B.2. Packaging figlet

    d14160 1 a14160 1 "ftp-layout">Appendix C. Layout of the d14265 1 a14265 1 "editing">Appendix D. Editing guidelines d14275 1 a14275 1
    D.1. d14278 1 a14278 1
    D.2. d14291 1 a14291 1 "targets" id="targets">D.1. Targets

    d14296 2 a14297 1

    The pkgsrc guide's source code is stored in D.2. Procedure

    d14369 2 a14370 1 found in Edit the XML file(s) in pkgsrc/doc/guide to check the XML syntax, and fix it if needed.

    d14394 2 a14395 1 "command">make
    in A package may underly a license which the user has or has not agreed to accept. Usually, packages that underly well-known Open Source licenses (e.g. the GNU Public License, GPL) won't have any special license tags added in pkgsrc which require special action by the user of such packages, but there are quite a number of other licenses out there that pkgsrc users may not be able to follow, for whatever reasons. For these cases, pkgsrc contains a mechanism to note that a package underlies a certain license, and the user has to accept the license before the package can be installed.

    Placing a certain package under a certain license works by setting the LICENSE variable to a string identifying the license, e.g. in graphics/graphviz:

    d11465 1 a11465 1 LICENSE= graphviz-license d11469 2 a11470 2 that the package underlies a license which he hasn't accepted (yet):

    d11474 1 a11474 3 ===> graphviz-1.12 has an unacceptable license: graphviz-license. ===> To build this package, add this line to your /etc/mk.conf: ===> ACCEPTABLE_LICENSES+=graphviz-license d11476 2 d11487 1 a11487 1 ACCEPTABLE_LICENSES+=graphviz-license d11499 11 a11509 7

    If there is a really pressing need to accept all licenses at once, like when trying to download or mirror all distfiles or doing a bulk build to test if all packages in pkgsrc build, this can be done by setting _ACCEPTABLE=yes.

    @ 1.42 log @regen @ text @d10685 10 a10694 8 and after the commit of that file, it should be copied to both /pub/NetBSD/packages/distfiles/pkg-vulnerabilities and /pub/NetBSD/packages/distfiles/vulnerabilities on ftp.NetBSD.org using localsrc/security/advisories/Makefile. In addition, if a PKGREVISION and creating a corresponding Chapter 11, Buildlink methodology for more information about writing buildlink3.mk files and BUILDLINK_* definitions.

    d10703 3 a10865 3 "ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/audio/realplayer/README.html" class="pkgname">audio/realplayer, 5.1. Selecting build options d1400 2 a1401 2 "#selecting-options">5.1. Selecting build options d3110 2 a3111 2 "#selecting-options">5.1. Selecting build options d3121 2 a3122 2 "selecting-options">5.1. Selecting build options

    d8933 3 a8935 2

    PKG_OPTIONS_VAR and at least one of bsd.options.mk.

    @ 1.40 log @regen (fix variable name in example) @ text @d865 6 a870 1 "#committing-importing">17.2. Committing: Importing d874 1 a874 1 "#updating-package">17.3. Updating a package to a d878 1 a878 1 "#moving-package">17.4. Moving a package in d5528 6 a5533 1 "#committing-importing">17.2. Committing: Importing a d5537 1 a5537 1 "#updating-package">17.3. Updating a package to a d5541 1 a5541 1 "#moving-package">17.4. Moving a package in d12342 5 a12346 1 "#committing-importing">17.2. Committing: Importing a d12350 1 a12350 1 "#updating-package">17.3. Updating a package to a newer d12353 1 a12353 1
    17.4. d12433 48 d12482 1 a12482 1 "committing-importing">17.2. Committing: a12515 10

    Please note all package updates/additions in pkgsrc/doc/CHANGES. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on www.NetBSD.org and other sites. Additionally, check the pkgsrc/doc/TODO file and remove the entry for the package you updated, in case it was mentioned there.

    d12529 1 a12529 1 "updating-package">17.3. Updating a d12581 1 a12581 1 "moving-package">17.4. Moving a package in @ 1.39 log @regen from the version actually commited @ text @d8780 1 a8780 1 PKG_OPTIONS_LEGACY_WARNINGS+="Deprecated variable PKG_OPTIONS.wibble2 used, use "${PKG_OPTIONS_VAR:Q}" instead." @ 1.38 log @update (user documentation of options framework) @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.8 2005/06/03 12:27:48 jmmv Exp $

    d3160 3 a3162 3

    For each option, the following settings are consulted in the order given, and the last setting that selects or disables the option is used:

    @ 1.37 log @regen (options developer documentation update) @ text @d224 12 a235 1
    5. Creating d241 1 a241 1 "#building-a-single-binary-package">5.1. Building a d245 1 a245 1 "#settings-for-creationg-of-binary-packages">5.2. d249 1 a249 1
    5.3. d255 1 a255 1 "#binary.configuration">5.3.1. d259 1 a259 1 "#other-environmental-considerations">5.3.2. d264 1 a264 1 "#operation">5.3.3. Operation
    d267 1 a267 1 "#what-it-does">5.3.4. What it d271 1 a271 1 "#disk-space-requirements">5.3.5. Disk space d275 1 a275 1 "#setting-up-a-sandbox">5.3.6. Setting up a d279 1 a279 1 "#building-a-partial-set">5.3.7. Building a d283 1 a283 1 "#bulk-upload">5.3.8. Uploading results of a d289 1 a289 1 "#creating-cdroms">5.4. Creating a multiple CD-ROM d295 1 a295 1 "#cdpack-example">5.4.1. Example of d302 1 a302 1
    6. Frequently d308 1 a308 1 "#mailing-list-pointers">6.1. Are there any mailing d312 1 a312 1 "#pkgviews-docs">6.2. Where's the pkgviews d316 1 a316 1 "#faq-pkgtools">6.3. Utilities for package d320 1 a320 1 "#non-root-pkgsrc">6.4. How to use pkgsrc as d324 1 a324 1 "#resume-transfers">6.5. How to resume transfers d328 1 a328 1 "#XFree86-from-pkgsrc">6.6. How can I install/use d332 1 a332 1 "#x.org-from-pkgsrc">6.7. How can I install/use d336 1 a336 1 "#fetch-behind-firewall">6.8. How to fetch files d339 1 a339 1
    6.9. d345 1 a345 1 "#fetching-all-distfiles">6.10. How to fetch all d349 1 a349 1 "#tmac.andoc-missing">6.11. What does d355 1 a355 1 "#bsd.own.mk-missing">6.12. What does d360 1 a360 1 "#using-sudo-with-pkgsrc">6.13. Using 'sudo' with d363 1 a363 1
    6.14. d368 1 a368 1 "#audit-packages">6.15. Automated security d380 1 a380 1
    7. d387 1 a387 1 "#components.Makefile">7.1. 7.2. 7.3. d399 1 a399 1 "#other-mandatory-files">7.4. Other mandatory d403 1 a403 1 "#components.optional">7.5. Optional d406 1 a406 1
    7.6. d409 1 a409 1
    7.7. d415 1 a415 1
    8. d422 1 a422 1 "#makefile.variables">8.1. 8.1.1. Naming d435 1 a435 1 "#makefile.code">8.2. Code snippets
    d440 1 a440 1 "#adding-to-list">8.2.1. Adding things to a d444 1 a444 1 "#converting-internal-to-external">8.2.2. d449 1 a449 1 "#passing-variable-to-shell">8.2.3. Passing d453 1 a453 1 "#quoting-guideline">8.2.4. Quoting d457 1 a457 1 "#bsd-make-bug-workaround">8.2.5. Workaround d464 1 a464 1
    9. PLIST d469 1 a469 1
    9.1. RCS d473 1 a473 1 "#automatic-plist-generation">9.2. Semi-automatic d477 3 a479 3
    9.3. Tweaking output of make d482 1 a482 1
    9.4. d486 1 a486 1 "#manpage-compression">9.5. d490 1 a490 1 "#using-PLIST_SRC">9.6. Changing PLIST source with d495 1 a495 1 "#platform-specific-plist">9.7. Platform specific d499 2 a500 2 "#faq.common-dirs">9.8. Sharing directories between packages
    d504 1 a504 1
    10. d510 1 a510 1 "#converting-to-buildlink3">10.1. Converting d514 1 a514 1 "#creating-buildlink3.mk">10.2. Writing d521 1 a521 1 "#anatomy-of-bl3">10.2.1. Anatomy of a d525 1 a525 1 "#updating-buildlink-depends">10.2.2. Updating d535 1 a535 1 "#writing-builtin.mk">10.3. Writing 10.3.1. Anatomy of a d546 1 a546 1 "#native-or-pkgsrc-preference">10.3.2. Global d554 1 a554 1
    11. The d560 1 a560 1 "#files-and-dirs-outside-prefix">11.1. Files and d567 1 a567 1 "#dirs-outside-prefix">11.1.1. Directory d571 1 a571 1 "#files-outside-prefix">11.1.2. File d576 1 a576 1
    11.2. d582 1 a582 1 "#conf-files-sysconfdir">11.2.1. How d587 1 a587 1 "#conf-files-configure">11.2.2. Telling the d592 1 a592 1 "#conf-files-patching">11.2.3. Patching d596 1 a596 1 "#conf-files-disable">11.2.4. Disabling d602 1 a602 1 "#rcd-scripts">11.3. System startup d608 1 a608 1 "#rcd-scripts-disable">11.3.1. Disabling d615 1 a615 1 "#users-and-groups">11.4. System users and d618 1 a618 1
    11.5. d624 1 a624 1 "#shells-disable">11.5.1. Disabling handling of d631 1 a631 1
    12. d637 1 a637 1 "#global-default-options">12.1. Global default d641 1 a641 1 "#converting-to-options">12.2. Converting packages d647 1 a647 1
    13. The d653 1 a653 1 "#build.prefix">13.1. Program d657 1 a657 1 "#main-targets">13.2. Main targets
    d660 1 a660 1 "#build.helpful-targets">13.3. Other helpful d665 1 a665 1
    14. Notes on d671 1 a671 1 "#general-operation">14.1. General d677 1 a677 1 "#pulling-vars-from-etc-mk.conf">14.1.1. How to d682 1 a682 1 "#where-to-install-documentation">14.1.2. Where d686 1 a686 1 "#restricted-packages">14.1.3. Restricted d690 1 a690 1 "#dependencies">14.1.4. Handling d694 1 a694 1 "#conflicts">14.1.5. Handling conflicts with d698 1 a698 1 "#not-building-packages">14.1.6. Packages that d702 1 a702 1 "#undeletable-packages">14.1.7. Packages which d707 1 a707 1 "#security-handling">14.1.8. Handling packages d711 1 a711 1 "#compiler-bugs">14.1.9. How to handle compiler d715 1 a715 1 "#bumping-pkgrevision">14.1.10. How to handle d720 1 a720 1 "#portability-of-packages">14.1.11. Portability d726 1 a726 1 "#downloading-issues">14.2. Possible downloading d732 1 a732 1 "#no-plain-download">14.2.1. Packages whose d737 1 a737 1 "#modified-distfiles-same-name">14.2.2. How to d744 1 a744 1 "#configuration-gotchas">14.3. Configuration d750 1 a750 1 "#fixes.libtool">14.3.1. Shared libraries - d754 1 a754 1 "#using-libtool">14.3.2. Using libtool on GNU d759 1 a759 1 "#autoconf-automake">14.3.3. GNU d765 1 a765 1 "#building-considerations">14.4. Building d771 1 a771 1 "#cpp-defines">14.4.1. CPP d777 1 a777 1 "#package-specific-actions">14.5. Package specific d783 1 a783 1 "#user-interaction">14.5.1. User d787 1 a787 1 "#handling-licenses">14.5.2. Handling d791 1 a791 1 "#installing-score-files">14.5.3. Installing d795 1 a795 1 "#perl-scripts">14.5.4. Packages containing d799 1 a799 1 "#hardcoded-paths">14.5.5. Packages with d804 1 a804 1 "#perl-modules">14.5.6. Packages installing d808 1 a808 1 "#faq.info-files">14.5.7. Packages installing d812 1 a812 1 "#gconf2-data-files">14.5.8. Packages d816 1 a816 1 "#scrollkeeper-data-files">14.5.9. Packages d821 1 a821 1 "#x11-fonts">14.5.10. Packages installing X11 d825 1 a825 1 "#gtk2-modules">14.5.11. Packages installing d829 1 a829 1 "#sgml-xml-data">14.5.12. Packages installing d833 1 a833 1 "#mime-database">14.5.13. Packages installing d837 1 a837 1 "#intltool">14.5.14. Packages using d841 1 a841 1 "#startup-scripts">14.5.15. Packages installing d847 1 a847 1 "#feedback-to-author">14.6. Feedback to the d852 1 a852 1
    15. d855 1 a855 1
    16. d861 1 a861 1 "#submitting-your-package">16.1. Submitting your d865 1 a865 1 "#committing-importing">16.2. Committing: Importing d869 1 a869 1 "#updating-package">16.3. Updating a package to a d873 1 a873 1 "#moving-package">16.4. Moving a package in d1389 12 a1400 1
    5. Creating d1406 1 a1406 1 "#building-a-single-binary-package">5.1. Building a d1410 1 a1410 1 "#settings-for-creationg-of-binary-packages">5.2. d1414 1 a1414 1
    5.3. d1420 1 a1420 1 "#binary.configuration">5.3.1. d1424 1 a1424 1 "#other-environmental-considerations">5.3.2. d1429 1 a1429 1 "#operation">5.3.3. Operation
    d1432 1 a1432 1 "#what-it-does">5.3.4. What it d1436 1 a1436 1 "#disk-space-requirements">5.3.5. Disk space d1440 1 a1440 1 "#setting-up-a-sandbox">5.3.6. Setting up a d1444 1 a1444 1 "#building-a-partial-set">5.3.7. Building a d1448 1 a1448 1 "#bulk-upload">5.3.8. Uploading results of a bulk d1454 1 a1454 1 "#creating-cdroms">5.4. Creating a multiple CD-ROM d1460 1 a1460 1 "#cdpack-example">5.4.1. Example of d1467 1 a1467 1
    6. Frequently d1473 1 a1473 1 "#mailing-list-pointers">6.1. Are there any mailing d1476 1 a1476 1
    6.2. d1479 1 a1479 1
    6.3. d1484 1 a1484 1 "#non-root-pkgsrc">6.4. How to use pkgsrc as d1488 1 a1488 1 "#resume-transfers">6.5. How to resume transfers when d1492 1 a1492 1 "#XFree86-from-pkgsrc">6.6. How can I install/use d1496 1 a1496 1 "#x.org-from-pkgsrc">6.7. How can I install/use X.org d1500 1 a1500 1 "#fetch-behind-firewall">6.8. How to fetch files from d1503 1 a1503 1
    6.9. d1509 1 a1509 1 "#fetching-all-distfiles">6.10. How to fetch all d1513 1 a1513 1 "#tmac.andoc-missing">6.11. What does d1519 1 a1519 1 "#bsd.own.mk-missing">6.12. What does d1524 1 a1524 1 "#using-sudo-with-pkgsrc">6.13. Using 'sudo' with d1527 1 a1527 1
    6.14. How d1532 1 a1532 1 "#audit-packages">6.15. Automated security d3093 120 d3214 1 a3214 1 "binary">Chapter 5. Creating binary d3225 1 a3225 1 "#building-a-single-binary-package">5.1. Building a d3229 1 a3229 1 "#settings-for-creationg-of-binary-packages">5.2. d3233 1 a3233 1
    5.3. Doing d3239 1 a3239 1 "#binary.configuration">5.3.1. d3243 1 a3243 1 "#other-environmental-considerations">5.3.2. Other d3246 1 a3246 1
    5.3.3. d3250 1 a3250 1 "#what-it-does">5.3.4. What it does
    d3253 1 a3253 1 "#disk-space-requirements">5.3.5. Disk space d3257 1 a3257 1 "#setting-up-a-sandbox">5.3.6. Setting up a sandbox d3261 1 a3261 1 "#building-a-partial-set">5.3.7. Building a partial d3265 1 a3265 1 "#bulk-upload">5.3.8. Uploading results of a bulk d3270 1 a3270 1
    5.4. d3277 1 a3277 1 "#cdpack-example">5.4.1. Example of d3290 1 a3290 1 "building-a-single-binary-package">5.1. Building d3334 2 a3335 2 "Chapter 16. Submitting and Committing">Chapter 16, Submitting and Committing for information d3345 1 a3345 1 "settings-for-creationg-of-binary-packages">5.2. Settings d3352 1 a3352 1 "13.3. Other helpful targets">Section 13.3, d3361 1 a3361 1 "bulkbuild" id="bulkbuild">5.3. Doing a d3387 1 a3387 1 "binary.configuration">5.3.1. Configuration

    d3397 1 a3397 1 "binary.mk.conf">5.3.1.1. /etc/mk.conf

    d3428 1 a3428 1 "build.conf">5.3.1.2. 5.3.1.3.  d3490 1 a3490 1 "other-environmental-considerations">5.3.2. Other d3532 1 a3532 1 "operation">5.3.3. Operation

    d3579 1 a3579 1 "what-it-does">5.3.4. What it does

    d3639 1 a3639 1 "disk-space-requirements">5.3.5. Disk d3682 1 a3682 1 id="setting-up-a-sandbox">5.3.6. Setting d3829 1 a3829 1 "5.3.1.1. /etc/mk.conf">Section 5.3.1.1, d3873 1 a3873 1 "building-a-partial-set">5.3.7. Building d3925 1 a3925 1 "bulk-upload">5.3.8. Uploading results d4067 1 a4067 1 "creating-cdroms">5.4. Creating a multiple d4091 1 a4091 1 "cdpack-example">5.4.1. Example of d4154 1 a4154 1 "faq">Chapter 6. Frequently Asked d4165 1 a4165 1 "#mailing-list-pointers">6.1. Are there any mailing d4168 1 a4168 1
    6.2. d4171 1 a4171 1
    6.3. d4175 1 a4175 1
    6.4. d4179 1 a4179 1 "#resume-transfers">6.5. How to resume transfers when d4183 1 a4183 1 "#XFree86-from-pkgsrc">6.6. How can I install/use d4187 1 a4187 1 "#x.org-from-pkgsrc">6.7. How can I install/use X.org d4191 1 a4191 1 "#fetch-behind-firewall">6.8. How to fetch files from d4194 1 a4194 1
    6.9. How d4200 1 a4200 1 "#fetching-all-distfiles">6.10. How to fetch all d4204 1 a4204 1 "#tmac.andoc-missing">6.11. What does d4210 1 a4210 1 "#bsd.own.mk-missing">6.12. What does d4215 1 a4215 1 "#using-sudo-with-pkgsrc">6.13. Using 'sudo' with d4218 1 a4218 1
    6.14. How d4222 1 a4222 1
    6.15. d4238 1 a4238 1 "mailing-list-pointers">6.1. Are there any d4298 1 a4298 1 "pkgviews-docs">6.2. Where's the pkgviews d4315 1 a4315 1 "faq-pkgtools">6.3. Utilities for package d4560 1 a4560 1 "non-root-pkgsrc">6.4. How to use pkgsrc d4602 1 a4602 1 "resume-transfers">6.5. How to resume d4643 1 a4643 1 "XFree86-from-pkgsrc">6.6. How can I d4666 1 a4666 1 "x.org-from-pkgsrc">6.7. How can I d4689 1 a4689 1 "fetch-behind-firewall">6.8. How to fetch d4714 1 a4714 1 "passive-ftp" id="passive-ftp">6.9. How do d4758 1 a4758 1 "fetching-all-distfiles">6.10. How to d4832 1 a4832 1 "tmac.andoc-missing">6.11. What does d4865 1 a4865 1 "bsd.own.mk-missing">6.12. What does d4895 1 a4895 1 "using-sudo-with-pkgsrc">6.13. Using d4928 1 a4928 1 "faq.conf" id="faq.conf">6.14. How do I d4968 1 a4968 1 "audit-packages">6.15. Automated security d5046 1 a5046 1
    7. d5053 1 a5053 1 "#components.Makefile">7.1. 7.2. 7.3. patches/*
    d5064 1 a5064 1 "#other-mandatory-files">7.4. Other mandatory d5068 1 a5068 1 "#components.optional">7.5. Optional d5071 1 a5071 1
    7.6. d5074 1 a5074 1
    7.7. d5079 1 a5079 1
    8. d5086 1 a5086 1 "#makefile.variables">8.1. 8.1.1. Naming d5097 1 a5097 1
    8.2. d5103 1 a5103 1 "#adding-to-list">8.2.1. Adding things to a d5107 1 a5107 1 "#converting-internal-to-external">8.2.2. d5112 1 a5112 1 "#passing-variable-to-shell">8.2.3. Passing d5116 1 a5116 1 "#quoting-guideline">8.2.4. Quoting d5120 1 a5120 1 "#bsd-make-bug-workaround">8.2.5. Workaround for d5127 1 a5127 1
    9. PLIST d5132 1 a5132 1
    9.1. RCS d5136 1 a5136 1 "#automatic-plist-generation">9.2. Semi-automatic d5140 1 a5140 1
    9.3. d5144 1 a5144 1
    9.4. d5148 1 a5148 1 "#manpage-compression">9.5. d5152 1 a5152 1 "#using-PLIST_SRC">9.6. Changing PLIST source with d5157 2 a5158 2 "#platform-specific-plist">9.7. Platform specific and differing PLISTs
    d5161 1 a5161 1 "#faq.common-dirs">9.8. Sharing directories between d5166 1 a5166 1
    10. d5172 1 a5172 1 "#converting-to-buildlink3">10.1. Converting packages d5176 1 a5176 1 "#creating-buildlink3.mk">10.2. Writing 10.2.1. Anatomy of a d5186 1 a5186 1 "#updating-buildlink-depends">10.2.2. Updating d5196 1 a5196 1 "#writing-builtin.mk">10.3. Writing 10.3.1. Anatomy of a d5207 1 a5207 1 "#native-or-pkgsrc-preference">10.3.2. Global d5215 1 a5215 1
    11. The d5221 1 a5221 1 "#files-and-dirs-outside-prefix">11.1. Files and d5228 1 a5228 1 "#dirs-outside-prefix">11.1.1. Directory d5232 1 a5232 1 "#files-outside-prefix">11.1.2. File d5237 1 a5237 1
    11.2. d5243 1 a5243 1 "#conf-files-sysconfdir">11.2.1. How 11.2.2. Telling the d5253 1 a5253 1 "#conf-files-patching">11.2.3. Patching d5257 1 a5257 1 "#conf-files-disable">11.2.4. Disabling handling d5262 1 a5262 1
    11.3. d5268 1 a5268 1 "#rcd-scripts-disable">11.3.1. Disabling handling d5274 1 a5274 1 "#users-and-groups">11.4. System users and d5277 1 a5277 1
    11.5. d5283 1 a5283 1 "#shells-disable">11.5.1. Disabling handling of d5290 1 a5290 1
    12. Options d5296 1 a5296 1 "#global-default-options">12.1. Global default d5300 1 a5300 1 "#converting-to-options">12.2. Converting packages to d5306 1 a5306 1
    13. The build d5311 1 a5311 1
    13.1. d5314 1 a5314 1
    13.2. d5318 1 a5318 1 "#build.helpful-targets">13.3. Other helpful d5323 1 a5323 1
    14. Notes on d5329 1 a5329 1 "#general-operation">14.1. General d5335 1 a5335 1 "#pulling-vars-from-etc-mk.conf">14.1.1. How to d5340 1 a5340 1 "#where-to-install-documentation">14.1.2. Where d5344 1 a5344 1 "#restricted-packages">14.1.3. Restricted d5348 1 a5348 1 "#dependencies">14.1.4. Handling d5352 1 a5352 1 "#conflicts">14.1.5. Handling conflicts with d5356 1 a5356 1 "#not-building-packages">14.1.6. Packages that d5360 1 a5360 1 "#undeletable-packages">14.1.7. Packages which d5365 1 a5365 1 "#security-handling">14.1.8. Handling packages d5369 1 a5369 1 "#compiler-bugs">14.1.9. How to handle compiler d5373 1 a5373 1 "#bumping-pkgrevision">14.1.10. How to handle d5378 1 a5378 1 "#portability-of-packages">14.1.11. Portability d5384 1 a5384 1 "#downloading-issues">14.2. Possible downloading d5390 1 a5390 1 "#no-plain-download">14.2.1. Packages whose d5395 1 a5395 1 "#modified-distfiles-same-name">14.2.2. How to d5402 1 a5402 1 "#configuration-gotchas">14.3. Configuration d5408 1 a5408 1 "#fixes.libtool">14.3.1. Shared libraries - d5412 1 a5412 1 "#using-libtool">14.3.2. Using libtool on GNU d5417 1 a5417 1 "#autoconf-automake">14.3.3. GNU d5423 1 a5423 1 "#building-considerations">14.4. Building d5429 1 a5429 1 "#cpp-defines">14.4.1. CPP d5435 1 a5435 1 "#package-specific-actions">14.5. Package specific d5441 1 a5441 1 "#user-interaction">14.5.1. User d5445 1 a5445 1 "#handling-licenses">14.5.2. Handling d5449 1 a5449 1 "#installing-score-files">14.5.3. Installing d5453 1 a5453 1 "#perl-scripts">14.5.4. Packages containing perl d5457 1 a5457 1 "#hardcoded-paths">14.5.5. Packages with d5462 1 a5462 1 "#perl-modules">14.5.6. Packages installing perl d5466 1 a5466 1 "#faq.info-files">14.5.7. Packages installing d5470 1 a5470 1 "#gconf2-data-files">14.5.8. Packages installing d5474 1 a5474 1 "#scrollkeeper-data-files">14.5.9. Packages d5479 1 a5479 1 "#x11-fonts">14.5.10. Packages installing X11 d5483 1 a5483 1 "#gtk2-modules">14.5.11. Packages installing GTK2 d5487 1 a5487 1 "#sgml-xml-data">14.5.12. Packages installing d5491 1 a5491 1 "#mime-database">14.5.13. Packages installing d5495 1 a5495 1 "#intltool">14.5.14. Packages using d5499 1 a5499 1 "#startup-scripts">14.5.15. Packages installing d5505 1 a5505 1 "#feedback-to-author">14.6. Feedback to the d5510 1 a5510 1
    15. d5513 1 a5513 1
    16. d5519 1 a5519 1 "#submitting-your-package">16.1. Submitting your d5523 1 a5523 1 "#committing-importing">16.2. Committing: Importing a d5527 1 a5527 1 "#updating-package">16.3. Updating a package to a d5531 1 a5531 1 "#moving-package">16.4. Moving a package in d5543 1 a5543 1 "components">Chapter 7. Package d5554 1 a5554 1 "#components.Makefile">7.1. 7.2. 7.3. patches/*
    d5565 1 a5565 1 "#other-mandatory-files">7.4. Other mandatory d5569 1 a5569 1 "#components.optional">7.5. Optional d5572 1 a5572 1
    7.6. d5575 1 a5575 1
    7.7. d5590 1 a5590 1 "components.Makefile">7.1. Section 14.5.7, “Packages installing info d5812 1 a5812 1 "components.distinfo">7.2. Section 7.3, d5874 1 a5874 1 "components.patches">7.3. patches/*

    d5935 1 a5935 1 "7.2. distinfo">Section 7.2, d5966 1 a5966 1 "other-mandatory-files">7.4. Other d5996 1 a5996 1 "Chapter 9. PLIST issues">Chapter 9, d6009 1 a6009 1 "components.optional">7.5. Optional d6090 1 a6090 1 "work-dir" id="work-dir">7.6. 7.7. Chapter 8. Programming in d6185 1 a6185 1 "#makefile.variables">8.1. 8.1.1. Naming d6196 1 a6196 1
    8.2. d6202 1 a6202 1 "#adding-to-list">8.2.1. Adding things to a d6206 1 a6206 1 "#converting-internal-to-external">8.2.2. d6211 1 a6211 1 "#passing-variable-to-shell">8.2.3. Passing d6215 1 a6215 1 "#quoting-guideline">8.2.4. Quoting d6219 1 a6219 1 "#bsd-make-bug-workaround">8.2.5. Workaround for a d6257 1 a6257 1 "makefile.variables">8.1. 8.1.1. Naming d6402 1 a6402 1 "makefile.code">8.2. Code snippets

    d6417 1 a6417 1 "adding-to-list">8.2.1. Adding things to d6449 1 a6449 1 "converting-internal-to-external">8.2.2. Converting d6476 1 a6476 1 "passing-variable-to-shell">8.2.3. Passing d6539 1 a6539 1 "quoting-guideline">8.2.4. Quoting d6667 1 a6667 1 "bsd-make-bug-workaround">8.2.5. Workaround d6698 1 a6698 1 "plist">Chapter 9. PLIST issues

    d6707 1 a6707 1
    9.1. RCS d6711 1 a6711 1 "#automatic-plist-generation">9.2. Semi-automatic d6715 1 a6715 1
    9.3. d6719 1 a6719 1
    9.4. d6723 1 a6723 1 "#manpage-compression">9.5. d6726 3 a6728 3
    9.6. Changing PLIST source with PLIST_SRC
    d6731 1 a6731 1 "#platform-specific-plist">9.7. Platform specific and d6734 3 a6736 2
    9.8. Sharing directories between packages
    d6758 1 a6758 1 "rcs-id" id="rcs-id">9.1. RCS ID

    d6776 1 a6776 1 "automatic-plist-generation">9.2. Semi-automatic d6786 1 a6786 1 "13.3. Other helpful targets">Section 13.3, d6797 1 a6797 1 "print-PLIST">9.3. Tweaking output of d6806 1 a6806 1 "9.8. Sharing directories between packages">Section 9.8, d6846 3 a6848 2 "plist.misc" id="plist.misc">9.4. Variable substitution in PLIST

    d6955 1 a6955 1 "7.5. Optional files">Section 7.5, d6972 1 a6972 1 "manpage-compression">9.5. Manpage-compression

    d6997 1 a6997 1 "using-PLIST_SRC">9.6. Changing PLIST d7021 1 a7021 1 "platform-specific-plist">9.7. Platform d7066 2 a7067 2 "faq.common-dirs">9.8. Sharing directories between packages

    d7156 1 a7156 1 "buildlink">Chapter 10. Buildlink d7167 1 a7167 1 "#converting-to-buildlink3">10.1. Converting packages d7171 1 a7171 1 "#creating-buildlink3.mk">10.2. Writing 10.2.1. Anatomy of a d7181 1 a7181 1 "#updating-buildlink-depends">10.2.2. Updating d7190 1 a7190 1 "#writing-builtin.mk">10.3. Writing 10.3.1. Anatomy of a d7201 1 a7201 1 "#native-or-pkgsrc-preference">10.3.2. Global d7253 1 a7253 1 "converting-to-buildlink3">10.1. Converting d7399 1 a7399 1 "creating-buildlink3.mk">10.2. Writing d7440 1 a7440 1 "anatomy-of-bl3">10.2.1. Anatomy of a d7672 1 a7672 1 "updating-buildlink-depends">10.2.2. Updating d7724 2 a7725 2 title="14.1.4. Handling dependencies">Section 14.1.4, “Handling dependencies” for d7739 1 a7739 1 "writing-builtin.mk">10.3. Writing d7793 1 a7793 1 "anatomy-of-builtin.mk">10.3.1. Anatomy d7920 1 a7920 1 "native-or-pkgsrc-preference">10.3.2. Global d7968 1 a7968 1 "pkginstall">Chapter 11. The pkginstall d7979 1 a7979 1 "#files-and-dirs-outside-prefix">11.1. Files and d7986 1 a7986 1 "#dirs-outside-prefix">11.1.1. Directory d7990 1 a7990 1 "#files-outside-prefix">11.1.2. File d7995 1 a7995 1
    11.2. d8001 1 a8001 1 "#conf-files-sysconfdir">11.2.1. How 11.2.2. Telling the d8011 1 a8011 1 "#conf-files-patching">11.2.3. Patching d8015 1 a8015 1 "#conf-files-disable">11.2.4. Disabling handling of d8020 1 a8020 1
    11.3. d8026 1 a8026 1 "#rcd-scripts-disable">11.3.1. Disabling handling d8032 1 a8032 1 "#users-and-groups">11.4. System users and d8035 1 a8035 1
    11.5. System d8041 1 a8041 1 "#shells-disable">11.5.1. Disabling handling of d8107 1 a8107 1 "files-and-dirs-outside-prefix">11.1. Files and d8140 1 a8140 1 id="dirs-outside-prefix">11.1.1. Directory d8189 1 a8189 1 id="files-outside-prefix">11.1.2. File d8255 1 a8255 1 "conf-files" id="conf-files">11.2. d8280 1 a8280 1 id="conf-files-sysconfdir">11.2.1. How d8386 1 a8386 1 "11.1.1. Directory manipulation">Section 11.1.1, d8396 1 a8396 1 id="conf-files-configure">11.2.2. Telling the d8425 1 a8425 1 id="conf-files-patching">11.2.3. Patching d8457 1 a8457 1 "11.1.2. File manipulation">Section 11.1.2, d8479 1 a8479 1 id="conf-files-disable">11.2.4. Disabling d8497 1 a8497 1 "rcd-scripts" id="rcd-scripts">11.3. System d8508 2 a8509 2 "11.1. Files and directories outside the installation prefix"> Section 11.1, “Files and directories outside the d8578 1 a8578 1 id="rcd-scripts-disable">11.3.1. Disabling d8599 1 a8599 1 "users-and-groups" id="users-and-groups">11.4. d8646 1 a8646 1 "shells" id="shells">11.5. System shells

    d8677 1 a8677 1 "shells-disable">11.5.1. Disabling handling d8697 1 a8697 1 "options">Chapter 12. Options d8708 1 a8708 1 "#global-default-options">12.1. Global default d8712 1 a8712 1 "#converting-to-options">12.2. Converting packages to d8733 1 a8733 1 "global-default-options">12.1. Global d8752 1 a8752 1 "converting-to-options">12.2. Converting d8828 1 a8828 1 "replaceable">pkgname”.

    d8963 1 a8963 1 "build">Chapter 13. The build d8973 1 a8973 1
    13.1. d8976 1 a8976 1
    13.2. d8980 1 a8980 1 "#build.helpful-targets">13.3. Other helpful d9003 1 a9003 1 "build.prefix">13.1. Program location

    d9024 1 a9024 1 "7.3. patches/*">Section 7.3, d9027 1 a9027 1 "14.3.1. Shared libraries - libtool">Section 14.3.1, d9178 1 a9178 1 "main-targets">13.2. Main targets

    d9304 1 a9304 1 "7.3. patches/*">Section 7.3, d9428 1 a9428 1 "build.helpful-targets">13.3. Other d9868 1 a9868 1 "9.3. Tweaking output of make print-PLIST">Section 9.3, d9884 1 a9884 1 "5.3.1. Configuration">Section 5.3.1, d9946 1 a9946 1 "fixes">Chapter 14. Notes on fixes for d9957 1 a9957 1 "#general-operation">14.1. General d9963 1 a9963 1 "#pulling-vars-from-etc-mk.conf">14.1.1. How to d9967 1 a9967 1 "#where-to-install-documentation">14.1.2. Where to d9971 1 a9971 1 "#restricted-packages">14.1.3. Restricted d9975 1 a9975 1 "#dependencies">14.1.4. Handling d9979 1 a9979 1 "#conflicts">14.1.5. Handling conflicts with other d9983 1 a9983 1 "#not-building-packages">14.1.6. Packages that d9987 1 a9987 1 "#undeletable-packages">14.1.7. Packages which d9992 1 a9992 1 "#security-handling">14.1.8. Handling packages with d9996 1 a9996 1 "#compiler-bugs">14.1.9. How to handle compiler d10000 1 a10000 1 "#bumping-pkgrevision">14.1.10. How to handle d10005 1 a10005 1 "#portability-of-packages">14.1.11. Portability of d10011 1 a10011 1 "#downloading-issues">14.2. Possible downloading d10017 1 a10017 1 "#no-plain-download">14.2.1. Packages whose d10022 1 a10022 1 "#modified-distfiles-same-name">14.2.2. How to d10029 1 a10029 1 "#configuration-gotchas">14.3. Configuration d10035 1 a10035 1 "#fixes.libtool">14.3.1. Shared libraries - d10039 1 a10039 1 "#using-libtool">14.3.2. Using libtool on GNU d10044 1 a10044 1 "#autoconf-automake">14.3.3. GNU d10050 1 a10050 1 "#building-considerations">14.4. Building d10056 1 a10056 1 "#cpp-defines">14.4.1. CPP defines d10061 1 a10061 1 "#package-specific-actions">14.5. Package specific d10067 1 a10067 1 "#user-interaction">14.5.1. User d10071 1 a10071 1 "#handling-licenses">14.5.2. Handling d10075 1 a10075 1 "#installing-score-files">14.5.3. Installing score d10079 1 a10079 1 "#perl-scripts">14.5.4. Packages containing perl d10083 1 a10083 1 "#hardcoded-paths">14.5.5. Packages with hardcoded d10087 1 a10087 1 "#perl-modules">14.5.6. Packages installing perl d10091 1 a10091 1 "#faq.info-files">14.5.7. Packages installing info d10095 1 a10095 1 "#gconf2-data-files">14.5.8. Packages installing d10099 1 a10099 1 "#scrollkeeper-data-files">14.5.9. Packages d10103 1 a10103 1 "#x11-fonts">14.5.10. Packages installing X11 d10107 1 a10107 1 "#gtk2-modules">14.5.11. Packages installing GTK2 d10111 1 a10111 1 "#sgml-xml-data">14.5.12. Packages installing SGML d10115 1 a10115 1 "#mime-database">14.5.13. Packages installing d10119 1 a10119 1 "#intltool">14.5.14. Packages using d10123 1 a10123 1 "#startup-scripts">14.5.15. Packages installing d10129 1 a10129 1 "#feedback-to-author">14.6. Feedback to the d10140 1 a10140 1 "general-operation">14.1. General d10152 1 a10152 1 "pulling-vars-from-etc-mk.conf">14.1.1. How d10214 1 a10214 1 "where-to-install-documentation">14.1.2. Where d10233 1 a10233 1 "restricted-packages">14.1.3. Restricted d10312 1 a10312 1 "dependencies">14.1.4. Handling d10327 1 a10327 1 "Chapter 10. Buildlink methodology">Chapter 10, d10479 2 a10480 2 "14.1.8. Handling packages with security problems"> Section 14.1.8, “Handling packages with d10555 1 a10555 1 "conflicts">14.1.5. Handling conflicts d10604 1 a10604 1 "not-building-packages">14.1.6. Packages d10637 1 a10637 1 "undeletable-packages">14.1.7. Packages d10662 1 a10662 1 "security-handling">14.1.8. Handling d10686 1 a10686 1 "Chapter 10. Buildlink methodology">Chapter 10, d10701 1 a10701 1 "compiler-bugs">14.1.9. How to handle d10727 1 a10727 1 id="bumping-pkgrevision">14.1.10. How to d10769 1 a10769 1 "portability-of-packages">14.1.11. Portability d10786 1 a10786 1 "install-scripts">14.1.11.1. ${INSTALL}, d10812 1 a10812 1 "downloading-issues">14.2. Possible d10823 1 a10823 1 "no-plain-download">14.2.1. Packages d10886 1 a10886 1 "modified-distfiles-same-name">14.2.2. How d10927 1 a10927 1 "configuration-gotchas">14.3. Configuration d10938 1 a10938 1 "fixes.libtool">14.3.1. Shared libraries d11147 1 a11147 1 "using-libtool">14.3.2. Using libtool on d11226 1 a11226 1 "autoconf-automake">14.3.3. GNU d11284 1 a11284 1 "building-considerations">14.4. Building d11295 1 a11295 1 "cpp-defines">14.4.1. CPP defines

    d11335 1 a11335 1 "package-specific-actions">14.5. Package d11346 1 a11346 1 "user-interaction">14.5.1. User d11396 1 a11396 1 "handling-licenses">14.5.2. Handling d11472 1 a11472 1 "installing-score-files">14.5.3. Installing d11510 1 a11510 1 "perl-scripts">14.5.4. Packages d11529 1 a11529 1 "hardcoded-paths">14.5.5. Packages with d11556 1 a11556 1 "perl-modules">14.5.6. Packages d11599 1 a11599 1 "faq.info-files">14.5.7. Packages d11696 1 a11696 1 "gconf2-data-files">14.5.8. Packages d11737 2 a11738 2 "6.14. How do I change the location of configuration files?"> Section 6.14, “How do I change the d11772 1 a11772 1 "scrollkeeper-data-files">14.5.9. Packages d11817 1 a11817 1 "x11-fonts">14.5.10. Packages installing d11855 1 a11855 1 "gtk2-modules">14.5.11. Packages d11922 1 a11922 1 "sgml-xml-data">14.5.12. Packages d11984 1 a11984 1 "mime-database">14.5.13. Packages d12043 1 a12043 1 "intltool">14.5.14. Packages using d12067 1 a12067 1 "startup-scripts">14.5.15. Packages d12091 1 a12091 1 "feedback-to-author">14.6. Feedback to the d12115 1 a12115 1 "debug">Chapter 15. Debugging

    d12214 1 a12214 1 "7.1. Makefile">Section 7.1, d12305 1 a12305 1 "Chapter 16. Submitting and Committing">Chapter 16, d12317 1 a12317 1 "submit">Chapter 16. Submitting and d12328 1 a12328 1 "#submitting-your-package">16.1. Submitting your d12332 1 a12332 1 "#committing-importing">16.2. Committing: Importing a d12336 1 a12336 1 "#updating-package">16.3. Updating a package to a newer d12339 1 a12339 1
    16.4. d12350 1 a12350 1 "submitting-your-package">16.1. Submitting d12373 2 a12374 2 title="5.3.8. Uploading results of a bulk build"> Section 5.3.8, “Uploading results of a d12383 1 a12383 1 "Chapter 15. Debugging">Chapter 15, d12420 1 a12420 1 "committing-importing">16.2. Committing: d12477 1 a12477 1 "updating-package">16.3. Updating a d12529 1 a12529 1 "moving-package">16.4. Moving a package in d12801 2 a12802 2 "Chapter 7. Package components - files, directories and contents"> Chapter 7, Package components - files, directories and d13157 2 a13158 2 "5.3. Doing a bulk build of all packages">Section 5.3, “Doing a bulk build of all @ 1.36 log @regen (misc minor fixes, IGNORE_RECOMMENDED documentation). @ text @d8623 15 a8637 5 # Global and legacy options PKG_OPTIONS_VAR= PKG_OPTIONS.wibble PKG_SUPPORTED_OPTIONS= ldap sasl PKG_SUGGESTED_OPTIONS= sasl PKG_OPTION_LEGACY_VARS= WIBBLE_USE_OPENLDAP:ldap USE_SASL2:sasl d8644 7 d8655 1 a8655 1 CONFIGURE_ARGS+= --enable-ldap=${BUILDLINK_PREFIX.openldap} d8659 1 a8659 1 ### SASL authentication d8661 5 a8665 3 .if !empty(PKG_OPTIONS:Msasl) . include "../../security/cyrus-sasl2/buildlink3.mk" CONFIGURE_ARGS+= --enable-sasl=${BUILDLINK_PREFIX.sasl} d8681 4 a8684 6 that contains the options the user wishes to select. The recommended value is “PKG_OPTIONS.pkg” but any package-specific value may be used. This variable should be set in a package Makefile.

    d8690 24 a8713 2 build options supported by the package. This variable should be set in a package Makefile.

    d8723 13 a8735 15

    ${PKG_OPTIONS_VAR} (the variable named in PKG_OPTIONS_VAR) lists the selected build options and overrides any default options given in PKG_DEFAULT_OPTIONS. If any of the options begin with a “-”, then that option is always removed from the selected build options, e.g.

    PKG_DEFAULT_OPTIONS=    kerberos ldap sasl
    PKG_OPTIONS_VAR=        WIBBLE_OPTIONS
    WIBBLE_OPTIONS=         ${PKG_DEFAULT_OPTIONS} -sasl
    # leads to PKG_OPTIONS = kerberos ldap
    
    d8737 13 a8749 6

    or

    PKG_OPTIONS_VAR=        WIBBLE_OPTIONS
    WIBBLE_OPTIONS=         kerberos -ldap ldap
    # leads to PKG_OPTIONS = kerberos
    
    d8751 10 a8760 2

    This variable should be set in /etc/mk.conf.

    d8764 4 a8767 10

    The PKG_OPTIONS_LEGACY_VARS is only needed if you are converting a package that had its own ad-hoc options handling to use bsd.options.mk. It converts global or legacy options variables into an equivalent PKG_OPTIONS.pkg value.

    d8772 17 a8788 1

    After the inclusion of bsd.options.mk, the variable d8790 1 a8790 1 list of the selected build options, properly filtered to d8794 17 a8810 7 specific to each option. There should be a check for every option listed in PKG_SUPPORTED_OPTIONS, and there should be clear documentation on what turning on the option will do in the comments preceding each section. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS.

    @ 1.35 log @Regenerate after addition of the pkginstall chapter. @ text @d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.7 2005/05/24 12:39:00 wiz Exp $

    d7581 2 a7582 5 14.1.4, “Handling dependencies” and Chapter 10, Buildlink methodology for more information about dependencies on other packages, d8122 1 a8122 1 in mind is that files marked as a configuration are d8128 1 a8128 1 This ensures that administrators never loose any custom d8155 3 a8157 3 although may be overridden by the user to point to his preferred location (e.g., /etc,
    . Bad news is that the software they build will, out of the box, mess with the contents of that directory. So which is the correct procedure to fix this issue?

    d8368 1 a8368 2 specific mechanism to handle these files, given that they are special.

    d8383 1 a8383 1 example, it has the d11037 1 a11037 1 USE_TOOLS+= automake # use "automake14" for autoconf-1.4 @ 1.34 log @regen (USE_X11 -> x11.bl3.mk, jmmv whitespace changes). @ text @d353 2 a354 2 Configuration files handling and placement
    d543 78 a620 1
    11. d626 1 a626 1 "#global-default-options">11.1. Global default d630 1 a630 1 "#converting-to-options">11.2. Converting packages d636 1 a636 1
    12. The d642 1 a642 1 "#build.prefix">12.1. Program d646 1 a646 1 "#main-targets">12.2. Main targets
    d649 1 a649 1 "#build.helpful-targets">12.3. Other helpful d654 1 a654 1
    13. Notes on d660 1 a660 1 "#general-operation">13.1. General d666 1 a666 1 "#pulling-vars-from-etc-mk.conf">13.1.1. How to d671 1 a671 1 "#where-to-install-documentation">13.1.2. Where d675 1 a675 1 "#restricted-packages">13.1.3. Restricted d679 1 a679 1 "#dependencies">13.1.4. Handling d683 1 a683 1 "#conflicts">13.1.5. Handling conflicts with d687 1 a687 1 "#not-building-packages">13.1.6. Packages that d691 1 a691 1 "#undeletable-packages">13.1.7. Packages which d696 1 a696 1 "#security-handling">13.1.8. Handling packages d700 1 a700 1 "#compiler-bugs">13.1.9. How to handle compiler d704 1 a704 1 "#bumping-pkgrevision">13.1.10. How to handle d709 1 a709 1 "#portability-of-packages">13.1.11. Portability d715 1 a715 1 "#downloading-issues">13.2. Possible downloading d721 1 a721 1 "#no-plain-download">13.2.1. Packages whose d726 1 a726 1 "#modified-distfiles-same-name">13.2.2. How to d733 1 a733 1 "#configuration-gotchas">13.3. Configuration d739 1 a739 1 "#fixes.libtool">13.3.1. Shared libraries - d743 1 a743 1 "#using-libtool">13.3.2. Using libtool on GNU d748 1 a748 1 "#autoconf-automake">13.3.3. GNU d754 1 a754 1 "#building-considerations">13.4. Building d760 1 a760 1 "#cpp-defines">13.4.1. CPP d766 1 a766 1 "#package-specific-actions">13.5. Package specific d772 1 a772 5 "#package-configuration-files">13.5.1. Package configuration files
    13.5.2. User d776 1 a776 1 "#handling-licenses">13.5.3. Handling d780 1 a780 5 "#creating-accounts">13.5.4. Creating an account from a package
    13.5.5. Installing d784 1 a784 5 "#login-shells">13.5.6. Packages providing login shells
    13.5.7. Packages containing d788 1 a788 1 "#hardcoded-paths">13.5.8. Packages with d793 1 a793 1 "#perl-modules">13.5.9. Packages installing d797 1 a797 1 "#faq.info-files">13.5.10. Packages installing d801 1 a801 1 "#gconf2-data-files">13.5.11. Packages d805 1 a805 1 "#scrollkeeper-data-files">13.5.12. Packages d810 1 a810 1 "#x11-fonts">13.5.13. Packages installing X11 d814 1 a814 1 "#gtk2-modules">13.5.14. Packages installing d818 1 a818 1 "#sgml-xml-data">13.5.15. Packages installing d822 1 a822 1 "#mime-database">13.5.16. Packages installing d826 1 a826 1 "#intltool">13.5.17. Packages using d830 1 a830 1 "#startup-scripts">13.5.18. Packages installing d836 1 a836 1 "#feedback-to-author">13.6. Feedback to the d841 1 a841 1
    14. d844 1 a844 1
    15. d850 1 a850 1 "#submitting-your-package">15.1. Submitting your d854 1 a854 1 "#committing-importing">15.2. Committing: Importing d858 1 a858 1 "#updating-package">15.3. Updating a package to a d862 1 a862 1 "#moving-package">15.4. Moving a package in d1505 3 a1507 3
    6.14. Configuration files handling and placement
    d3192 2 a3193 2 "Chapter 15. Submitting and Committing">Chapter 15, Submitting and Committing for information d3210 1 a3210 1 "12.3. Other helpful targets">Section 12.3, d4076 3 a4078 3
    6.14. Configuration files handling and placement
    d4786 2 a4787 3 "faq.conf" id= "faq.conf">6.14. Configuration files handling and placement

    d4792 23 a4814 106

    The global variable PKG_SYSCONFBASE (and some others) can be set by the system administrator in /etc/mk.conf to define the place where configuration files get installed. Therefore, packages must be adapted to support this feature. Keep in mind that you should only install files that are strictly necessary in the configuration directory, files that can go to $PREFIX/share should go there.

    We will take a look at available variables first (bsd.pkg.mk contains more information). PKG_SYSCONFDIR is where the configuration files for a package may be found (that is, the full path, e.g. /etc or /usr/pkg/etc). This value may be customized in various ways:

    1. PKG_SYSCONFBASE is the main config directory under which all package configuration files are to be found. Users will typically want to set it to /etc, or accept the default location of $PREFIX/etc.

    2. PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the configuration files for a particular package may be found. Defaults to ${SYSCONFBASE}.

    3. PKG_SYSCONFVAR is the special suffix used to distinguish any overriding values for a particular package (see next item). It defaults to ${PKGBASE}, but for a collection of related packages that should all have the same PKG_SYSCONFDIR value, it can be set in each of the package Makefiles to a common value.

    4. PKG_SYSCONFDIR.${PKG_SYSCONFVAR} overrides the value of ${PKG_SYSCONFDIR} for packages with the same value for PKG_SYSCONFVAR.

      As an example, all the various KDE packages may want to set PKG_SYSCONFVAR to “kde” so admins can set PKG_SYSCONFDIR.kde in /etc/mk.conf to define where to install KDE config files.

    Programs' configuration directory should be defined during the configure stage. Packages that use GNU autoconf can usually do this by using the “--sysconfdir” parameter, but this brings some problems as we will see now. When you change this pathname in packages, you should not allow them to install files in that directory directly. Instead they need to install those files under share/examples/${PKGNAME} so PLIST can register them.

    Once you have the required configuration files in place (under the share/examples directory) the variable CONF_FILES should be set to copy them into PKG_SYSCONFDIR. The contents of this variable is formed by pairs of filenames; the first element of the pair specifies the file inside the examples directory (registered by PLIST) and the second element specifies the target file. This is done this way to allow binary packages to place files in the right directory using INSTALL/DEINSTALL scripts which are created automatically. The package Makefile must also set USE_PKGINSTALL=YES to use these automatically generated scripts. The automatic copying of config files can be toggled by setting the environment variable PKG_CONFIG prior to package installation.

    d4816 2 a4817 15

    Here is an example, taken from mail/mutt/Makefile:

    EGDIR=        ${PREFIX}/share/doc/mutt/samples
    CONF_FILES=   ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc
    

    As you can see, this package installs configuration files inside EGDIR, which are registered by PLIST. After that, the variable CONF_FILES lists the installed file first and then the target file. Users will also get an automatic message when files are installed using this method.

    d5073 76 a5148 1
    11. Options d5154 1 a5154 1 "#global-default-options">11.1. Global default d5158 1 a5158 1 "#converting-to-options">11.2. Converting packages to d5164 1 a5164 1
    12. The build d5169 1 a5169 1
    12.1. d5172 1 a5172 1
    12.2. d5176 1 a5176 1 "#build.helpful-targets">12.3. Other helpful d5181 1 a5181 1
    13. Notes on d5187 1 a5187 1 "#general-operation">13.1. General d5193 1 a5193 1 "#pulling-vars-from-etc-mk.conf">13.1.1. How to d5198 1 a5198 1 "#where-to-install-documentation">13.1.2. Where d5202 1 a5202 1 "#restricted-packages">13.1.3. Restricted d5206 1 a5206 1 "#dependencies">13.1.4. Handling d5210 1 a5210 1 "#conflicts">13.1.5. Handling conflicts with d5214 1 a5214 1 "#not-building-packages">13.1.6. Packages that d5218 1 a5218 1 "#undeletable-packages">13.1.7. Packages which d5223 1 a5223 1 "#security-handling">13.1.8. Handling packages d5227 1 a5227 1 "#compiler-bugs">13.1.9. How to handle compiler d5231 1 a5231 1 "#bumping-pkgrevision">13.1.10. How to handle d5236 1 a5236 1 "#portability-of-packages">13.1.11. Portability d5242 1 a5242 1 "#downloading-issues">13.2. Possible downloading d5248 1 a5248 1 "#no-plain-download">13.2.1. Packages whose d5253 1 a5253 1 "#modified-distfiles-same-name">13.2.2. How to d5260 1 a5260 1 "#configuration-gotchas">13.3. Configuration d5266 1 a5266 1 "#fixes.libtool">13.3.1. Shared libraries - d5270 1 a5270 1 "#using-libtool">13.3.2. Using libtool on GNU d5275 1 a5275 1 "#autoconf-automake">13.3.3. GNU d5281 1 a5281 1 "#building-considerations">13.4. Building d5287 1 a5287 1 "#cpp-defines">13.4.1. CPP d5293 1 a5293 1 "#package-specific-actions">13.5. Package specific d5299 1 a5299 5 "#package-configuration-files">13.5.1. Package configuration files
    13.5.2. User d5303 1 a5303 1 "#handling-licenses">13.5.3. Handling d5307 1 a5307 5 "#creating-accounts">13.5.4. Creating an account from a package
    13.5.5. Installing d5311 1 a5311 5 "#login-shells">13.5.6. Packages providing login shells
    13.5.7. Packages containing perl d5315 1 a5315 1 "#hardcoded-paths">13.5.8. Packages with d5320 1 a5320 1 "#perl-modules">13.5.9. Packages installing perl d5324 1 a5324 1 "#faq.info-files">13.5.10. Packages installing d5328 1 a5328 1 "#gconf2-data-files">13.5.11. Packages installing d5332 1 a5332 1 "#scrollkeeper-data-files">13.5.12. Packages d5337 1 a5337 1 "#x11-fonts">13.5.13. Packages installing X11 d5341 1 a5341 1 "#gtk2-modules">13.5.14. Packages installing GTK2 d5345 1 a5345 1 "#sgml-xml-data">13.5.15. Packages installing d5349 1 a5349 1 "#mime-database">13.5.16. Packages installing d5353 1 a5353 1 "#intltool">13.5.17. Packages using d5357 1 a5357 1 "#startup-scripts">13.5.18. Packages installing d5363 1 a5363 1 "#feedback-to-author">13.6. Feedback to the d5368 1 a5368 1
    14. d5371 1 a5371 1
    15. d5377 1 a5377 1 "#submitting-your-package">15.1. Submitting your d5381 1 a5381 1 "#committing-importing">15.2. Committing: Importing a d5385 1 a5385 1 "#updating-package">15.3. Updating a package to a d5389 1 a5389 1 "#moving-package">15.4. Moving a package in d5633 2 a5634 2 "13.5.10. Packages installing info files">Section 13.5.10, “Packages installing info d6643 1 a6643 1 "12.3. Other helpful targets">Section 12.3, d7580 2 a7581 2 title="13.1.4. Handling dependencies">Section 13.1.4, “Handling dependencies” and d7826 3 a7828 3

    Chapter 11. Options handling

    d7838 51 a7888 2 "#global-default-options">11.1. Global default options
    d7891 13 a7903 3 "#converting-to-options">11.2. Converting packages to use bsd.options.mk d7907 52 a7958 8

    Many packages have the ability to be built to support different sets of features. bsd.options.mk is a framework in pkgsrc that provides generic handling of those options that determine different ways in which the packages can be built. It's possible for the user to specify exactly which sets of options will be built into a package or to allow a set of global default options apply.

    d7965 3 a7967 3 "global-default-options" id= "global-default-options">11.1. Global default options

    d7972 21 a7992 6

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of the options that should be built into every package if that option is supported. This variable should be set in /etc/mk.conf.

    d7994 2 a7995 3
    d7997 5 a8001 5

    11.2. Converting packages to use bsd.options.mk

    a8003 1
    d8005 2 a8006 13

    The following example shows how bsd.options.mk should be used by the hypothetical ``wibble'' package, either in the package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    # Global and legacy options
    PKG_OPTIONS_VAR=        PKG_OPTIONS.wibble
    PKG_SUPPORTED_OPTIONS=  ldap sasl
    PKG_SUGGESTED_OPTIONS=  sasl
    PKG_OPTION_LEGACY_VARS= WIBBLE_USE_OPENLDAP:ldap USE_SASL2:sasl
    d8008 13
    a8020 1
    .include "../../mk/bsd.options.mk"
    d8022 12
    a8033 1
    # Package-specific option-handling
    d8035 609
    a8643 7
    ###
    ### LDAP support
    ###
    .if !empty(PKG_OPTIONS:Mldap)
    .  include "../../databases/openldap/buildlink3.mk"
    CONFIGURE_ARGS+=      --enable-ldap=${BUILDLINK_PREFIX.openldap}
    .endif
    d8754 1
    a8754 1
                  "build">Chapter 12. The build
    d8764 1
    a8764 1
                
    12.1. d8767 1 a8767 1
    12.2. d8771 1 a8771 1 "#build.helpful-targets">12.3. Other helpful d8794 1 a8794 1 "build.prefix">12.1. Program location

    d8818 1 a8818 1 "13.3.1. Shared libraries - libtool">Section 13.3.1, d8969 1 a8969 1 "main-targets">12.2. Main targets

    d9219 1 a9219 1 "build.helpful-targets">12.3. Other d9737 1 a9737 1 "fixes">Chapter 13. Notes on fixes for d9748 1 a9748 1 "#general-operation">13.1. General d9754 1 a9754 1 "#pulling-vars-from-etc-mk.conf">13.1.1. How to d9758 1 a9758 1 "#where-to-install-documentation">13.1.2. Where to d9762 1 a9762 1 "#restricted-packages">13.1.3. Restricted d9766 1 a9766 1 "#dependencies">13.1.4. Handling d9770 1 a9770 1 "#conflicts">13.1.5. Handling conflicts with other d9774 1 a9774 1 "#not-building-packages">13.1.6. Packages that d9778 1 a9778 1 "#undeletable-packages">13.1.7. Packages which d9783 1 a9783 1 "#security-handling">13.1.8. Handling packages with d9787 1 a9787 1 "#compiler-bugs">13.1.9. How to handle compiler d9791 1 a9791 1 "#bumping-pkgrevision">13.1.10. How to handle d9796 1 a9796 1 "#portability-of-packages">13.1.11. Portability of d9802 1 a9802 1 "#downloading-issues">13.2. Possible downloading d9808 1 a9808 1 "#no-plain-download">13.2.1. Packages whose d9813 1 a9813 1 "#modified-distfiles-same-name">13.2.2. How to d9820 1 a9820 1 "#configuration-gotchas">13.3. Configuration d9826 1 a9826 1 "#fixes.libtool">13.3.1. Shared libraries - d9830 1 a9830 1 "#using-libtool">13.3.2. Using libtool on GNU d9835 1 a9835 1 "#autoconf-automake">13.3.3. GNU d9841 1 a9841 1 "#building-considerations">13.4. Building d9847 1 a9847 1 "#cpp-defines">13.4.1. CPP defines d9852 1 a9852 1 "#package-specific-actions">13.5. Package specific d9858 1 a9858 5 "#package-configuration-files">13.5.1. Package configuration files
    13.5.2. User d9862 1 a9862 1 "#handling-licenses">13.5.3. Handling d9866 1 a9866 5 "#creating-accounts">13.5.4. Creating an account from a package
    13.5.5. Installing score d9870 1 a9870 5 "#login-shells">13.5.6. Packages providing login shells
    13.5.7. Packages containing perl d9874 1 a9874 1 "#hardcoded-paths">13.5.8. Packages with hardcoded d9878 1 a9878 1 "#perl-modules">13.5.9. Packages installing perl d9882 1 a9882 1 "#faq.info-files">13.5.10. Packages installing info d9886 1 a9886 1 "#gconf2-data-files">13.5.11. Packages installing d9890 1 a9890 1 "#scrollkeeper-data-files">13.5.12. Packages d9894 1 a9894 1 "#x11-fonts">13.5.13. Packages installing X11 d9898 1 a9898 1 "#gtk2-modules">13.5.14. Packages installing GTK2 d9902 1 a9902 1 "#sgml-xml-data">13.5.15. Packages installing SGML d9906 1 a9906 1 "#mime-database">13.5.16. Packages installing d9910 1 a9910 1 "#intltool">13.5.17. Packages using d9914 1 a9914 1 "#startup-scripts">13.5.18. Packages installing d9920 1 a9920 1 "#feedback-to-author">13.6. Feedback to the d9931 1 a9931 1 "general-operation">13.1. General d9943 1 a9943 1 "pulling-vars-from-etc-mk.conf">13.1.1. How d10005 1 a10005 1 "where-to-install-documentation">13.1.2. Where d10024 1 a10024 1 "restricted-packages">13.1.3. Restricted d10103 1 a10103 1 "dependencies">13.1.4. Handling d10256 2 a10257 2 "13.1.8. Handling packages with security problems"> Section 13.1.8, “Handling packages with d10332 1 a10332 1 "conflicts">13.1.5. Handling conflicts d10381 1 a10381 1 "not-building-packages">13.1.6. Packages d10414 1 a10414 1 "undeletable-packages">13.1.7. Packages d10439 1 a10439 1 "security-handling">13.1.8. Handling d10478 1 a10478 1 "compiler-bugs">13.1.9. How to handle d10504 1 a10504 1 id="bumping-pkgrevision">13.1.10. How to d10546 1 a10546 1 "portability-of-packages">13.1.11. Portability d10563 1 a10563 1 "install-scripts">13.1.11.1. ${INSTALL}, d10589 1 a10589 1 "downloading-issues">13.2. Possible d10600 1 a10600 1 "no-plain-download">13.2.1. Packages d10663 1 a10663 1 "modified-distfiles-same-name">13.2.2. How d10704 1 a10704 1 "configuration-gotchas">13.3. Configuration d10715 1 a10715 1 "fixes.libtool">13.3.1. Shared libraries d10924 1 a10924 1 "using-libtool">13.3.2. Using libtool on d11003 1 a11003 1 "autoconf-automake">13.3.3. GNU d11012 1 a11012 6 executed in a pre-configure target. Two Makefile fragments are provided in pkgsrc/mk/autoconf.mk and pkgsrc/mk/automake.mk to help dealing with these tools. See comments in these files for details.

    d11016 2 a11017 1 AUTOCONF_REQD= 2.50 # if default version is not good enough d11021 1 a11021 1 cd ${WRKSRC}; ${AUTOCONF} a11023 1 .include "../../mk/autoconf.mk" d11029 2 a11030 1 AUTOMAKE_REQD= 1.7.1 # if default version is not good enough d11035 2 a11036 4 ${ACLOCAL}; \ ${AUTOHEADER}; \ ${AUTOMAKE} -a --foreign -i; \ ${AUTOCONF} a11038 1 .include "../mk/automake.mk" d11042 1 a11042 3 certainly require GNU Make, but that's automatically provided for you in mk/automake.mk.

    d11061 1 a11061 1 "building-considerations">13.4. Building d11072 1 a11072 1 "cpp-defines">13.4.1. CPP defines

    d11112 1 a11112 1 "package-specific-actions">13.5. Package a11121 74

    13.5.1. Package configuration files

    Packages should be taught to look for their configuration files in ${PKG_SYSCONFDIR}, which is passed through to the configure and build processes. PKG_SYSCONFDIR may be customized in various ways by setting other make variables:

    • PKG_SYSCONFBASE is the main config directory under which all package configuration files are to be found. This defaults to ${PREFIX}/etc, but may be overridden in /etc/mk.conf.

    • PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the configuration files for a particular package may be found, e.g. the Apache configuration files may all be found under the httpd/ subdirectory of ${PKG_SYSCONFBASE}. This should be set in the package Makefile.

    • By default, PKG_SYSCONFDIR is set to ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}, but this may be overridden by setting PKG_SYSCONFDIR.${PKG_SYSCONFVAR} for a particular package, where PKG_SYSCONFVAR defaults to ${PKGBASE}. This is not meant to be set by a package Makefile, but is reserved for users who wish to override the PKG_SYSCONFDIR setting for a particular package with a special location.

    The only variables that users should customize are PKG_SYSCONFBASE and PKG_SYSCONFDIR.${PKG_SYSCONFVAR}. Users will typically want to set PKG_SYSCONFBASE to /etc, or to accept the default location of ${PREFIX}/etc.

    d11123 1 a11123 1 "user-interaction">13.5.2. User d11173 1 a11173 1 "handling-licenses">13.5.3. Handling a11246 55

    13.5.4. Creating an account from a package

    There are two make variables used to control the creation of package-specific groups and users at pre-install time. The first is PKG_GROUPS, which is a list of group[:groupid] elements, where the groupid is optional. The second is PKG_USERS, which is a list of elements of the form:

    user:group[:[userid][:[description][:[home][:shell]]]]
    

    where only the user and group are required, the rest being optional. A simple example is:

      PKG_GROUPS=       foogroup
        PKG_USERS=    foouser:foogroup
    

    A more complex example is that creates two groups and two users is:

      PKG_GROUPS=       group1 group2:1005
        PKG_USERS=    first:group1::First\\ User                      \
                      second:group2::Second\\ User:/home/second:${SH}
    

    By default, a new user will have home directory /nonexistent, and login shell /sbin/nologin unless they are specified as part of the user element.

    The package Makefile must also set USE_PKGINSTALL=YES. This will cause the users and groups to be created at pre-install time, and the admin will be prompted to remove them at post-deinstall time. Automatic creation of the users and groups can be toggled on and off by setting the PKG_CREATE_USERGROUP variable prior to package installation.

    d11249 1 a11249 1 "installing-score-files">13.5.5. Installing a11285 36

    13.5.6. Packages providing login shells

    If the purpose of the package is to provide a login shell, the variable PKG_SHELL should contain the full pathname of the shell executable installed by this package. The package Makefile must also set USE_PKGINSTALL=YES to use the automatically generated INSTALL/DEINSTALL scripts.

    An example taken from shells/zsh:

      USE_PKGINSTALL=   YES
        PKG_SHELL=    ${PREFIX}/bin/zsh
    

    The shell is registered into /etc/shells file automatically in the post-install target by the generated INSTALL script and removed in the deinstall target by the DEINSTALL script.

    d11287 1 a11287 1 "perl-scripts">13.5.7. Packages d11306 1 a11306 1 "hardcoded-paths">13.5.8. Packages with d11333 1 a11333 1 "perl-modules">13.5.9. Packages d11376 1 a11376 1 "faq.info-files">13.5.10. Packages d11473 1 a11473 1 "gconf2-data-files">13.5.11. Packages d11514 4 a11517 4 "6.14. Configuration files handling and placement"> Section 6.14, “Configuration files handling and placement” for more information.

    d11549 1 a11549 1 "scrollkeeper-data-files">13.5.12. Packages d11594 1 a11594 1 "x11-fonts">13.5.13. Packages installing d11632 1 a11632 1 "gtk2-modules">13.5.14. Packages d11699 1 a11699 1 "sgml-xml-data">13.5.15. Packages d11761 1 a11761 1 "mime-database">13.5.16. Packages d11820 1 a11820 1 "intltool">13.5.17. Packages using d11844 1 a11844 1 "startup-scripts">13.5.18. Packages d11868 1 a11868 1 "feedback-to-author">13.6. Feedback to the d11892 1 a11892 1 "debug">Chapter 14. Debugging

    d12082 1 a12082 1 "Chapter 15. Submitting and Committing">Chapter 15, d12094 1 a12094 1 "submit">Chapter 15. Submitting and d12105 1 a12105 1 "#submitting-your-package">15.1. Submitting your d12109 1 a12109 1 "#committing-importing">15.2. Committing: Importing a d12113 1 a12113 1 "#updating-package">15.3. Updating a package to a newer d12116 1 a12116 1
    15.4. d12127 1 a12127 1 "submitting-your-package">15.1. Submitting d12160 1 a12160 1 "Chapter 14. Debugging">Chapter 14, d12197 1 a12197 1 "committing-importing">15.2. Committing: d12254 1 a12254 1 "updating-package">15.3. Updating a d12306 1 a12306 1 "moving-package">15.4. Moving a package in @ 1.33 log @Re-generate. @ text @d4045 3 a4047 3 target="_top">pkgsrc-bugs -- a list where problem reports related to pkgsrc are sent and discussed

    d4053 1 a4053 1 target="_top">pkgsrc-bulk -- a list where the d4055 1 a4055 1 discussed

    d4061 2 a4062 2 target="_top">pkgsrc-changes -- a list where all commit messages to pkgsrc are sent

    d4068 2 a4069 2 target="_top">tech-pkg -- a general discussion list for all things related to pkgsrc

    d4130 2 a4131 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d4145 2 a4146 2 class="pkgname">pkgtools/digest: calculates various kinds of checksums (including SHA1)

    d4154 1 a4154 1 compatibility library for pkgsrc tools

    d4161 2 a4162 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d4170 4 a4173 3 up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d4187 1 a4187 1 class="pkgname">pkgtools/pkg_tarup: create a d4189 3 a4191 2 used by make replace to save the old package

    d4198 1 a4198 1 class="pkgname">pkgtools/dfdisk: adds extra d4209 2 a4210 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d4217 2 a4218 2 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your d4233 1 a4233 1 class="pkgname">pkgtools/pkg_chk: reports on d4235 1 a4235 1 latest pkgsrc entries

    d4242 1 a4242 1 class="pkgname">pkgtools/pkgdep: makes d4244 1 a4244 1 strategy for updating

    d4251 1 a4251 1 class="pkgname">pkgtools/pkgdepgraph: makes d4256 1 a4256 1 graphviz)

    d4263 1 a4263 1 class="pkgname">pkgtools/pkglint: the d4273 2 a4274 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d4288 1 a4288 1 class="pkgname">pkgtools/pkgdiff: automate d4290 1 a4290 1 (includes pkgdiff, pkgvi, mkpatches, ...)

    d4300 2 a4301 2 class="pkgname">pkgtools/url2pkg: aids in converting to pkgsrc

    d4308 2 a4309 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d4323 1 a4323 1 class="pkgname">pkgtools/pkgconflict: find d4325 1 a4325 1 such

    d4332 2 a4333 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d4340 2 a4341 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d4423 4 a4426 5 FETCH_CMD=wget FETCH_BEFORE_ARGS=--passive-ftp FETCH_RESUME_ARGS=-c FETCH_OUTPUT_ARGS=-O d4449 1 a4449 2 X11_TYPE=XFree86 d4472 1 a4472 2 X11_TYPE=xorg d4497 1 a4497 1 ftp_proxy=ftp://orpheus.amdahl.com:80/ d4518 13 a4530 4
    ${LOCALBASE}/bin/ftp
    /usr/bin/ftp
    
    d4710 3 a4712 4 .if exists(${LOCALBASE}/bin/sudo) SU_CMD=${LOCALBASE}/bin/sudo /bin/sh -c .endif d4835 2 a4836 1

    Here is an example, taken from mail/mutt/Makefile:

    d4838 1 a4838 1 EGDIR= ${PREFIX}/share/doc/mutt/samples d4881 2 a4882 2

    download-vulnerability-list”, d4896 3 a4898 3

    audit-packages”, an easy way to audit the current machine, checking each d6953 1 a6953 1 writting new packages).

    d8101 5 a8105 4 possible. Note that you will need to set USE_X11 in them to request the presence of X11 and to get the right compilation flags.

    d8117 1 a8117 3

    Some notes: USE_X11 and USE_X11BASE are mutually exclusive. If you need to find includes or d8122 1 a8122 1 use both d8130 2 a8131 2 class="pkgname">pkgtools/xpkgwedge is enabled by default.

    @ 1.32 log @Update section on what to do when distfiles change. @ text @d4359 26 a4384 3 conditions. Please see this message for more details.

    @ 1.31 log @Document where documentation should be installed. @ text @d9895 21 a9915 11 that time, the md5 checksum will no longer match. The correct way to work around this is to update the package's md5 checksum to match the package on the master site (beware, any mirrors may not be up to date yet!), and to remove the old distfile from ftp.NetBSD.org's /pub/NetBSD/packages/distfiles directory. Furthermore, a mail to the package's author seems appropriate making sure the distfile was really updated on purpose, and that no trojan horse or so crept in.

    @ 1.30 log @regen (no more automatic ids). @ text @d594 5 a598 1 "#restricted-packages">13.1.2. Restricted d602 1 a602 1 "#dependencies">13.1.3. Handling d606 1 a606 1 "#conflicts">13.1.4. Handling conflicts with d610 1 a610 1 "#not-building-packages">13.1.5. Packages that d614 1 a614 1 "#undeletable-packages">13.1.6. Packages which d619 1 a619 1 "#security-handling">13.1.7. Handling packages d623 1 a623 1 "#compiler-bugs">13.1.8. How to handle compiler d627 1 a627 1 "#bumping-pkgrevision">13.1.9. How to handle d632 1 a632 1 "#portability-of-packages">13.1.10. Portability d5124 5 a5128 1 "#restricted-packages">13.1.2. Restricted d5132 1 a5132 1 "#dependencies">13.1.3. Handling d5136 1 a5136 1 "#conflicts">13.1.4. Handling conflicts with d5140 1 a5140 1 "#not-building-packages">13.1.5. Packages that d5144 1 a5144 1 "#undeletable-packages">13.1.6. Packages which d5149 1 a5149 1 "#security-handling">13.1.7. Handling packages d5153 1 a5153 1 "#compiler-bugs">13.1.8. How to handle compiler d5157 1 a5157 1 "#bumping-pkgrevision">13.1.9. How to handle d5162 1 a5162 1 "#portability-of-packages">13.1.10. Portability d7518 2 a7519 2 title="13.1.3. Handling dependencies">Section 13.1.3, “Handling dependencies” and d8967 5 a8971 1 "#restricted-packages">13.1.2. Restricted d8975 1 a8975 1 "#dependencies">13.1.3. Handling d8979 1 a8979 1 "#conflicts">13.1.4. Handling conflicts with other d8983 1 a8983 1 "#not-building-packages">13.1.5. Packages that d8987 1 a8987 1 "#undeletable-packages">13.1.6. Packages which d8992 1 a8992 1 "#security-handling">13.1.7. Handling packages with d8996 1 a8996 1 "#compiler-bugs">13.1.8. How to handle compiler d9000 1 a9000 1 "#bumping-pkgrevision">13.1.9. How to handle d9005 1 a9005 1 "#portability-of-packages">13.1.10. Portability of d9224 19 d9245 1 a9245 1 "restricted-packages">13.1.2. Restricted d9324 1 a9324 1 "dependencies">13.1.3. Handling d9477 2 a9478 2 "13.1.7. Handling packages with security problems"> Section 13.1.7, “Handling packages with d9553 1 a9553 1 "conflicts">13.1.4. Handling conflicts d9602 1 a9602 1 "not-building-packages">13.1.5. Packages d9635 1 a9635 1 "undeletable-packages">13.1.6. Packages d9660 1 a9660 1 "security-handling">13.1.7. Handling d9699 1 a9699 1 "compiler-bugs">13.1.8. How to handle d9725 1 a9725 1 id="bumping-pkgrevision">13.1.9. How to d9767 1 a9767 1 "portability-of-packages">13.1.10. Portability d9784 1 a9784 1 "install-scripts">13.1.10.1. ${INSTALL}, @ 1.29 log @Replaced obsoleted USE_GNU_TOOLS with USE_TOOLS. @ text @d22 2 a23 2

    The pkgsrc guide

    d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.6 2005/05/15 20:32:27 rillig Exp $

    d96 2 a97 1
    1.1. d121 1 a121 1
    2.1. d124 2 a125 2
    2.2. Via SUP
    d127 2 a128 2
    2.3. Via CVS
    d137 3 a139 2
    3.1. Bootstrapping pkgsrc
    d141 3 a143 2
    3.2. Platform specific notes
    d148 1 a148 1 "#id2569774">3.2.1. Darwin (Mac OS d152 1 a152 1 "#id2569937">3.2.2. FreeBSD d155 1 a155 1 "#id2570449">3.2.3. Interix d157 2 a158 2
    3.2.4. IRIX
    d160 2 a161 2
    3.2.5. Linux
    d164 1 a164 1 "#id2570916">3.2.6. OpenBSD d167 1 a167 1 "#id2571028">3.2.7. Solaris d185 2 a186 2 "#id2571164">4.1.1. Where to get binary packages d189 2 a190 2 "#id2571218">4.1.2. How to use binary packages d193 1 a193 1 "#id2571392">4.1.3. A word of d198 3 a200 2
    4.2. Building packages from source
    d205 1 a205 1 "#id2571960">4.2.1. d209 1 a209 1 "#id2571980">4.2.2. Fetching d213 2 a214 2 "#id2572094">4.2.3. How to build and install d217 1 a217 1 "#id2623825">4.2.4. Selecting the d229 3 a231 2
    5.1. Building a single binary package
    d233 2 a234 1
    5.2. d248 2 a249 1 "#id2624204">5.3.2. Other environmental d253 1 a253 1 "#id2624245">5.3.3. Operation
    d256 1 a256 1 "#id2624382">5.3.4. What it d260 1 a260 1 "#id2624439">5.3.5. Disk space d264 2 a265 2 "#id2624466">5.3.6. Setting up a sandbox for chroot'ed builds d268 2 a269 2 "#id2624926">5.3.7. Building a partial set of packages d277 3 a279 3
    5.4. Creating a multiple CD-ROM packages collection
    d284 1 a284 1 "#id2625398">5.4.1. Example of d296 3 a298 3
    6.1. Are there any mailing lists for pkg-related discussion?
    d300 3 a302 2
    6.2. Where's the pkgviews documentation?
    d308 15 a322 2
    6.4. How to use pkgsrc as non-root
    d324 3 a326 15
    6.5. How to resume transfers when fetching distfiles?
    6.6. How can I install/use XFree86 from pkgsrc?
    6.7. How can I install/use X.org from pkgsrc?
    6.8. How to fetch files from behind a firewall
    d328 1 a328 1
    6.9. d333 3 a335 2
    6.10. How to fetch all distfiles at once
    d337 4 a340 3
    6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” d343 3 a345 2
    6.12. What does “Could not find d348 3 a350 2
    6.13. Using 'sudo' with pkgsrc
    d387 3 a389 2
    7.4. Other mandatory files
    d395 1 a395 1
    7.6. d398 1 a398 1
    7.7. d429 1 a429 1 "#id2628274">8.2.1. Adding things to a d433 3 a435 2 "#id2628283">8.2.2. Converting an internal list into an external list
    d438 2 a439 2 "#id2628305">8.2.3. Passing variables to a shell command d442 1 a442 1 "#id2628426">8.2.4. Quoting d446 2 a447 2 "#id2628677">8.2.5. Workaround for a bug in BSD Make d458 2 a459 2
    9.1. RCS ID
    d461 3 a463 2
    9.2. Semi-automatic PLIST d474 2 a475 1
    9.5. d478 3 a480 2
    9.6. Changing PLIST source with 9.7. Platform specific and differing PLISTs
    d498 3 a500 3
    10.1. Converting packages to use buildlink3
    d502 3 a504 2
    10.2. Writing buildlink3.mk d510 2 a511 2 "#id2629794">10.2.1. Anatomy of a buildlink3.mk file
    d514 2 a515 1 "#id2630166">10.2.2. Updating 10.3. Writing builtin.mk files d530 2 a531 2 "#id2630394">10.3.1. Anatomy of a builtin.mk d535 3 a537 2 "#id2630621">10.3.2. Global preferences for native or pkgsrc software d548 3 a550 2
    11.1. Global default options
    d552 3 a554 2
    11.2. Converting packages to use 12.2. Main targets
    d582 3 a584 2
    13.1. General operation
    d589 3 a591 2 "#id2632838">13.1.1. How to pull in variables from /etc/mk.conf d594 1 a594 1 "#id2632921">13.1.2. Restricted d602 1 a602 1 "#id2633374">13.1.4. Handling conflicts with d606 2 a607 2 "#id2633493">13.1.5. Packages that cannot or should not be built d610 3 a612 2 "#id2633518">13.1.6. Packages which should not be deleted, once installed d619 1 a619 1 "#id2633678">13.1.8. How to handle compiler d623 2 a624 2 "#id2633701">13.1.9. How to handle incrementing versions when fixing an existing d628 2 a629 2 "#id2633818">13.1.10. Portability of packages d633 3 a635 2
    13.2. Possible downloading issues
    d640 2 a641 2 "#id2633846">13.2.1. Packages whose distfiles aren't available for plain d645 3 a647 2 "#id2633909">13.2.2. How to handle modified distfiles with the 'old' name d651 3 a653 2
    13.3. Configuration gotchas
    d662 1 a662 1 "#id2634286">13.3.2. Using libtool on GNU d667 1 a667 1 "#id2634504">13.3.3. GNU d672 3 a674 2
    13.4. Building considerations
    d679 1 a679 1 "#id2634620">13.4.1. CPP d684 3 a686 2
    13.5. Package specific actions
    d691 2 a692 2 "#id2634653">13.5.1. Package configuration files d695 1 a695 1 "#id2634756">13.5.2. User d699 1 a699 1 "#id2634801">13.5.3. Handling d703 2 a704 2 "#id2634884">13.5.4. Creating an account from a package d707 2 a708 2 "#id2635014">13.5.5. Installing score files d711 2 a712 2 "#id2635058">13.5.6. Packages providing login shells d715 2 a716 2 "#id2635115">13.5.7. Packages containing perl scripts d719 3 a721 2 "#id2635133">13.5.8. Packages with hardcoded paths to other interpreters d724 2 a725 2 "#id2635155">13.5.9. Packages installing perl modules d732 2 a733 2 "#id2635511">13.5.11. Packages installing GConf2 data files d736 3 a738 2 "#id2635680">13.5.12. Packages installing scrollkeeper data files d741 1 a741 1 "#id2635731">13.5.13. Packages installing X11 d745 2 a746 2 "#id2635778">13.5.14. Packages installing GTK2 modules d749 2 a750 2 "#id2635847">13.5.15. Packages installing SGML or XML data d753 1 a753 1 "#id2635899">13.5.16. Packages installing d757 1 a757 1 "#id2636038">13.5.17. Packages using d761 1 a761 1 "#id2636052">13.5.18. Packages installing d766 3 a768 2
    13.6. Feedback to the author
    d780 3 a782 2
    15.1. Submitting your packages
    d784 3 a786 3
    15.2. Committing: Importing a package into CVS
    d788 3 a790 3
    15.3. Updating a package to a newer version
    d792 3 a794 2
    15.4. Moving a package in pkgsrc
    d805 1 a805 1
    A.1. d810 2 a811 2
    A.1.1. Makefile
    d813 2 a814 2
    A.1.2. DESCR
    d816 2 a817 2
    A.1.3. PLIST
    d819 3 a821 2
    A.1.4. Checking a package with A.2. Steps for building, installing, packaging
    d853 1 a853 1
    D.1. d856 1 a856 1
    D.2. d877 2 a878 2
    1.1. Introduction
    d896 2 a897 2 "id2568707" id= "id2568707">1.1. Introduction

    d1207 2 a1208 2
    2.1. As tar file
    d1210 1 a1210 1
    2.2. Via d1213 1 a1213 1
    2.3. Via d1223 3 a1225 2
    3.1. Bootstrapping pkgsrc
    d1227 3 a1229 2
    3.2. Platform specific notes
    d1233 2 a1234 3
    3.2.1. Darwin (Mac OS X)
    d1236 2 a1237 2
    3.2.2. FreeBSD
    d1239 2 a1240 2
    3.2.3. Interix
    d1242 2 a1243 2
    3.2.4. IRIX
    d1245 2 a1246 2
    3.2.5. Linux
    d1248 2 a1249 2
    3.2.6. OpenBSD
    d1251 2 a1252 2
    3.2.7. Solaris
    d1270 2 a1271 2 "#id2571164">4.1.1. Where to get binary packages d1274 2 a1275 2 "#id2571218">4.1.2. How to use binary packages d1278 1 a1278 1 "#id2571392">4.1.3. A word of d1283 3 a1285 2
    4.2. Building packages from source
    d1290 2 a1291 1 "#id2571960">4.2.1. Requirements d1294 1 a1294 1 "#id2571980">4.2.2. Fetching d1298 2 a1299 2 "#id2572094">4.2.3. How to build and install d1302 1 a1302 1 "#id2623825">4.2.4. Selecting the d1314 3 a1316 2
    5.1. Building a single binary package
    d1318 2 a1319 1
    5.2. d1333 2 a1334 1 "#id2624204">5.3.2. Other environmental d1338 1 a1338 1 "#id2624245">5.3.3. Operation
    d1341 2 a1342 1 "#id2624382">5.3.4. What it does d1345 1 a1345 1 "#id2624439">5.3.5. Disk space d1349 2 a1350 2 "#id2624466">5.3.6. Setting up a sandbox for chroot'ed builds d1353 2 a1354 2 "#id2624926">5.3.7. Building a partial set of packages d1362 3 a1364 3
    5.4. Creating a multiple CD-ROM packages collection
    d1369 1 a1369 1 "#id2625398">5.4.1. Example of d1381 3 a1383 3
    6.1. Are there any mailing lists for pkg-related discussion?
    d1385 1 a1385 1
    6.2. d1392 3 a1394 2
    6.4. How to use pkgsrc as non-root
    d1396 3 a1398 3
    6.5. How to resume transfers when fetching distfiles?
    d1400 3 a1402 3
    6.6. How can I install/use XFree86 from pkgsrc?
    d1404 3 a1406 2
    6.7. How can I install/use X.org from pkgsrc?
    d1408 3 a1410 2
    6.8. How to fetch files from behind a firewall
    d1412 2 a1413 2
    6.9. How do I tell make d1417 3 a1419 2
    6.10. How to fetch all distfiles at once
    d1421 4 a1424 3
    6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” d1427 3 a1429 2
    6.12. What does “Could not find d1432 3 a1434 2
    6.13. Using 'sudo' with pkgsrc
    d1463 1 a1463 1
    2.1. As d1466 1 a1466 1
    2.2. Via d1469 1 a1469 1
    2.3. Via d1483 1 a1483 1 "id2569429" id="id2569429">2.1. As tar d1501 1 a1501 2 "id2569445" id="id2569445">2.2. Via SUP

    d1526 1 a1526 2 "id2569477" id="id2569477">2.3. Via CVS

    d1581 3 a1583 2
    3.1. Bootstrapping pkgsrc
    d1585 3 a1587 2
    3.2. Platform specific notes
    d1591 1 a1591 1
    3.2.1. d1594 1 a1594 1
    3.2.2. d1597 1 a1597 1
    3.2.3. d1600 1 a1600 1
    3.2.4. d1603 1 a1603 1
    3.2.5. d1606 1 a1606 1
    3.2.6. d1609 1 a1609 1
    3.2.7. d1621 3 a1623 2 "id2569587" id= "id2569587">3.1. Bootstrapping pkgsrc

    d1713 2 a1714 1 "id2569768" id="id2569768">3.2. Platform d1727 2 a1728 3

    3.2.1. Darwin (Mac OS X)

    d1859 2 a1860 2

    3.2.2. FreeBSD

    d1916 2 a1917 2

    3.2.3. Interix

    d2098 2 a2099 2

    3.2.4. IRIX

    d2179 2 a2180 2

    3.2.5. Linux

    d2257 2 a2258 2

    3.2.6. OpenBSD

    d2324 2 a2325 2

    3.2.7. Solaris

    d2369 3 a2371 3

    3.2.7.1. If you are using gcc

    d2399 4 a2402 3

    3.2.7.2. If you are using Sun WorkShop

    d2478 3 a2480 2
    4.1.1. Where to get binary packages
    d2482 3 a2484 2
    4.1.2. How to use binary packages
    d2486 3 a2488 2
    4.1.3. A word of warning
    d2492 3 a2494 2
    4.2. Building packages from source
    d2498 2 a2499 2
    4.2.1. Requirements
    d2501 3 a2503 2
    4.2.2. Fetching distfiles
    d2505 3 a2507 2
    4.2.3. How to build and install
    d2509 3 a2511 2
    4.2.4. Selecting the compiler
    d2537 4 a2540 3

    4.1.1. Where to get binary packages

    d2573 4 a2576 3

    4.1.2. How to use binary packages

    d2641 2 a2642 2

    4.1.3. A word of d2665 2 a2666 1 "id2571949" id="id2571949">4.2. Building d2682 2 a2683 2

    4.2.1. Requirements

    d2702 2 a2703 2

    4.2.2. Fetching d2741 4 a2744 3

    4.2.3. How to build and install

    d2911 4 a2914 3

    4.2.4. Selecting the compiler

    d3013 3 a3015 2
    5.1. Building a single binary package
    d3017 2 a3018 1
    5.2. d3031 3 a3033 2
    5.3.2. Other environmental considerations
    d3035 1 a3035 1
    5.3.3. d3038 2 a3039 2
    5.3.4. What it does
    d3041 3 a3043 2
    5.3.5. Disk space requirements
    d3045 3 a3047 3
    5.3.6. Setting up a sandbox for chroot'ed builds
    d3049 3 a3051 2
    5.3.7. Building a partial set of packages
    d3059 1 a3059 1
    5.4. d3065 3 a3067 2
    5.4.1. Example of cdpack
    d3078 3 a3080 2 "id2623979" id="id2623979">5.1. Building a single binary package

    d3133 2 a3134 1 "id2624057" id="id2624057">5.2. Settings d3216 2 a3217 2

    5.3.1.2. 5.3.1.3. pre-build.local

    d3277 4 a3280 3

    5.3.2. Other environmental considerations

    d3320 2 a3321 2

    5.3.3. Operation

    d3367 2 a3368 2

    5.3.4. What it does

    d3426 4 a3429 3

    5.3.5. Disk space requirements

    d3470 3 a3472 3

    5.3.6. Setting up a sandbox for chroot'ed builds

    d3660 4 a3663 3

    5.3.7. Building a partial set of packages

    d3855 3 a3857 2 "id2625383" id="id2625383">5.4. Creating a multiple CD-ROM packages collection

    d3879 2 a3880 2

    5.4.1. Example of d3953 3 a3955 3
    6.1. Are there any mailing lists for pkg-related discussion?
    d3957 1 a3957 1
    6.2. d3964 2 a3965 2
    6.4. How to use pkgsrc as non-root
    d3967 3 a3969 3
    6.5. How to resume transfers when fetching distfiles?
    d3971 3 a3973 2
    6.6. How can I install/use XFree86 from pkgsrc?
    d3975 3 a3977 2
    6.7. How can I install/use X.org from pkgsrc?
    d3979 3 a3981 2
    6.8. How to fetch files from behind a firewall
    d3983 1 a3983 1
    6.9. How d3988 3 a3990 2
    6.10. How to fetch all distfiles at once
    d3992 3 a3994 2
    6.11. What does “Don't know how to make d3998 3 a4000 2
    6.12. What does “Could not find d4003 3 a4005 2
    6.13. Using 'sudo' with pkgsrc
    d4026 3 a4028 2 "id2625590" id="id2625590">6.1. Are there any mailing lists for pkg-related discussion?

    d4086 3 a4088 2 "id2625724" id="id2625724">6.2. Where's the pkgviews documentation?

    d4346 3 a4348 2 "id2625987" id="id2625987">6.4. How to use pkgsrc as non-root

    d4365 3 a4367 2 "id2625998" id="id2625998">6.5. How to resume transfers when fetching distfiles?

    d4407 2 a4408 1 "id2626049" id="id2626049">6.6. How can I d4431 2 a4432 1 "id2626076" id="id2626076">6.7. How can I d4455 3 a4457 2 "id2626104" id="id2626104">6.8. How to fetch files from behind a firewall

    d4481 2 a4482 2 "id2626118" id="id2626118">6.9. How do I tell make d4515 2 a4516 1 "id2626169" id="id2626169">6.10. How to d4589 2 a4590 1 "id2626453" id="id2626453">6.11. What does d4622 2 a4623 1 "id2626491" id="id2626491">6.12. What does d4652 2 a4653 1 "id2626549" id="id2626549">6.13. Using d4918 3 a4920 2
    7.4. Other mandatory files
    d4926 1 a4926 1
    7.6. d4929 1 a4929 1
    7.7. d4958 1 a4958 1 "#id2628274">8.2.1. Adding things to a d4962 3 a4964 2 "#id2628283">8.2.2. Converting an internal list into an external list
    d4967 2 a4968 2 "#id2628305">8.2.3. Passing variables to a shell command
    d4971 1 a4971 1 "#id2628426">8.2.4. Quoting d4975 2 a4976 2 "#id2628677">8.2.5. Workaround for a bug in BSD Make d4987 1 a4987 1
    9.1. RCS d4990 3 a4992 2
    9.2. Semi-automatic PLIST d5002 2 a5003 1
    9.5. d5006 3 a5008 2
    9.6. Changing PLIST source with 9.7. Platform specific and differing PLISTs
    d5026 3 a5028 2
    10.1. Converting packages to use buildlink3
    d5030 3 a5032 3
    10.2. Writing buildlink3.mk files
    d5037 2 a5038 2 "#id2629794">10.2.1. Anatomy of a buildlink3.mk file d5041 5 a5045 4 "#id2630166">10.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d5050 3 a5052 3
    10.3. Writing builtin.mk files
    d5057 3 a5059 2 "#id2630394">10.3.1. Anatomy of a builtin.mk file d5062 3 a5064 2 "#id2630621">10.3.2. Global preferences for native or pkgsrc software d5075 3 a5077 2
    11.1. Global default options
    d5079 3 a5081 2
    11.2. Converting packages to use 12.2. d5108 3 a5110 2
    13.1. General operation
    d5115 3 a5117 2 "#id2632838">13.1.1. How to pull in variables from /etc/mk.conf d5120 1 a5120 1 "#id2632921">13.1.2. Restricted d5128 1 a5128 1 "#id2633374">13.1.4. Handling conflicts with d5132 2 a5133 2 "#id2633493">13.1.5. Packages that cannot or should not be built d5136 3 a5138 2 "#id2633518">13.1.6. Packages which should not be deleted, once installed d5145 1 a5145 1 "#id2633678">13.1.8. How to handle compiler d5149 2 a5150 2 "#id2633701">13.1.9. How to handle incrementing versions when fixing an existing d5154 2 a5155 2 "#id2633818">13.1.10. Portability of packages d5159 3 a5161 2
    13.2. Possible downloading issues
    d5166 2 a5167 2 "#id2633846">13.2.1. Packages whose distfiles aren't available for plain d5171 3 a5173 2 "#id2633909">13.2.2. How to handle modified distfiles with the 'old' name d5177 3 a5179 2
    13.3. Configuration gotchas
    d5188 1 a5188 1 "#id2634286">13.3.2. Using libtool on GNU d5193 1 a5193 1 "#id2634504">13.3.3. GNU d5198 3 a5200 2
    13.4. Building considerations
    d5205 2 a5206 1 "#id2634620">13.4.1. CPP defines d5210 3 a5212 2
    13.5. Package specific actions
    d5217 2 a5218 2 "#id2634653">13.5.1. Package configuration files d5221 1 a5221 1 "#id2634756">13.5.2. User d5225 1 a5225 1 "#id2634801">13.5.3. Handling d5229 2 a5230 2 "#id2634884">13.5.4. Creating an account from a package d5233 2 a5234 2 "#id2635014">13.5.5. Installing score files d5237 1 a5237 1 "#id2635058">13.5.6. Packages providing login d5241 1 a5241 1 "#id2635115">13.5.7. Packages containing perl d5245 3 a5247 2 "#id2635133">13.5.8. Packages with hardcoded paths to other interpreters d5250 1 a5250 1 "#id2635155">13.5.9. Packages installing perl d5258 2 a5259 2 "#id2635511">13.5.11. Packages installing GConf2 data files d5262 3 a5264 2 "#id2635680">13.5.12. Packages installing scrollkeeper data files d5267 1 a5267 1 "#id2635731">13.5.13. Packages installing X11 d5271 1 a5271 1 "#id2635778">13.5.14. Packages installing GTK2 d5275 2 a5276 2 "#id2635847">13.5.15. Packages installing SGML or XML data d5279 1 a5279 1 "#id2635899">13.5.16. Packages installing d5283 1 a5283 1 "#id2636038">13.5.17. Packages using d5287 2 a5288 2 "#id2636052">13.5.18. Packages installing startup scripts d5292 3 a5294 2
    13.6. Feedback to the author
    d5306 3 a5308 2
    15.1. Submitting your packages
    d5310 3 a5312 3
    15.2. Committing: Importing a package into CVS
    d5314 3 a5316 2
    15.3. Updating a package to a newer version
    d5318 3 a5320 2
    15.4. Moving a package in pkgsrc
    d5352 3 a5354 2
    7.4. Other mandatory files
    d5360 1 a5360 1
    7.6. d5363 1 a5363 1
    7.7. d5753 2 a5754 1 "id2627632" id="id2627632">7.4. Other d5878 1 a5878 2 "id2627757" id= "id2627757">7.6. 7.7. 8.2.1. Adding things to a list
    d5993 2 a5994 1
    8.2.2. d5998 3 a6000 3
    8.2.3. Passing variables to a shell command
    d6002 3 a6004 2
    8.2.4. Quoting guideline
    d6006 3 a6008 2
    8.2.5. Workaround for a bug in BSD Make
    d6204 3 a6206 3

    8.2.1. Adding things to a list

    d6235 4 a6238 3

    8.2.2. Converting an internal list into an external list

    d6262 4 a6265 3

    8.2.3. Passing variables to a shell command

    d6326 2 a6327 2

    8.2.4. Quoting d6453 4 a6456 3

    8.2.5. Workaround for a bug in BSD Make

    d6495 1 a6495 1
    9.1. RCS d6498 3 a6500 2
    9.2. Semi-automatic PLIST d6510 2 a6511 1
    9.5. d6514 1 a6514 1
    9.6. d6518 3 a6520 2
    9.7. Platform specific and differing PLISTs
    d6545 1 a6545 2 "id2628738" id="id2628738">9.1. RCS ID

    d6562 2 a6563 2 "id2628753" id= "id2628753">9.2. Semi-automatic d6757 2 a6758 2 "id2629074" id= "id2629074">9.5. Manpage-compression

    d6782 3 a6784 2 "id2629115" id="id2629115">9.6. Changing PLIST source with 9.7. Platform d6952 3 a6954 2
    10.1. Converting packages to use buildlink3
    d6956 3 a6958 3
    10.2. Writing buildlink3.mk files
    d6963 2 a6964 2 "#id2629794">10.2.1. Anatomy of a buildlink3.mk file d6967 2 a6968 2 "#id2630166">10.2.2. Updating BUILDLINK_DEPENDS.10.3. Writing builtin.mk files d6982 3 a6984 2 "#id2630394">10.3.1. Anatomy of a builtin.mk file d6987 3 a6989 2 "#id2630621">10.3.2. Global preferences for native or pkgsrc software d7038 3 a7040 3 "id2629406" id= "id2629406">10.1. Converting packages to use buildlink3

    d7184 2 a7185 1 "id2629724" id="id2629724">10.2. Writing d7225 2 a7226 2

    10.2.1. Anatomy of a d7456 7 a7462 6

    10.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk files

    d7527 2 a7528 1 "id2630245" id="id2630245">10.3. Writing d7580 4 a7583 3

    10.3.1. Anatomy of a builtin.mk d7707 4 a7710 3

    10.3.2. Global preferences for native or pkgsrc software

    d7767 3 a7769 2
    11.1. Global default options
    d7771 3 a7773 2
    11.2. Converting packages to use 11.1. Global d7811 3 a7813 3 "id2630777" id= "id2630777">11.2. Converting packages to use 12.2. Main targets
    d8169 2 a8170 2 "id2631338" id="id2631338">12.2. Main targets

    d8948 3 a8950 2
    13.1. General operation
    d8955 2 a8956 2 "#id2632838">13.1.1. How to pull in variables from /etc/mk.conf d8959 1 a8959 1 "#id2632921">13.1.2. Restricted d8967 1 a8967 1 "#id2633374">13.1.4. Handling conflicts with other d8971 2 a8972 2 "#id2633493">13.1.5. Packages that cannot or should not be built d8975 3 a8977 2 "#id2633518">13.1.6. Packages which should not be deleted, once installed d8984 1 a8984 1 "#id2633678">13.1.8. How to handle compiler d8988 2 a8989 2 "#id2633701">13.1.9. How to handle incrementing versions when fixing an existing d8993 1 a8993 1 "#id2633818">13.1.10. Portability of d8998 3 a9000 2
    13.2. Possible downloading issues
    d9005 2 a9006 2 "#id2633846">13.2.1. Packages whose distfiles aren't available for plain d9010 3 a9012 2 "#id2633909">13.2.2. How to handle modified distfiles with the 'old' name d9016 3 a9018 2
    13.3. Configuration gotchas
    d9027 3 a9029 2 "#id2634286">13.3.2. Using libtool on GNU packages that already support libtool d9032 1 a9032 1 "#id2634504">13.3.3. GNU d9037 3 a9039 2
    13.4. Building considerations
    d9044 1 a9044 1 "#id2634620">13.4.1. CPP defines d9048 3 a9050 2
    13.5. Package specific actions
    d9055 2 a9056 2 "#id2634653">13.5.1. Package configuration files d9059 1 a9059 1 "#id2634756">13.5.2. User d9063 1 a9063 1 "#id2634801">13.5.3. Handling d9067 2 a9068 2 "#id2634884">13.5.4. Creating an account from a package d9071 1 a9071 1 "#id2635014">13.5.5. Installing score d9075 1 a9075 1 "#id2635058">13.5.6. Packages providing login d9079 1 a9079 1 "#id2635115">13.5.7. Packages containing perl d9083 2 a9084 2 "#id2635133">13.5.8. Packages with hardcoded paths to other interpreters d9087 1 a9087 1 "#id2635155">13.5.9. Packages installing perl d9095 2 a9096 2 "#id2635511">13.5.11. Packages installing GConf2 data files d9099 2 a9100 2 "#id2635680">13.5.12. Packages installing scrollkeeper data files d9103 1 a9103 1 "#id2635731">13.5.13. Packages installing X11 d9107 1 a9107 1 "#id2635778">13.5.14. Packages installing GTK2 d9111 2 a9112 2 "#id2635847">13.5.15. Packages installing SGML or XML data d9115 1 a9115 1 "#id2635899">13.5.16. Packages installing d9119 1 a9119 1 "#id2636038">13.5.17. Packages using d9123 2 a9124 2 "#id2636052">13.5.18. Packages installing startup scripts d9128 3 a9130 2
    13.6. Feedback to the author
    d9139 2 a9140 1 "id2632835" id="id2632835">13.1. General d9150 4 a9153 3

    13.1.1. How to pull in variables from /etc/mk.conf

    d9212 3 a9214 2

    13.1.2. Restricted d9521 2 a9522 2

    13.1.4. Handling conflicts d9569 4 a9572 3

    13.1.5. Packages that cannot or should not be built

    d9602 4 a9605 3

    13.1.6. Packages which should not be deleted, once installed

    d9667 2 a9668 2

    13.1.8. How to handle d9693 4 a9696 4

    13.1.9. How to handle incrementing versions when fixing an existing package

    d9734 4 a9737 3

    13.1.10. Portability of packages

    d9752 2 a9753 2

    13.1.10.1. ${INSTALL}, d9778 2 a9779 1 "id2633843" id="id2633843">13.2. Possible d9789 3 a9791 3

    13.2.1. Packages whose distfiles aren't available for plain d9851 5 a9855 3

    13.2.2. How to handle modified distfiles with the 'old' name

    d9883 2 a9884 2 "id2633921" id= "id2633921">13.3. Configuration d10103 3 a10105 3

    13.3.2. Using libtool on GNU packages that already support libtool

    d10182 2 a10183 2

    13.3.3. GNU d10249 2 a10250 1 "id2634617" id="id2634617">13.4. Building d10260 2 a10261 2

    13.4.1. CPP defines

    d10300 2 a10301 1 "id2634650" id="id2634650">13.5. Package d10311 3 a10313 2

    13.5.1. Package d10385 2 a10386 2

    13.5.2. User d10435 2 a10436 2

    13.5.3. Handling d10510 3 a10512 3

    13.5.4. Creating an account from a package

    d10565 4 a10568 3

    13.5.5. Installing score files

    d10604 3 a10606 3

    13.5.6. Packages providing login shells

    d10640 3 a10642 3

    13.5.7. Packages containing perl scripts

    d10659 2 a10660 2

    13.5.8. Packages with d10686 3 a10688 3

    13.5.9. Packages installing perl modules

    d10826 3 a10828 3

    13.5.11. Packages installing GConf2 data files

    d10901 4 a10904 3

    13.5.12. Packages installing scrollkeeper data files

    d10947 2 a10948 2

    13.5.13. Packages installing d10985 3 a10987 3

    13.5.14. Packages installing GTK2 modules

    d11052 3 a11054 3

    13.5.15. Packages installing SGML or XML data

    d11114 3 a11116 3

    13.5.16. Packages installing extensions to the MIME database

    d11173 2 a11174 2

    13.5.17. Packages using d11197 3 a11199 3

    13.5.18. Packages installing startup scripts

    d11221 3 a11223 2 "id2636073" id="id2636073">13.6. Feedback to the author

    d11458 3 a11460 2
    15.1. Submitting your packages
    d11462 3 a11464 3
    15.2. Committing: Importing a package into CVS
    d11466 3 a11468 2
    15.3. Updating a package to a newer version
    d11470 1 a11470 1
    15.4. d11480 3 a11482 3 "id2636740" id= "id2636740">15.1. Submitting your packages

    d11550 3 a11552 3 "id2636797" id= "id2636797">15.2. Committing: Importing a package into CVS

    d11607 3 a11609 2 "id2636860" id="id2636860">15.3. Updating a package to a newer version

    d11659 3 a11661 2 "id2636880" id="id2636880">15.4. Moving a package in pkgsrc

    d11761 1 a11761 1
    A.1. d11766 2 a11767 2
    A.1.1. Makefile
    d11769 2 a11770 2
    A.1.2. DESCR
    d11772 2 a11773 2
    A.1.3. PLIST
    d11775 3 a11777 2
    A.1.4. Checking a package with A.2. Steps for building, installing, packaging
    d11800 2 a11801 1 "id2637037" id="id2637037">A.1. files

    d11810 2 a11811 2

    A.1.1. Makefile

    d11838 2 a11839 2

    A.1.2. DESCR

    d11855 2 a11856 2

    A.1.3. PLIST

    d11873 4 a11876 3

    A.1.4. Checking a package with A.2. Steps for building, installing, packaging

    d12328 1 a12328 1
    D.1. d12331 1 a12331 1
    D.2. d12344 1 a12344 1 "id2637894" id="id2637894">D.1. Targets

    d12395 2 a12396 2 "id2637959" id= "id2637959">D.2. Procedure

    @ 1.28 log @Regenerated. @ text @d8221 2 a8222 2 USE_GNU_TOOLS contains “make”, @ 1.27 log @Updated from the current pkgsrc guide. @ text @d545 1 a545 1
    12.2. d559 1 a559 1
    13.1. d565 1 a565 1 "#id2632837">13.1.1. How to pull in variables d569 1 a569 1 "#id2632920">13.1.2. Restricted d577 1 a577 1 "#id2633373">13.1.4. Handling conflicts with d581 1 a581 1 "#id2633492">13.1.5. Packages that cannot or d585 1 a585 1 "#id2633517">13.1.6. Packages which should not d593 1 a593 1 "#id2633677">13.1.8. How to handle compiler d597 1 a597 1 "#id2633700">13.1.9. How to handle incrementing d602 1 a602 1 "#id2633817">13.1.10. Portability of d607 1 a607 1
    13.2. d613 1 a613 1 "#id2633845">13.2.1. Packages whose distfiles d618 1 a618 1 "#id2633908">13.2.2. How to handle modified d623 1 a623 1
    13.3. d633 1 a633 1 "#id2634285">13.3.2. Using libtool on GNU d638 1 a638 1 "#id2634503">13.3.3. GNU d643 1 a643 1
    13.4. d649 1 a649 1 "#id2634619">13.4.1. CPP d654 1 a654 1
    13.5. d660 1 a660 1 "#id2634652">13.5.1. Package configuration d664 1 a664 1 "#id2634755">13.5.2. User d668 1 a668 1 "#id2634800">13.5.3. Handling d672 1 a672 1 "#id2634951">13.5.4. Creating an account from a d676 1 a676 1 "#id2635013">13.5.5. Installing score d680 1 a680 1 "#id2635057">13.5.6. Packages providing login d684 1 a684 1 "#id2635114">13.5.7. Packages containing perl d688 1 a688 1 "#id2635132">13.5.8. Packages with hardcoded d692 1 a692 1 "#id2635154">13.5.9. Packages installing perl d700 1 a700 1 "#id2635510">13.5.11. Packages installing d704 1 a704 1 "#id2635678">13.5.12. Packages installing d708 1 a708 1 "#id2635730">13.5.13. Packages installing X11 d712 1 a712 1 "#id2635777">13.5.14. Packages installing GTK2 d716 1 a716 1 "#id2635846">13.5.15. Packages installing SGML d720 1 a720 1 "#id2635898">13.5.16. Packages installing d724 1 a724 1 "#id2636037">13.5.17. Packages using d728 1 a728 1 "#id2636051">13.5.18. Packages installing d733 1 a733 1
    13.6. d746 1 a746 1
    15.1. d749 1 a749 1
    15.2. d753 1 a753 1
    15.3. d757 1 a757 1
    15.4. d769 1 a769 1
    A.1. d774 1 a774 1
    A.1.1. d777 1 a777 1
    A.1.2. d780 1 a780 1
    A.1.3. d783 1 a783 1
    A.1.4. d789 1 a789 1
    A.2. Steps d815 1 a815 1
    D.1. d818 1 a818 1
    D.2. d4987 1 a4987 1
    12.2. d5001 1 a5001 1
    13.1. d5007 1 a5007 1 "#id2632837">13.1.1. How to pull in variables d5011 1 a5011 1 "#id2632920">13.1.2. Restricted d5019 1 a5019 1 "#id2633373">13.1.4. Handling conflicts with d5023 1 a5023 1 "#id2633492">13.1.5. Packages that cannot or d5027 1 a5027 1 "#id2633517">13.1.6. Packages which should not be d5035 1 a5035 1 "#id2633677">13.1.8. How to handle compiler d5039 1 a5039 1 "#id2633700">13.1.9. How to handle incrementing d5044 1 a5044 1 "#id2633817">13.1.10. Portability of d5049 1 a5049 1
    13.2. d5055 1 a5055 1 "#id2633845">13.2.1. Packages whose distfiles d5060 1 a5060 1 "#id2633908">13.2.2. How to handle modified d5065 1 a5065 1
    13.3. d5075 1 a5075 1 "#id2634285">13.3.2. Using libtool on GNU d5080 1 a5080 1 "#id2634503">13.3.3. GNU d5085 1 a5085 1
    13.4. d5091 1 a5091 1 "#id2634619">13.4.1. CPP defines
    d5095 1 a5095 1
    13.5. d5101 1 a5101 1 "#id2634652">13.5.1. Package configuration d5105 1 a5105 1 "#id2634755">13.5.2. User d5109 1 a5109 1 "#id2634800">13.5.3. Handling d5113 1 a5113 1 "#id2634951">13.5.4. Creating an account from a d5117 1 a5117 1 "#id2635013">13.5.5. Installing score d5121 1 a5121 1 "#id2635057">13.5.6. Packages providing login d5125 1 a5125 1 "#id2635114">13.5.7. Packages containing perl d5129 1 a5129 1 "#id2635132">13.5.8. Packages with hardcoded d5133 1 a5133 1 "#id2635154">13.5.9. Packages installing perl d5141 1 a5141 1 "#id2635510">13.5.11. Packages installing GConf2 d5145 1 a5145 1 "#id2635678">13.5.12. Packages installing d5149 1 a5149 1 "#id2635730">13.5.13. Packages installing X11 d5153 1 a5153 1 "#id2635777">13.5.14. Packages installing GTK2 d5157 1 a5157 1 "#id2635846">13.5.15. Packages installing SGML or d5161 1 a5161 1 "#id2635898">13.5.16. Packages installing d5165 1 a5165 1 "#id2636037">13.5.17. Packages using d5169 1 a5169 1 "#id2636051">13.5.18. Packages installing startup d5174 1 a5174 1
    13.6. d5187 1 a5187 1
    15.1. d5190 1 a5190 1
    15.2. d5194 1 a5194 1
    15.3. d5197 1 a5197 1
    15.4. d7710 2 a7711 11

    The first section only exists if you are converting a package that had its own ad-hoc options handling to use bsd.options.mk. It converts global or legacy options variables into an equivalent PKG_OPTIONS.pkg value. These sections will be removed over time as the old options are in turn deprecated and removed.

    The second section contains the information about which build options are supported by the package, and any d7757 1 a7757 1 # implies PKG_OPTIONS == "kerberos ldap" d7765 1 a7765 1 # implies PKG_OPTIONS == "kerberos" a7771 2

    a7772 5

    After the inclusion of bsd.options.mk, the following variables are set:

      d7774 10 a7783 4

      PKG_OPTIONS contains the list of the selected build options, properly filtered to remove unsupported and duplicate options.

      d7785 1 a7785 1
    d7788 5 d7822 1 a7822 1
    12.2. Main d8024 1 a8024 1 "id2631337" id="id2631337">12.2. Main d8803 1 a8803 1
    13.1. d8809 1 a8809 1 "#id2632837">13.1.1. How to pull in variables from d8813 1 a8813 1 "#id2632920">13.1.2. Restricted d8821 1 a8821 1 "#id2633373">13.1.4. Handling conflicts with other d8825 1 a8825 1 "#id2633492">13.1.5. Packages that cannot or should d8829 1 a8829 1 "#id2633517">13.1.6. Packages which should not be d8837 1 a8837 1 "#id2633677">13.1.8. How to handle compiler d8841 1 a8841 1 "#id2633700">13.1.9. How to handle incrementing d8846 1 a8846 1 "#id2633817">13.1.10. Portability of d8851 1 a8851 1
    13.2. d8857 1 a8857 1 "#id2633845">13.2.1. Packages whose distfiles d8862 1 a8862 1 "#id2633908">13.2.2. How to handle modified d8867 1 a8867 1
    13.3. d8877 1 a8877 1 "#id2634285">13.3.2. Using libtool on GNU packages d8881 1 a8881 1 "#id2634503">13.3.3. GNU d8886 1 a8886 1
    13.4. d8892 1 a8892 1 "#id2634619">13.4.1. CPP defines
    d8896 1 a8896 1
    13.5. d8902 1 a8902 1 "#id2634652">13.5.1. Package configuration d8906 1 a8906 1 "#id2634755">13.5.2. User d8910 1 a8910 1 "#id2634800">13.5.3. Handling d8914 1 a8914 1 "#id2634951">13.5.4. Creating an account from a d8918 1 a8918 1 "#id2635013">13.5.5. Installing score d8922 1 a8922 1 "#id2635057">13.5.6. Packages providing login d8926 1 a8926 1 "#id2635114">13.5.7. Packages containing perl d8930 1 a8930 1 "#id2635132">13.5.8. Packages with hardcoded paths d8934 1 a8934 1 "#id2635154">13.5.9. Packages installing perl d8942 1 a8942 1 "#id2635510">13.5.11. Packages installing GConf2 d8946 1 a8946 1 "#id2635678">13.5.12. Packages installing d8950 1 a8950 1 "#id2635730">13.5.13. Packages installing X11 d8954 1 a8954 1 "#id2635777">13.5.14. Packages installing GTK2 d8958 1 a8958 1 "#id2635846">13.5.15. Packages installing SGML or d8962 1 a8962 1 "#id2635898">13.5.16. Packages installing d8966 1 a8966 1 "#id2636037">13.5.17. Packages using d8970 1 a8970 1 "#id2636051">13.5.18. Packages installing startup d8975 1 a8975 1
    13.6. d8985 1 a8985 1 "id2632834" id="id2632834">13.1. General d8995 2 a8996 2

    13.1.1. How to pull in d9056 2 a9057 2

    13.1.2. Restricted d9364 2 a9365 2

    13.1.4. Handling conflicts d9412 2 a9413 2

    13.1.5. Packages that cannot d9444 2 a9445 2

    13.1.6. Packages which d9508 2 a9509 2

    13.1.8. How to handle d9534 2 a9535 2

    13.1.9. How to handle d9575 2 a9576 2

    13.1.10. Portability of d9592 2 a9593 2

    13.1.10.1. ${INSTALL}, d9618 1 a9618 1 "id2633842" id="id2633842">13.2. Possible d9628 2 a9629 2

    13.2.1. Packages whose d9690 2 a9691 2

    13.2.2. How to handle d9720 2 a9721 2 "id2633920" id= "id2633920">13.3. Configuration d9940 2 a9941 2

    13.3.2. Using libtool on GNU d10019 2 a10020 2

    13.3.3. GNU d10086 1 a10086 1 "id2634616" id="id2634616">13.4. Building d10096 2 a10097 2

    13.4.1. CPP defines

    d10136 1 a10136 1 "id2634649" id="id2634649">13.5. Package d10146 2 a10147 2

    13.5.1. Package d10219 2 a10220 2

    13.5.2. User d10269 2 a10270 2

    13.5.3. Handling d10344 2 a10345 2

    13.5.4. Creating an account d10399 2 a10400 2

    13.5.5. Installing score d10437 2 a10438 2

    13.5.6. Packages providing d10473 2 a10474 2

    13.5.7. Packages containing d10492 2 a10493 2

    13.5.8. Packages with d10519 2 a10520 2

    13.5.9. Packages installing d10659 2 a10660 2

    13.5.11. Packages installing d10734 2 a10735 2

    13.5.12. Packages installing d10779 2 a10780 2

    13.5.13. Packages installing d10817 2 a10818 2

    13.5.14. Packages installing d10884 2 a10885 2

    13.5.15. Packages installing d10946 2 a10947 2

    13.5.16. Packages installing d11005 2 a11006 2

    13.5.17. Packages using d11029 2 a11030 2

    13.5.18. Packages installing d11053 1 a11053 1 "id2636072" id="id2636072">13.6. Feedback d11289 1 a11289 1
    15.1. d11292 1 a11292 1
    15.2. d11296 1 a11296 1
    15.3. d11299 1 a11299 1
    15.4. d11309 2 a11310 2 "id2636739" id= "id2636739">15.1. Submitting your d11379 2 a11380 2 "id2636796" id= "id2636796">15.2. Committing: Importing a d11436 1 a11436 1 "id2636859" id="id2636859">15.3. Updating d11487 1 a11487 1 "id2636878" id="id2636878">15.4. Moving a d11588 1 a11588 1
    A.1. d11593 1 a11593 1
    A.1.1. d11596 1 a11596 1
    A.1.2. d11599 1 a11599 1
    A.1.3. d11602 1 a11602 1
    A.1.4. d11608 1 a11608 1
    A.2. Steps d11626 1 a11626 1 "id2637036" id="id2637036">A.1. files

    d11635 2 a11636 2

    A.1.1. Makefile

    d11663 2 a11664 2

    A.1.2. DESCR

    d11680 2 a11681 2

    A.1.3. PLIST

    d11698 2 a11699 2

    A.1.4. Checking a package with d11733 1 a11733 1 "id2637110" id="id2637110">A.2. Steps for d12151 1 a12151 1
    D.1. d12154 1 a12154 1
    D.2. d12167 1 a12167 1 "id2637893" id="id2637893">D.1. Targets

    d12218 2 a12219 2 "id2637958" id= "id2637958">D.2. Procedure

    @ 1.26 log @regen. @ text @d22 2 a23 2

    The pkgsrc guide

    d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.5 2005/05/10 00:27:43 rillig Exp $

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2569718">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2569880">3.2.2. FreeBSD
    d152 1 a152 1 "#id2570324">3.2.3. Interix d155 1 a155 1 "#id2570557">3.2.4. IRIX d158 1 a158 1 "#id2570654">3.2.5. Linux d161 1 a161 1 "#id2570723">3.2.6. OpenBSD d164 1 a164 1 "#id2570835">3.2.7. Solaris d182 1 a182 1 "#id2571040">4.1.1. Where to get binary d186 1 a186 1 "#id2571080">4.1.2. How to use binary d190 1 a190 1 "#id2571256">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2571346">4.2.1. d205 1 a205 1 "#id2571366">4.2.2. Fetching d209 1 a209 1 "#id2571828">4.2.3. How to build and d213 1 a213 1 "#id2623831">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2624142">5.3.2. Other environmental d246 1 a246 1 "#id2624183">5.3.3. Operation
    d249 1 a249 1 "#id2624252">5.3.4. What it d253 1 a253 1 "#id2624309">5.3.5. Disk space d257 1 a257 1 "#id2624336">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2624865">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2625336">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d356 35 a390 1
    7. d397 1 a397 1 "#makefile.variables">7.1. 7.2. Code snippets
    d415 1 a415 1 "#id2627035">7.2.1. Adding things to a d419 1 a419 1 "#id2627113">7.2.2. Converting an internal list d423 1 a423 1 "#id2627131">7.2.3. Passing variables to a d425 8 a437 34
    8. Package components - files, directories and contents
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    d443 1 a443 1
    9.1. d446 1 a446 1
    9.2. d458 1 a458 1
    9.5. d461 1 a461 1
    9.6. d465 1 a465 1
    9.7. d480 1 a480 1
    10.1. d484 1 a484 1
    10.2. d491 1 a491 1 "#id2629219">10.2.1. Anatomy of a buildlink3.mk d495 1 a495 1 "#id2629796">10.2.2. Updating 10.3. d510 1 a510 1 "#id2630024">10.3.1. Anatomy of a 10.3.2. Global preferences for d527 1 a527 1
    11.1. d530 1 a530 1
    11.2. d545 1 a545 1
    12.2. d559 1 a559 1
    13.1. d565 1 a565 1 "#id2632461">13.1.1. How to pull in variables d569 1 a569 1 "#id2632545">13.1.2. Restricted d577 1 a577 1 "#id2633066">13.1.4. Handling conflicts with d581 1 a581 1 "#id2633116">13.1.5. Packages that cannot or d585 1 a585 1 "#id2633142">13.1.6. Packages which should not d593 1 a593 1 "#id2633234">13.1.8. How to handle compiler d597 1 a597 1 "#id2633324">13.1.9. How to handle incrementing d602 1 a602 1 "#id2633373">13.1.10. Portability of d607 1 a607 1
    13.2. d613 1 a613 1 "#id2633401">13.2.1. Packages whose distfiles d618 1 a618 1 "#id2633601">13.2.2. How to handle modified d623 1 a623 1
    13.3. d633 1 a633 1 "#id2633978">13.3.2. Using libtool on GNU d638 1 a638 1 "#id2634059">13.3.3. GNU d643 1 a643 1
    13.4. d649 1 a649 1 "#id2634107">13.4.1. CPP d654 1 a654 1
    13.5. d660 1 a660 1 "#id2634140">13.5.1. Package configuration d664 1 a664 1 "#id2634311">13.5.2. User d668 1 a668 1 "#id2634492">13.5.3. Handling d672 1 a672 1 "#id2634644">13.5.4. Creating an account from a d676 1 a676 1 "#id2634706">13.5.5. Installing score d680 1 a680 1 "#id2634749">13.5.6. Packages providing login d684 1 a684 1 "#id2634807">13.5.7. Packages containing perl d688 1 a688 1 "#id2634825">13.5.8. Packages with hardcoded d692 1 a692 1 "#id2634846">13.5.9. Packages installing perl d700 1 a700 1 "#id2635134">13.5.11. Packages installing d704 1 a704 1 "#id2635303">13.5.12. Packages installing d708 1 a708 1 "#id2635354">13.5.13. Packages installing X11 d712 1 a712 1 "#id2635469">13.5.14. Packages installing GTK2 d716 1 a716 1 "#id2635539">13.5.15. Packages installing SGML d720 1 a720 1 "#id2635659">13.5.16. Packages installing d724 1 a724 1 "#id2635730">13.5.17. Packages using d728 1 a728 1 "#id2635744">13.5.18. Packages installing d733 1 a733 1
    13.6. d746 1 a746 1
    15.1. d749 1 a749 1
    15.2. d753 1 a753 1
    15.3. d757 1 a757 1
    15.4. d769 1 a769 1
    A.1. d774 1 a774 1
    A.1.1. d777 1 a777 1
    A.1.2. d780 1 a780 1
    A.1.3. d783 1 a783 1
    A.1.4. d789 1 a789 1
    A.2. Steps d815 1 a815 1
    D.1. d818 1 a818 1
    D.2. d839 1 a839 1
    1.1. d858 2 a859 2 "id2623537" id= "id2623537">1.1. Introduction

    d1068 4 a1071 4 NetBSD operating system and can be bootstrap to run on non-NetBSD operating systems as well. It handles building (compiling), installing, and removing of packages.

    d1145 1 a1145 1 $ for users' shell prompt, d1169 1 a1169 1
    2.1. As d1172 1 a1172 1
    2.2. Via d1175 1 a1175 1
    2.3. Via d1185 1 a1185 1
    3.1. d1188 1 a1188 1
    3.2. d1194 1 a1194 1 "#id2569718">3.2.1. Darwin (Mac OS d1198 1 a1198 1 "#id2569880">3.2.2. FreeBSD
    d1201 1 a1201 1 "#id2570324">3.2.3. Interix d1204 1 a1204 1 "#id2570557">3.2.4. IRIX d1207 1 a1207 1 "#id2570654">3.2.5. Linux d1210 1 a1210 1 "#id2570723">3.2.6. OpenBSD d1213 1 a1213 1 "#id2570835">3.2.7. Solaris d1231 1 a1231 1 "#id2571040">4.1.1. Where to get binary d1235 1 a1235 1 "#id2571080">4.1.2. How to use binary d1239 1 a1239 1 "#id2571256">4.1.3. A word of d1244 1 a1244 1
    4.2. d1250 1 a1250 1 "#id2571346">4.2.1. Requirements
    d1253 1 a1253 1 "#id2571366">4.2.2. Fetching d1257 1 a1257 1 "#id2571828">4.2.3. How to build and d1261 1 a1261 1 "#id2623831">4.2.4. Selecting the d1273 1 a1273 1
    5.1. d1276 1 a1276 1
    5.2. d1290 1 a1290 1 "#id2624142">5.3.2. Other environmental d1294 1 a1294 1 "#id2624183">5.3.3. Operation
    d1297 1 a1297 1 "#id2624252">5.3.4. What it does d1300 1 a1300 1 "#id2624309">5.3.5. Disk space d1304 1 a1304 1 "#id2624336">5.3.6. Setting up a sandbox for d1308 1 a1308 1 "#id2624865">5.3.7. Building a partial set of d1317 1 a1317 1
    5.4. d1324 1 a1324 1 "#id2625336">5.4.1. Example of d1336 1 a1336 1
    6.1. Are d1340 1 a1340 1
    6.2. d1347 1 a1347 1
    6.4. How d1350 1 a1350 1
    6.5. How d1354 1 a1354 1
    6.6. How d1358 1 a1358 1
    6.7. How d1361 1 a1361 1
    6.8. How d1364 1 a1364 1
    6.9. How d1369 1 a1369 1
    6.10. d1372 1 a1372 1
    6.11. d1377 1 a1377 1
    6.12. d1381 1 a1381 1
    6.13. d1411 1 a1411 1
    2.1. As d1414 1 a1414 1
    2.2. Via d1417 1 a1417 1
    2.3. Via d1431 1 a1431 1 "id2569236" id="id2569236">2.1. As tar d1449 1 a1449 1 "id2569252" id="id2569252">2.2. Via d1475 1 a1475 1 "id2569420" id="id2569420">2.3. Via d1483 2 a1484 3 If not present on your system, it can be found as precompiled binary on ftp.NetBSD.org. To do an initial (full) checkout of pkgsrc, do the following steps:

    d1531 1 a1531 1
    3.1. d1534 1 a1534 1
    3.2. d1539 1 a1539 1
    3.2.1. d1542 1 a1542 1
    3.2.2. d1545 1 a1545 1
    3.2.3. d1548 1 a1548 1
    3.2.4. d1551 1 a1551 1
    3.2.5. d1554 1 a1554 1
    3.2.6. d1557 1 a1557 1
    3.2.7. d1569 2 a1570 2 "id2569530" id= "id2569530">3.1. Bootstrapping pkgsrc

    d1575 1 a1575 1

    For Operating Systems other than NetBSD, we provide a d1644 1 a1644 1 directory where pkgsrc will do it's internal bookkeeping. d1646 1 a1646 1 parameters.

    d1660 1 a1660 1 "id2569712" id="id2569712">3.2. Platform d1673 2 a1674 2

    3.2.1. Darwin (Mac OS d1806 2 a1807 2

    3.2.2. FreeBSD

    d1863 2 a1864 2

    3.2.3. Interix

    d2045 2 a2046 2

    3.2.4. IRIX

    d2072 5 a2076 5

    At this point in time, pkgsrc only supports one ABI. That is, you can not switch between the old 32-bit ABI, the new 32-bit ABI and the 64-bit ABI. If you start out using "abi=n32", that's what all your packages will be built with.

    d2098 1 a2098 1 course, your compilers man pages for details.

    d2126 2 a2127 2

    3.2.5. Linux

    d2204 2 a2205 2

    3.2.6. OpenBSD

    d2271 2 a2272 2

    3.2.7. Solaris

    d2316 2 a2317 2

    3.2.7.1. If you are using d2346 2 a2347 2

    3.2.7.2. If you are using d2383 1 a2383 1 CC= cc d2424 1 a2424 1
    4.1.1. d2427 1 a2427 1
    4.1.2. d2430 1 a2430 1
    4.1.3. d2435 1 a2435 1
    4.2. d2440 1 a2440 1
    4.2.1. d2443 1 a2443 1
    4.2.2. d2446 1 a2446 1
    4.2.3. d2449 1 a2449 1
    4.2.4. d2476 2 a2477 2

    4.1.1. Where to get binary d2485 13 a2497 10 "filename">/pub/NetBSD/packages for anonymous FTP access. Please pick the right subdirectory there as indicated by uname -p. In that directory, there is a subdirectory for each category plus a subdirectory All which includes the actual binaries in .tgz files. The category subdirectories use symbolic links to those files (this is the same directory layout as in 4.1.2. How to use binary d2520 1 a2520 1 following command (be sure topkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All/package.tgz d2537 2 a2538 7

    If there is any doubt, the uname utility can be used to determine the <OSvers>, and <arch> by running uname -rp.

    Also note that any prerequisite packages needed to run the package in question will be installed, too, d2562 1 a2562 1 "filename">ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/vulnerable d2568 2 a2569 1 /usr/pkg/bin in your d2578 2 a2579 2

    4.1.3. A word of d2602 1 a2602 1 "id2571336" id="id2571336">4.2. Building d2611 2 a2612 1 “The pkgsrc developer's guide”.

    d2618 2 a2619 2

    4.2.1. Requirements

    d2638 2 a2639 2

    4.2.2. Fetching d2645 3 a2647 6

    The distfile (i.e. the unmodified source) must exist on your system for the packages system to be able to build it. If it does not exist, pkgsrc will use ftp(1) to fetch it d2654 1 a2654 1 some examples - in particular, look for the d2677 2 a2678 2

    4.2.3. How to build and d2846 2 a2847 2

    4.2.4. Selecting the d2947 1 a2947 1
    5.1. d2950 1 a2950 1
    5.2. d2963 1 a2963 1
    5.3.2. d2966 1 a2966 1
    5.3.3. d2969 1 a2969 1
    5.3.4. d2972 1 a2972 1
    5.3.5. d2975 1 a2975 1
    5.3.6. d2979 1 a2979 1
    5.3.7. d2988 1 a2988 1
    5.4. d2994 1 a2994 1
    5.4.1. d3006 1 a3006 1 "id2623917" id="id2623917">5.1. Building a d3060 1 a3060 1 "id2623995" id="id2623995">5.2. Settings d3142 2 a3143 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3245 2 a3246 2

    5.3.3. Operation

    d3292 2 a3293 2

    5.3.4. What it does

    d3351 2 a3352 2

    5.3.5. Disk space d3394 2 a3395 2

    5.3.6. Setting up a sandbox d3584 2 a3585 2

    5.3.7. Building a partial d3778 1 a3778 1 "id2625321" id="id2625321">5.4. Creating a d3801 2 a3802 2

    5.4.1. Example of d3875 1 a3875 1
    6.1. Are d3879 1 a3879 1
    6.2. d3886 1 a3886 1
    6.4. How d3889 1 a3889 1
    6.5. How d3893 1 a3893 1
    6.6. How d3896 1 a3896 1
    6.7. How d3899 1 a3899 1
    6.8. How d3902 1 a3902 1
    6.9. How d3907 1 a3907 1
    6.10. How d3910 1 a3910 1
    6.11. What d3915 1 a3915 1
    6.12. What d3919 1 a3919 1
    6.13. d3941 1 a3941 1 "id2625528" id="id2625528">6.1. Are there d4000 1 a4000 1 "id2625662" id="id2625662">6.2. Where's d4055 1 a4055 1 SHA1 checksums (and other kinds)

    d4062 2 a4063 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d4097 2 a4098 1 used by 'make replace' to save the old package

    d4140 3 a4142 3 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d4158 6 a4163 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d4170 4 a4173 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d4259 1 a4259 1 "id2625984" id="id2625984">6.4. How to use d4277 1 a4277 1 "id2625995" id="id2625995">6.5. How to a4305 1 .if defined(FETCH_CMD) && ${FETCH_CMD} == "wget" a4308 1 .endif d4318 1 a4318 1 "id2626045" id="id2626045">6.6. How can I d4341 1 a4341 1 "id2626073" id="id2626073">6.7. How can I d4364 1 a4364 1 "id2626101" id="id2626101">6.8. How to d4389 1 a4389 1 "id2626115" id="id2626115">6.9. How do I d4423 1 a4423 1 "id2626166" id="id2626166">6.10. How to d4496 1 a4496 1 "id2626313" id="id2626313">6.11. What does d4528 1 a4528 1 "id2626352" id="id2626352">6.12. What does d4557 1 a4557 1 "id2626409" id="id2626409">6.13. Using d4805 33 a4837 1
    7. d4844 1 a4844 1 "#makefile.variables">7.1. 7.2. d4861 1 a4861 1 "#id2627035">7.2.1. Adding things to a d4865 1 a4865 1 "#id2627113">7.2.2. Converting an internal list d4869 1 a4869 1 "#id2627131">7.2.3. Passing variables to a shell d4871 8 a4883 32
    8. Package components - files, directories and contents
    8.1. Makefile
    8.2. distinfo
    8.3. patches/*
    8.4. Other mandatory files
    8.5. Optional files
    8.6. work*
    8.7. files/*
    d4889 1 a4889 1
    9.1. RCS d4892 1 a4892 1
    9.2. d4903 1 a4903 1
    9.5. d4906 1 a4906 1
    9.6. d4910 1 a4910 1
    9.7. d4925 1 a4925 1
    10.1. d4928 1 a4928 1
    10.2. d4935 1 a4935 1 "#id2629219">10.2.1. Anatomy of a buildlink3.mk d4939 1 a4939 1 "#id2629796">10.2.2. Updating 10.3. d4954 1 a4954 1 "#id2630024">10.3.1. Anatomy of a 10.3.2. Global preferences for d4970 1 a4970 1
    11.1. d4973 1 a4973 1
    11.2. d4987 1 a4987 1
    12.2. d5001 1 a5001 1
    13.1. d5007 1 a5007 1 "#id2632461">13.1.1. How to pull in variables d5011 1 a5011 1 "#id2632545">13.1.2. Restricted d5019 1 a5019 1 "#id2633066">13.1.4. Handling conflicts with d5023 1 a5023 1 "#id2633116">13.1.5. Packages that cannot or d5027 1 a5027 1 "#id2633142">13.1.6. Packages which should not be d5035 1 a5035 1 "#id2633234">13.1.8. How to handle compiler d5039 1 a5039 1 "#id2633324">13.1.9. How to handle incrementing d5044 1 a5044 1 "#id2633373">13.1.10. Portability of d5049 1 a5049 1
    13.2. d5055 1 a5055 1 "#id2633401">13.2.1. Packages whose distfiles d5060 1 a5060 1 "#id2633601">13.2.2. How to handle modified d5065 1 a5065 1
    13.3. d5075 1 a5075 1 "#id2633978">13.3.2. Using libtool on GNU d5080 1 a5080 1 "#id2634059">13.3.3. GNU d5085 1 a5085 1
    13.4. d5091 1 a5091 1 "#id2634107">13.4.1. CPP defines
    d5095 1 a5095 1
    13.5. d5101 1 a5101 1 "#id2634140">13.5.1. Package configuration d5105 1 a5105 1 "#id2634311">13.5.2. User d5109 1 a5109 1 "#id2634492">13.5.3. Handling d5113 1 a5113 1 "#id2634644">13.5.4. Creating an account from a d5117 1 a5117 1 "#id2634706">13.5.5. Installing score d5121 1 a5121 1 "#id2634749">13.5.6. Packages providing login d5125 1 a5125 1 "#id2634807">13.5.7. Packages containing perl d5129 1 a5129 1 "#id2634825">13.5.8. Packages with hardcoded d5133 1 a5133 1 "#id2634846">13.5.9. Packages installing perl d5141 1 a5141 1 "#id2635134">13.5.11. Packages installing GConf2 d5145 1 a5145 1 "#id2635303">13.5.12. Packages installing d5149 1 a5149 1 "#id2635354">13.5.13. Packages installing X11 d5153 1 a5153 1 "#id2635469">13.5.14. Packages installing GTK2 d5157 1 a5157 1 "#id2635539">13.5.15. Packages installing SGML or d5161 1 a5161 1 "#id2635659">13.5.16. Packages installing d5165 1 a5165 1 "#id2635730">13.5.17. Packages using d5169 1 a5169 1 "#id2635744">13.5.18. Packages installing startup d5174 1 a5174 1
    13.6. d5187 1 a5187 1
    15.1. d5190 1 a5190 1
    15.2. d5194 1 a5194 1
    15.3. d5197 1 a5197 1
    15.4. d5208 3 a5210 3

    Chapter 7. Programming in Makefiles

    d5220 9 a5228 2 "#makefile.variables">7.1. Makefile variables
    d5230 2 a5231 2
    7.2. Code snippets
    d5233 3 a5235 4
    7.2.1. Adding things to a list
    d5237 2 a5238 3
    7.2.2. Converting an internal list into an external list
    d5240 2 a5241 5
    7.2.3. Passing variables to a shell command
    d5245 3 a5247 31

    WARNING: The make(1) man page is wrong. After the man page has been corrected, this chapter will be updated. Until that, don't take it too serious.

    Pkgsrc consists of many Makefile fragments, each of which forms a well-defined part of the pkgsrc system. Using the make(1) system as a programming language for a big system like pkgsrc requires some discipline to keep the code correct and understandable.

    The basic ingredients for Makefile programming are variables (which are actually macros) and shell commands. Among these shell commands may even be more complex ones like awk(1) programs. To make sure that every shell command runs as intended it is necessary to quote all variables correctly when they are used.

    This chapter describes some patterns, that appear quite often in Makefiles, including the pitfalls that come along with them.

    d5254 3 a5256 3 "makefile.variables" id= "makefile.variables">7.1. Makefile variables

    d5261 9 a5269 7

    A restriction common to all types of variables is that they can neither contain a newline character nor the '\0' character nor the '#' character. The effects of the backslash character are not documented, so you should not use it at the moment. As the $ is used to get values of a Makefile variable, it must be quoted as $$.

    d5271 3 a5273 2

    There are several types of variables that must be handled differently.

    d5278 16 a5293 5

    Simple values (which I will call atoms) can contain any string, which does not have to be quoted in any way. All other types are somewhat restricted in their possible values.

    d5297 4 a5300 9

    Internal lists are lists that are never exported to any shell command. Their elements are separated by whitespace. Therefore the elements themselves cannot have embedded whitespace. Any other characters are allowed. Internal lists can be used in .for loops. Examples are DEPENDS, BUILD_DEPENDS.

    d5304 3 a5306 8

    External lists are lists that may be exported to a shell command. Their elements can contain any characters, including whitespace. That's why they cannot be used in .for loops. Examples are DISTFILES and MASTER_SITES.

    a5309 1

    d5311 2 a5312 10

    7.2. Code snippets

    d5314 8 a5321 4

    This section presents you with some code snippets you should use in your own code. If you don't find anything appropriate here, you should test your code and add it here.

    d5323 3 a5325 238

    7.2.1. Adding things to a list

    ATOM=                   foo * bar `date`
    INT_LIST=               # empty
    ANOTHER_INT_LIST=       apache-[0-9]*:../../www/apache
    EXT_LIST=               # empty
    ANOTHER_EXT_LIST=       a=b c=d
    
    INT_LIST+=              ${ATOM}                 # 1
    INT_LIST+=              ${ANOTHER_INT_LIST}     # 2
    EXT_LIST+=              ${ATOM:Q}               # 3
    EXT_LIST+=              ${ANOTHER_EXT_LIST}     # 4
          
    

    When you add an atom to an external list (example 3), it must be quoted. In all other cases, you must not add a quoting level. You must not merge internal and external lists, unless you are sure that all entries are correctly interpreted in both lists.

    7.2.2. Converting an internal list into an external list

    EXT_LIST=       # empty
    .for i in ${INT_LIST}
    EXT_LIST+=      ${i:Q}
    .endfor
          
    

    This code converts the internal list INT_LIST into the external list EXT_LIST. As the elements of an internal list are unquoted they must be quoted here.

    7.2.3. Passing variables to a shell command

    ATOM=           foo bar <    > * `date` $$HOME ' "
    EXT_LIST=       atom=${ATOM:Q} x=second\ item
    
    all:
            echo ${ATOM}                    # 1
            echo "${ATOM}"                  # 2
            echo "${ATOM:Q}"                # 3
            echo ${ATOM:Q}                  # 4
            echo x${ATOM:Q} | sed 1s,.,,    # 5
            env ${EXT_LIST} /bin/sh -c 'echo "$$atom"; echo "$$x"'
          
    

    Example 1 leads to a syntax error in the shell, as the characters are just copied.

    Example 2 leads to a syntax error too, and if you leave out the last " character from ${ATOM}, date(1) would be executed. The $HOME shell variable would be evaluated, too.

    Example 3 would output each space character preceded by a backslash (or not), depending on the implementation of the echo(1) command.

    Example 4 handles correctly every string that does not start with a dash. In that case, the result depends on the implementation of the echo(1) command. As long as you can guarantee that your input does not start with a dash this form is appropriate.

    Example 5 handles even the case of a leading dash correctly.

    The EXT_LIST does not need to be quoted because the quoting has already be done when adding elements to the list.

    As internal lists shall not be passed to the shell, there is no example for it.

    Chapter 8. Package components - files, directories and contents

    Whenever you're preparing a package, there are a number of files involved which are described in the following sections.

    8.1. Makefile

    Building, installation and creation of a binary package are all controlled by the package's Makefile. The Makefile describes various things about a package, for example from where to get it, how to configure, build, and install it.

    A package Makefile contains several sections that describe the package.

    In the first section there are the following variables, which should appear exactly in the order given here.

    • DISTNAME is the basename of the distribution file to be downloaded from the package's website.

    • PKGNAME is the name of the package, as used by pkgsrc. You only need to provide it if it differs from DISTNAME. Usually it is the directory name together with the version number.

    • CATEGORIES is a list of categories which the package fits in. You can choose any of the top-level directories of pkgsrc for it.

    • MASTER_SITES is a list of URLs where the distribution files can be downloaded. Each URL must end with a slash.

    The second section contains the following variables.

    • MAINTAINER is the mail address of the package's maintainer, which is the person you can contact when the package does not work.

    • HOMEPAGE is a URL where users can find more information about the d5341 2 d5344 2 d5351 1 d5353 1 a5355 1 ${MASTER_SITE_R_CRAN} d5359 2 a5360 1 ${MASTER_SITE_XEMACS} d5477 1 a5477 1 "components.distinfo">8.2. Section 8.3, d5539 1 a5539 1 "components.patches">8.3. patches/*

    d5600 1 a5600 1 "8.2. distinfo">Section 8.2, d5623 506 a6128 1

    d6130 2 a6131 3
    d6133 5 a6137 3

    8.4. Other mandatory files

    d6140 32 a6171 1
    d6173 8 a6180 4
    DESCR
    d6182 2 a6183 8

    A multi-line description of the piece of software. This should include any credits where they are due. Please bear in mind that others do not share your sense of humour (or spelling idiosyncrasies), and that others will read everything that you write here.

    d6185 3 a6187 2
    PLIST
    d6189 2 a6190 11

    This file governs the files that are installed on your system: all the binaries, manual pages, etc. There are other directives which may be entered in this file, to control the creation and deletion of directories, and the location of inserted files. See Chapter 9, PLIST issues for more information.

    a6191 1
    d6193 2 a6194 3
    d6196 5 a6200 4

    8.5. Optional files

    a6202 1
    d6204 3 a6206 4
    INSTALL
    d6208 33 a6240 20

    This shell script is invoked twice by pkg_add(1). First time after package extraction and before files are moved in place, the second time after the files to install are moved in place. This can be used to do any custom procedures not possible with @@exec commands in PLIST. See pkg_add(1) and pkg_create(1) for more information.

    d6242 1 a6242 2
    DEINSTALL
    d6244 6 a6249 16

    This script is executed before and after any files are removed. It is this script's responsibility to clean up any additional messy details around the package's installation, since all pkg_delete knows is how to delete the files created in the original distribution. See pkg_delete(1) and pkg_create(1) for more information.

    d6251 15 a6265 2
    MESSAGE
    d6267 19 a6285 11

    Display this file after installation of the package. Useful for things like legal notices on almost-free software and hints for updating config files after installing modules for apache, PHP etc. Please note that you can modify variables in it easily by using MESSAGE_SUBST in the package's Makefile:

    MESSAGE_SUBST+=  SOMEVAR="somevalue"
    d6288 30
    a6317 5
                    

    replaces "${SOMEVAR}" with “somevalue” in MESSAGE.

    a6318 1
    d6320 2 a6321 3
    d6323 5 a6327 4

    8.6. work*

    a6329 1
    d6331 8 a6338 18

    When you type make the distribution files are unpacked into this directory. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp files.

    If a package doesn't create a subdirectory for itself (like GNU software does, for instance), but extracts itself in the current directory, you should set WRKSRC accordingly, e.g. editors/sam again, but the quick answer is:

    WRKSRC=                ${WRKDIR}
    d6341 6
    a6346 39
              

    Please note that the old NO_WRKSUBDIR has been deprecated and should not be used. Also, if your package doesn't create a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is another one:

    WRKSRC=         ${WRKDIR}/${DISTNAME}/unix
    

    The name of the working directory created by pkgsrc is work by default. If the same pkgsrc tree should be used on several different platforms, the variable OBJMACHINE can be set in /etc/mk.conf to attach the platform to the directory name, e.g. work.i386 or work.sparc.

    8.7. files/*

    a6347 10

    If you have any files that you wish to be placed in the package prior to configuration or building, you could place these files here and use a “${CP}” command in the “pre-configure” target to achieve this. Alternatively, you could simply diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d6365 1 a6365 1
    9.1. RCS d6368 1 a6368 1
    9.2. d6379 1 a6379 1
    9.5. d6382 1 a6382 1
    9.6. d6386 1 a6386 1
    9.7. d6412 1 a6412 1 "id2628231" id="id2628231">9.1. RCS d6430 2 a6431 2 "id2628246" id= "id2628246">9.2. Semi-automatic d6609 1 a6609 1 "8.5. Optional files">Section 8.5, d6625 2 a6626 2 "id2628499" id= "id2628499">9.5. Manpage-compression

    d6650 1 a6650 1 "id2628609" id="id2628609">9.6. Changing d6673 1 a6673 1 "id2628633" id="id2628633">9.7. Platform d6818 1 a6818 1
    10.1. d6821 1 a6821 1
    10.2. d6828 1 a6828 1 "#id2629219">10.2.1. Anatomy of a buildlink3.mk d6832 1 a6832 1 "#id2629796">10.2.2. Updating 10.3. d6847 1 a6847 1 "#id2630024">10.3.1. Anatomy of a 10.3.2. Global preferences for native d6901 2 a6902 2 "id2628968" id= "id2628968">10.1. Converting packages to d6948 1 a6948 1 DEPENDS+= foo>=1.1.0:../../category/foo d7047 1 a7047 1 "id2629149" id="id2629149">10.2. Writing d7087 2 a7088 2

    10.2.1. Anatomy of a d7318 2 a7319 2

    10.2.2. Updating 10.3. Writing d7440 2 a7441 2

    10.3.1. Anatomy of a d7566 2 a7567 2

    10.3.2. Global preferences d7625 1 a7625 1
    11.1. d7628 1 a7628 1
    11.2. d7648 1 a7648 1 "id2630256" id="id2630256">11.1. Global d7666 2 a7667 2 "id2630270" id= "id2630270">11.2. Converting packages to d7675 5 a7679 4 "filename">bsd.options.mk should be used in a package Makefile, or in a file, e.g. options.mk, that is included by the main package make(1) variables that contain the options the user wishes to select. The recommended value is “PKG_OPTIONS.PKG_OPTIONS_VAR) are variables that list the selected build options and override any default options given in 12.2. Main d7875 1 a7875 1 "8.3. patches/*">Section 8.3, d8029 1 a8029 1 "id2631098" id="id2631098">12.2. Main d8156 1 a8156 1 "8.3. patches/*">Section 8.3, d8808 1 a8808 1
    13.1. d8814 1 a8814 1 "#id2632461">13.1.1. How to pull in variables from d8818 1 a8818 1 "#id2632545">13.1.2. Restricted d8826 1 a8826 1 "#id2633066">13.1.4. Handling conflicts with other d8830 1 a8830 1 "#id2633116">13.1.5. Packages that cannot or should d8834 1 a8834 1 "#id2633142">13.1.6. Packages which should not be d8842 1 a8842 1 "#id2633234">13.1.8. How to handle compiler d8846 1 a8846 1 "#id2633324">13.1.9. How to handle incrementing d8851 1 a8851 1 "#id2633373">13.1.10. Portability of d8856 1 a8856 1
    13.2. d8862 1 a8862 1 "#id2633401">13.2.1. Packages whose distfiles d8867 1 a8867 1 "#id2633601">13.2.2. How to handle modified d8872 1 a8872 1
    13.3. d8882 1 a8882 1 "#id2633978">13.3.2. Using libtool on GNU packages d8886 1 a8886 1 "#id2634059">13.3.3. GNU d8891 1 a8891 1
    13.4. d8897 1 a8897 1 "#id2634107">13.4.1. CPP defines
    d8901 1 a8901 1
    13.5. d8907 1 a8907 1 "#id2634140">13.5.1. Package configuration d8911 1 a8911 1 "#id2634311">13.5.2. User d8915 1 a8915 1 "#id2634492">13.5.3. Handling d8919 1 a8919 1 "#id2634644">13.5.4. Creating an account from a d8923 1 a8923 1 "#id2634706">13.5.5. Installing score d8927 1 a8927 1 "#id2634749">13.5.6. Packages providing login d8931 1 a8931 1 "#id2634807">13.5.7. Packages containing perl d8935 1 a8935 1 "#id2634825">13.5.8. Packages with hardcoded paths d8939 1 a8939 1 "#id2634846">13.5.9. Packages installing perl d8947 1 a8947 1 "#id2635134">13.5.11. Packages installing GConf2 d8951 1 a8951 1 "#id2635303">13.5.12. Packages installing d8955 1 a8955 1 "#id2635354">13.5.13. Packages installing X11 d8959 1 a8959 1 "#id2635469">13.5.14. Packages installing GTK2 d8963 1 a8963 1 "#id2635539">13.5.15. Packages installing SGML or d8967 1 a8967 1 "#id2635659">13.5.16. Packages installing d8971 1 a8971 1 "#id2635730">13.5.17. Packages using d8975 1 a8975 1 "#id2635744">13.5.18. Packages installing startup d8980 1 a8980 1
    13.6. d8990 1 a8990 1 "id2632458" id="id2632458">13.1. General d9000 2 a9001 2

    13.1.1. How to pull in d9061 2 a9062 2

    13.1.2. Restricted d9369 2 a9370 2

    13.1.4. Handling conflicts d9417 2 a9418 2

    13.1.5. Packages that cannot d9449 2 a9450 2

    13.1.6. Packages which d9513 2 a9514 2

    13.1.8. How to handle d9539 2 a9540 2

    13.1.9. How to handle d9580 2 a9581 2

    13.1.10. Portability of d9597 2 a9598 2

    13.1.10.1. ${INSTALL}, d9623 1 a9623 1 "id2633398" id="id2633398">13.2. Possible d9633 2 a9634 2

    13.2.1. Packages whose d9695 2 a9696 2

    13.2.2. How to handle d9725 2 a9726 2 "id2633612" id= "id2633612">13.3. Configuration d9945 2 a9946 2

    13.3.2. Using libtool on GNU d10024 2 a10025 2

    13.3.3. GNU d10091 1 a10091 1 "id2634104" id="id2634104">13.4. Building d10101 2 a10102 2

    13.4.1. CPP defines

    d10141 1 a10141 1 "id2634137" id="id2634137">13.5. Package d10151 2 a10152 2

    13.5.1. Package d10224 2 a10225 2

    13.5.2. User d10274 2 a10275 2

    13.5.3. Handling d10349 2 a10350 2

    13.5.4. Creating an account d10404 2 a10405 2

    13.5.5. Installing score d10442 2 a10443 2

    13.5.6. Packages providing d10478 2 a10479 2

    13.5.7. Packages containing d10497 2 a10498 2

    13.5.8. Packages with d10524 2 a10525 2

    13.5.9. Packages installing d10664 2 a10665 2

    13.5.11. Packages installing d10739 2 a10740 2

    13.5.12. Packages installing d10784 2 a10785 2

    13.5.13. Packages installing d10822 2 a10823 2

    13.5.14. Packages installing d10889 2 a10890 2

    13.5.15. Packages installing d10951 2 a10952 2

    13.5.16. Packages installing d11010 2 a11011 2

    13.5.17. Packages using d11034 2 a11035 2

    13.5.18. Packages installing d11058 1 a11058 1 "id2635765" id="id2635765">13.6. Feedback d11181 1 a11181 1 "8.1. Makefile">Section 8.1, d11294 1 a11294 1
    15.1. d11297 1 a11297 1
    15.2. d11301 1 a11301 1
    15.3. d11304 1 a11304 1
    15.4. d11314 2 a11315 2 "id2636227" id= "id2636227">15.1. Submitting your d11384 2 a11385 2 "id2636284" id= "id2636284">15.2. Committing: Importing a d11441 1 a11441 1 "id2636484" id="id2636484">15.3. Updating d11492 1 a11492 1 "id2636503" id="id2636503">15.4. Moving a d11593 1 a11593 1
    A.1. d11598 1 a11598 1
    A.1.1. d11601 1 a11601 1
    A.1.2. d11604 1 a11604 1
    A.1.3. d11607 1 a11607 1
    A.1.4. d11613 1 a11613 1
    A.2. Steps d11631 1 a11631 1 "id2636729" id="id2636729">A.1. files

    d11640 2 a11641 2

    A.1.1. Makefile

    d11668 2 a11669 2

    A.1.2. DESCR

    d11685 2 a11686 2

    A.1.3. PLIST

    d11703 2 a11704 2

    A.1.4. Checking a package with d11738 1 a11738 1 "id2636803" id="id2636803">A.2. Steps for d11760 2 a11761 2 "Chapter 8. Package components - files, directories and contents"> Chapter 8, Package components - files, directories and d12156 1 a12156 1
    D.1. d12159 1 a12159 1
    D.2. d12172 1 a12172 1 "id2637654" id="id2637654">D.1. Targets

    d12223 2 a12224 2 "id2637856" id= "id2637856">D.2. Procedure

    @ 1.25 log @Updated from current pkgsrc guide. @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2569774">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2569937">3.2.2. FreeBSD
    d152 1 a152 1 "#id2570449">3.2.3. Interix

    d155 1 a155 1 "#id2570750">3.2.4. IRIX d158 1 a158 1 "#id2570848">3.2.5. Linux d161 1 a161 1 "#id2570916">3.2.6. OpenBSD d164 1 a164 1 "#id2571028">3.2.7. Solaris d182 1 a182 1 "#id2571164">4.1.1. Where to get binary d186 1 a186 1 "#id2571273">4.1.2. How to use binary d190 1 a190 1 "#id2571381">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2571948">4.2.1. d205 1 a205 1 "#id2571969">4.2.2. Fetching d209 1 a209 1 "#id2572021">4.2.3. How to build and d213 1 a213 1 "#id2623888">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2624199">5.3.2. Other environmental d246 1 a246 1 "#id2624240">5.3.3. Operation
    d249 1 a249 1 "#id2624377">5.3.4. What it d253 1 a253 1 "#id2624434">5.3.5. Disk space d257 1 a257 1 "#id2624460">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2624989">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2625393">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d373 1 a373 1 "#id2627092">7.2.1. Adding things to a d377 1 a377 1 "#id2627101">7.2.2. Converting an internal list d381 1 a381 1 "#id2627188">7.2.3. Passing variables to a d406 1 a406 1
    8.4. d413 1 a413 1
    8.6. d416 1 a416 1
    8.7. d427 1 a427 1
    9.1. d430 1 a430 1
    9.2. d442 1 a442 1
    9.5. d445 1 a445 1
    9.6. d449 1 a449 1
    9.7. d464 1 a464 1
    10.1. d468 1 a468 1
    10.2. d475 1 a475 1 "#id2629344">10.2.1. Anatomy of a buildlink3.mk d479 1 a479 1 "#id2629921">10.2.2. Updating 10.3. d494 1 a494 1 "#id2630081">10.3.1. Anatomy of a 10.3.2. Global preferences for d511 1 a511 1
    11.1. d514 1 a514 1
    11.2. d529 1 a529 1
    12.2. d543 1 a543 1
    13.1. d549 1 a549 1 "#id2632518">13.1.1. How to pull in variables d553 1 a553 1 "#id2632601">13.1.2. Restricted d561 1 a561 1 "#id2633123">13.1.4. Handling conflicts with d565 1 a565 1 "#id2633173">13.1.5. Packages that cannot or d569 1 a569 1 "#id2633198">13.1.6. Packages which should not d577 1 a577 1 "#id2633290">13.1.8. How to handle compiler d581 1 a581 1 "#id2633313">13.1.9. How to handle incrementing d586 1 a586 1 "#id2633362">13.1.10. Portability of d591 1 a591 1
    13.2. d597 1 a597 1 "#id2633389">13.2.1. Packages whose distfiles d602 1 a602 1 "#id2633452">13.2.2. How to handle modified d607 1 a607 1
    13.3. d617 1 a617 1 "#id2634035">13.3.2. Using libtool on GNU d622 1 a622 1 "#id2634184">13.3.3. GNU d627 1 a627 1
    13.4. d633 1 a633 1 "#id2634232">13.4.1. CPP d638 1 a638 1
    13.5. d644 1 a644 1 "#id2634265">13.5.1. Package configuration d648 1 a648 1 "#id2634436">13.5.2. User d652 1 a652 1 "#id2634549">13.5.3. Handling d656 1 a656 1 "#id2634632">13.5.4. Creating an account from a d660 1 a660 1 "#id2634694">13.5.5. Installing score d664 1 a664 1 "#id2634738">13.5.6. Packages providing login d668 1 a668 1 "#id2634795">13.5.7. Packages containing perl d672 1 a672 1 "#id2634813">13.5.8. Packages with hardcoded d676 1 a676 1 "#id2634835">13.5.9. Packages installing perl d684 1 a684 1 "#id2635123">13.5.11. Packages installing d688 1 a688 1 "#id2635360">13.5.12. Packages installing d692 1 a692 1 "#id2635411">13.5.13. Packages installing X11 d696 1 a696 1 "#id2635526">13.5.14. Packages installing GTK2 d700 1 a700 1 "#id2635595">13.5.15. Packages installing SGML d704 1 a704 1 "#id2635648">13.5.16. Packages installing d708 1 a708 1 "#id2635718">13.5.17. Packages using d712 1 a712 1 "#id2635732">13.5.18. Packages installing d717 1 a717 1
    13.6. d730 1 a730 1
    15.1. d733 1 a733 1
    15.2. d737 1 a737 1
    15.3. d741 1 a741 1
    15.4. d753 1 a753 1
    A.1. d758 1 a758 1
    A.1.1. d761 1 a761 1
    A.1.2. d764 1 a764 1
    A.1.3. d767 1 a767 1
    A.1.4. d773 1 a773 1
    A.2. Steps d799 1 a799 1
    D.1. d802 1 a802 1
    D.2. d823 1 a823 1
    1.1. d842 2 a843 2 "id2568707" id= "id2568707">1.1. Introduction

    d1153 1 a1153 1
    2.1. As d1156 1 a1156 1
    2.2. Via d1159 1 a1159 1
    2.3. Via d1169 1 a1169 1
    3.1. d1172 1 a1172 1
    3.2. d1178 1 a1178 1 "#id2569774">3.2.1. Darwin (Mac OS d1182 1 a1182 1 "#id2569937">3.2.2. FreeBSD
    d1185 1 a1185 1 "#id2570449">3.2.3. Interix d1188 1 a1188 1 "#id2570750">3.2.4. IRIX d1191 1 a1191 1 "#id2570848">3.2.5. Linux d1194 1 a1194 1 "#id2570916">3.2.6. OpenBSD d1197 1 a1197 1 "#id2571028">3.2.7. Solaris d1215 1 a1215 1 "#id2571164">4.1.1. Where to get binary d1219 1 a1219 1 "#id2571273">4.1.2. How to use binary d1223 1 a1223 1 "#id2571381">4.1.3. A word of d1228 1 a1228 1
    4.2. d1234 1 a1234 1 "#id2571948">4.2.1. Requirements
    d1237 1 a1237 1 "#id2571969">4.2.2. Fetching d1241 1 a1241 1 "#id2572021">4.2.3. How to build and d1245 1 a1245 1 "#id2623888">4.2.4. Selecting the d1257 1 a1257 1
    5.1. d1260 1 a1260 1
    5.2. d1274 1 a1274 1 "#id2624199">5.3.2. Other environmental d1278 1 a1278 1 "#id2624240">5.3.3. Operation
    d1281 1 a1281 1 "#id2624377">5.3.4. What it does d1284 1 a1284 1 "#id2624434">5.3.5. Disk space d1288 1 a1288 1 "#id2624460">5.3.6. Setting up a sandbox for d1292 1 a1292 1 "#id2624989">5.3.7. Building a partial set of d1301 1 a1301 1
    5.4. d1308 1 a1308 1 "#id2625393">5.4.1. Example of d1320 1 a1320 1
    6.1. Are d1324 1 a1324 1
    6.2. d1331 1 a1331 1
    6.4. How d1334 1 a1334 1
    6.5. How d1338 1 a1338 1
    6.6. How d1342 1 a1342 1
    6.7. How d1345 1 a1345 1
    6.8. How d1348 1 a1348 1
    6.9. How d1353 1 a1353 1
    6.10. d1356 1 a1356 1
    6.11. d1361 1 a1361 1
    6.12. d1365 1 a1365 1
    6.13. d1395 1 a1395 1
    2.1. As d1398 1 a1398 1
    2.2. Via d1401 1 a1401 1
    2.3. Via d1415 1 a1415 1 "id2569429" id="id2569429">2.1. As tar d1433 1 a1433 1 "id2569445" id="id2569445">2.2. Via d1459 1 a1459 1 "id2569477" id="id2569477">2.3. Via d1516 1 a1516 1
    3.1. d1519 1 a1519 1
    3.2. d1524 1 a1524 1
    3.2.1. d1527 1 a1527 1
    3.2.2. d1530 1 a1530 1
    3.2.3. d1533 1 a1533 1
    3.2.4. d1536 1 a1536 1
    3.2.5. d1539 1 a1539 1
    3.2.6. d1542 1 a1542 1
    3.2.7. d1554 2 a1555 2 "id2569587" id= "id2569587">3.1. Bootstrapping pkgsrc

    d1645 1 a1645 1 "id2569768" id="id2569768">3.2. Platform d1658 2 a1659 2

    3.2.1. Darwin (Mac OS d1791 2 a1792 2

    3.2.2. FreeBSD

    d1848 2 a1849 2

    3.2.3. Interix

    d2030 2 a2031 2

    3.2.4. IRIX

    d2111 2 a2112 2

    3.2.5. Linux

    d2189 2 a2190 2

    3.2.6. OpenBSD

    d2256 2 a2257 2

    3.2.7. Solaris

    d2301 2 a2302 2

    3.2.7.1. If you are using d2331 2 a2332 2

    3.2.7.2. If you are using d2409 1 a2409 1
    4.1.1. d2412 1 a2412 1
    4.1.2. d2415 1 a2415 1
    4.1.3. d2420 1 a2420 1
    4.2. d2425 1 a2425 1
    4.2.1. d2428 1 a2428 1
    4.2.2. d2431 1 a2431 1
    4.2.3. d2434 1 a2434 1
    4.2.4. d2461 2 a2462 2

    4.1.1. Where to get binary d2493 2 a2494 2

    4.1.2. How to use binary d2564 2 a2565 2

    4.1.3. A word of d2588 1 a2588 1 "id2571393" id="id2571393">4.2. Building d2603 2 a2604 2

    4.2.1. Requirements

    d2623 2 a2624 2

    4.2.2. Fetching d2665 2 a2666 2

    4.2.3. How to build and d2834 2 a2835 2

    4.2.4. Selecting the d2935 1 a2935 1
    5.1. d2938 1 a2938 1
    5.2. d2951 1 a2951 1
    5.3.2. d2954 1 a2954 1
    5.3.3. d2957 1 a2957 1
    5.3.4. d2960 1 a2960 1
    5.3.5. d2963 1 a2963 1
    5.3.6. d2967 1 a2967 1
    5.3.7. d2976 1 a2976 1
    5.4. d2982 1 a2982 1
    5.4.1. d2994 1 a2994 1 "id2623974" id="id2623974">5.1. Building a d3048 1 a3048 1 "id2624052" id="id2624052">5.2. Settings d3130 2 a3131 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3233 2 a3234 2

    5.3.3. Operation

    d3280 2 a3281 2

    5.3.4. What it does

    d3339 2 a3340 2

    5.3.5. Disk space d3382 2 a3383 2

    5.3.6. Setting up a sandbox d3572 2 a3573 2

    5.3.7. Building a partial d3766 1 a3766 1 "id2625378" id="id2625378">5.4. Creating a d3789 2 a3790 2

    5.4.1. Example of d3863 1 a3863 1
    6.1. Are d3867 1 a3867 1
    6.2. d3874 1 a3874 1
    6.4. How d3877 1 a3877 1
    6.5. How d3881 1 a3881 1
    6.6. How d3884 1 a3884 1
    6.7. How d3887 1 a3887 1
    6.8. How d3890 1 a3890 1
    6.9. How d3895 1 a3895 1
    6.10. How d3898 1 a3898 1
    6.11. What d3903 1 a3903 1
    6.12. What d3907 1 a3907 1
    6.13. d3929 1 a3929 1 "id2625585" id="id2625585">6.1. Are there d3988 1 a3988 1 "id2625787" id="id2625787">6.2. Where's d4243 1 a4243 1 "id2626040" id="id2626040">6.4. How to use d4261 1 a4261 1 "id2626052" id="id2626052">6.5. How to d4304 1 a4304 1 "id2626102" id="id2626102">6.6. How can I d4327 1 a4327 1 "id2626130" id="id2626130">6.7. How can I d4350 1 a4350 1 "id2626157" id="id2626157">6.8. How to d4375 1 a4375 1 "id2626171" id="id2626171">6.9. How do I d4409 1 a4409 1 "id2626222" id="id2626222">6.10. How to d4482 1 a4482 1 "id2626438" id="id2626438">6.11. What does d4514 1 a4514 1 "id2626476" id="id2626476">6.12. What does d4543 1 a4543 1 "id2626534" id="id2626534">6.13. Using d4807 1 a4807 1 "#id2627092">7.2.1. Adding things to a d4811 1 a4811 1 "#id2627101">7.2.2. Converting an internal list d4815 1 a4815 1 "#id2627188">7.2.3. Passing variables to a shell d4839 1 a4839 1
    8.4. d4846 1 a4846 1
    8.6. d4849 1 a4849 1
    8.7. d4859 1 a4859 1
    9.1. RCS d4862 1 a4862 1
    9.2. d4873 1 a4873 1
    9.5. d4876 1 a4876 1
    9.6. d4880 1 a4880 1
    9.7. d4895 1 a4895 1
    10.1. d4898 1 a4898 1
    10.2. d4905 1 a4905 1 "#id2629344">10.2.1. Anatomy of a buildlink3.mk d4909 1 a4909 1 "#id2629921">10.2.2. Updating 10.3. d4924 1 a4924 1 "#id2630081">10.3.1. Anatomy of a 10.3.2. Global preferences for d4940 1 a4940 1
    11.1. d4943 1 a4943 1
    11.2. d4957 1 a4957 1
    12.2. d4971 1 a4971 1
    13.1. d4977 1 a4977 1 "#id2632518">13.1.1. How to pull in variables d4981 1 a4981 1 "#id2632601">13.1.2. Restricted d4989 1 a4989 1 "#id2633123">13.1.4. Handling conflicts with d4993 1 a4993 1 "#id2633173">13.1.5. Packages that cannot or d4997 1 a4997 1 "#id2633198">13.1.6. Packages which should not be d5005 1 a5005 1 "#id2633290">13.1.8. How to handle compiler d5009 1 a5009 1 "#id2633313">13.1.9. How to handle incrementing d5014 1 a5014 1 "#id2633362">13.1.10. Portability of d5019 1 a5019 1
    13.2. d5025 1 a5025 1 "#id2633389">13.2.1. Packages whose distfiles d5030 1 a5030 1 "#id2633452">13.2.2. How to handle modified d5035 1 a5035 1
    13.3. d5045 1 a5045 1 "#id2634035">13.3.2. Using libtool on GNU d5050 1 a5050 1 "#id2634184">13.3.3. GNU d5055 1 a5055 1
    13.4. d5061 1 a5061 1 "#id2634232">13.4.1. CPP defines
    d5065 1 a5065 1
    13.5. d5071 1 a5071 1 "#id2634265">13.5.1. Package configuration d5075 1 a5075 1 "#id2634436">13.5.2. User d5079 1 a5079 1 "#id2634549">13.5.3. Handling d5083 1 a5083 1 "#id2634632">13.5.4. Creating an account from a d5087 1 a5087 1 "#id2634694">13.5.5. Installing score d5091 1 a5091 1 "#id2634738">13.5.6. Packages providing login d5095 1 a5095 1 "#id2634795">13.5.7. Packages containing perl d5099 1 a5099 1 "#id2634813">13.5.8. Packages with hardcoded d5103 1 a5103 1 "#id2634835">13.5.9. Packages installing perl d5111 1 a5111 1 "#id2635123">13.5.11. Packages installing GConf2 d5115 1 a5115 1 "#id2635360">13.5.12. Packages installing d5119 1 a5119 1 "#id2635411">13.5.13. Packages installing X11 d5123 1 a5123 1 "#id2635526">13.5.14. Packages installing GTK2 d5127 1 a5127 1 "#id2635595">13.5.15. Packages installing SGML or d5131 1 a5131 1 "#id2635648">13.5.16. Packages installing d5135 1 a5135 1 "#id2635718">13.5.17. Packages using d5139 1 a5139 1 "#id2635732">13.5.18. Packages installing startup d5144 1 a5144 1
    13.6. d5157 1 a5157 1
    15.1. d5160 1 a5160 1
    15.2. d5164 1 a5164 1
    15.3. d5167 1 a5167 1
    15.4. d5198 1 a5198 1
    7.2.1. d5201 1 a5201 1
    7.2.2. d5205 1 a5205 1
    7.2.3. d5260 1 a5260 1 backslash character is not documented, so you should not d5297 1 a5297 1 "varname">DISTFILES, 7.2.1. Adding things to a d5355 2 a5356 2

    7.2.2. Converting an d5380 2 a5381 2

    7.2.3. Passing variables to d5403 1 a5403 1

    Example 2 leads to a syntax error too, and when you d5405 1 a5405 1 "varname">${ATOM} the Example 3 would output precede each space character with a backslash (or not), depending on the d5467 1 a5467 1

    8.4. Other d5474 1 a5474 1
    8.6. d5477 1 a5477 1
    8.7. d5856 1 a5856 1 "id2627883" id="id2627883">8.4. Other d5980 2 a5981 2 "id2628146" id= "id2628146">8.6. 8.7. 9.1. RCS d6077 1 a6077 1
    9.2. d6088 1 a6088 1
    9.5. d6091 1 a6091 1
    9.6. d6095 1 a6095 1
    9.7. d6121 1 a6121 1 "id2628288" id="id2628288">9.1. RCS d6139 2 a6140 2 "id2628302" id= "id2628302">9.2. Semi-automatic d6334 2 a6335 2 "id2628692" id= "id2628692">9.5. Manpage-compression

    d6359 1 a6359 1 "id2628733" id="id2628733">9.6. Changing d6382 1 a6382 1 "id2628758" id="id2628758">9.7. Platform d6527 1 a6527 1
    10.1. d6530 1 a6530 1
    10.2. d6537 1 a6537 1 "#id2629344">10.2.1. Anatomy of a buildlink3.mk d6541 1 a6541 1 "#id2629921">10.2.2. Updating 10.3. d6556 1 a6556 1 "#id2630081">10.3.1. Anatomy of a 10.3.2. Global preferences for native d6610 2 a6611 2 "id2629025" id= "id2629025">10.1. Converting packages to d6756 1 a6756 1 "id2629206" id="id2629206">10.2. Writing d6796 2 a6797 2

    10.2.1. Anatomy of a d7027 2 a7028 2

    10.2.2. Updating 10.3. Writing d7149 2 a7150 2

    10.3.1. Anatomy of a d7275 2 a7276 2

    10.3.2. Global preferences d7334 1 a7334 1
    11.1. d7337 1 a7337 1
    11.2. d7357 1 a7357 1 "id2630312" id="id2630312">11.1. Global d7375 2 a7376 2 "id2630327" id= "id2630327">11.2. Converting packages to d7539 1 a7539 1
    12.2. Main d7741 1 a7741 1 "id2631086" id="id2631086">12.2. Main d8520 1 a8520 1
    13.1. d8526 1 a8526 1 "#id2632518">13.1.1. How to pull in variables from d8530 1 a8530 1 "#id2632601">13.1.2. Restricted d8538 1 a8538 1 "#id2633123">13.1.4. Handling conflicts with other d8542 1 a8542 1 "#id2633173">13.1.5. Packages that cannot or should d8546 1 a8546 1 "#id2633198">13.1.6. Packages which should not be d8554 1 a8554 1 "#id2633290">13.1.8. How to handle compiler d8558 1 a8558 1 "#id2633313">13.1.9. How to handle incrementing d8563 1 a8563 1 "#id2633362">13.1.10. Portability of d8568 1 a8568 1
    13.2. d8574 1 a8574 1 "#id2633389">13.2.1. Packages whose distfiles d8579 1 a8579 1 "#id2633452">13.2.2. How to handle modified d8584 1 a8584 1
    13.3. d8594 1 a8594 1 "#id2634035">13.3.2. Using libtool on GNU packages d8598 1 a8598 1 "#id2634184">13.3.3. GNU d8603 1 a8603 1
    13.4. d8609 1 a8609 1 "#id2634232">13.4.1. CPP defines
    d8613 1 a8613 1
    13.5. d8619 1 a8619 1 "#id2634265">13.5.1. Package configuration d8623 1 a8623 1 "#id2634436">13.5.2. User d8627 1 a8627 1 "#id2634549">13.5.3. Handling d8631 1 a8631 1 "#id2634632">13.5.4. Creating an account from a d8635 1 a8635 1 "#id2634694">13.5.5. Installing score d8639 1 a8639 1 "#id2634738">13.5.6. Packages providing login d8643 1 a8643 1 "#id2634795">13.5.7. Packages containing perl d8647 1 a8647 1 "#id2634813">13.5.8. Packages with hardcoded paths d8651 1 a8651 1 "#id2634835">13.5.9. Packages installing perl d8659 1 a8659 1 "#id2635123">13.5.11. Packages installing GConf2 d8663 1 a8663 1 "#id2635360">13.5.12. Packages installing d8667 1 a8667 1 "#id2635411">13.5.13. Packages installing X11 d8671 1 a8671 1 "#id2635526">13.5.14. Packages installing GTK2 d8675 1 a8675 1 "#id2635595">13.5.15. Packages installing SGML or d8679 1 a8679 1 "#id2635648">13.5.16. Packages installing d8683 1 a8683 1 "#id2635718">13.5.17. Packages using d8687 1 a8687 1 "#id2635732">13.5.18. Packages installing startup d8692 1 a8692 1
    13.6. d8702 1 a8702 1 "id2632515" id="id2632515">13.1. General d8712 2 a8713 2

    13.1.1. How to pull in d8773 2 a8774 2

    13.1.2. Restricted d9081 2 a9082 2

    13.1.4. Handling conflicts d9129 2 a9130 2

    13.1.5. Packages that cannot d9161 2 a9162 2

    13.1.6. Packages which d9225 2 a9226 2

    13.1.8. How to handle d9251 2 a9252 2

    13.1.9. How to handle d9292 2 a9293 2

    13.1.10. Portability of d9309 2 a9310 2

    13.1.10.1. ${INSTALL}, d9335 1 a9335 1 "id2633386" id="id2633386">13.2. Possible d9345 2 a9346 2

    13.2.1. Packages whose d9407 2 a9408 2

    13.2.2. How to handle d9437 2 a9438 2 "id2633601" id= "id2633601">13.3. Configuration d9657 2 a9658 2

    13.3.2. Using libtool on GNU d9736 2 a9737 2

    13.3.3. GNU d9803 1 a9803 1 "id2634229" id="id2634229">13.4. Building d9813 2 a9814 2

    13.4.1. CPP defines

    d9853 1 a9853 1 "id2634262" id="id2634262">13.5. Package d9863 2 a9864 2

    13.5.1. Package d9936 2 a9937 2

    13.5.2. User d9986 2 a9987 2

    13.5.3. Handling d10061 2 a10062 2

    13.5.4. Creating an account d10116 2 a10117 2

    13.5.5. Installing score d10154 2 a10155 2

    13.5.6. Packages providing d10190 2 a10191 2

    13.5.7. Packages containing d10209 2 a10210 2

    13.5.8. Packages with d10236 2 a10237 2

    13.5.9. Packages installing d10376 2 a10377 2

    13.5.11. Packages installing d10451 2 a10452 2

    13.5.12. Packages installing d10496 2 a10497 2

    13.5.13. Packages installing d10534 2 a10535 2

    13.5.14. Packages installing d10601 2 a10602 2

    13.5.15. Packages installing d10663 2 a10664 2

    13.5.16. Packages installing d10722 2 a10723 2

    13.5.17. Packages using d10746 2 a10747 2

    13.5.18. Packages installing d10770 1 a10770 1 "id2635753" id="id2635753">13.6. Feedback d11006 1 a11006 1
    15.1. d11009 1 a11009 1
    15.2. d11013 1 a11013 1
    15.3. d11016 1 a11016 1
    15.4. d11026 2 a11027 2 "id2636215" id= "id2636215">15.1. Submitting your d11096 2 a11097 2 "id2636273" id= "id2636273">15.2. Committing: Importing a d11153 1 a11153 1 "id2636540" id="id2636540">15.3. Updating d11204 1 a11204 1 "id2636560" id="id2636560">15.4. Moving a d11305 1 a11305 1
    A.1. d11310 1 a11310 1
    A.1.1. d11313 1 a11313 1
    A.1.2. d11316 1 a11316 1
    A.1.3. d11319 1 a11319 1
    A.1.4. d11325 1 a11325 1
    A.2. Steps d11343 1 a11343 1 "id2636786" id="id2636786">A.1. files

    d11352 2 a11353 2

    A.1.1. Makefile

    d11380 2 a11381 2

    A.1.2. DESCR

    d11397 2 a11398 2

    A.1.3. PLIST

    d11415 2 a11416 2

    A.1.4. Checking a package with d11450 1 a11450 1 "id2636859" id="id2636859">A.2. Steps for d11868 1 a11868 1
    D.1. d11871 1 a11871 1
    D.2. d11884 1 a11884 1 "id2637574" id="id2637574">D.1. Targets

    d11935 2 a11936 2 "id2637776" id= "id2637776">D.2. Procedure

    @ 1.24 log @regen XXX: we need to add many more "id"s, most of the diff is automatically generated id numbers that differ from one build to the next. @ text @d22 2 a23 2

    The pkgsrc guide

    d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.4 2005/05/07 22:28:47 wiz Exp $

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2569718">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2569880">3.2.2. FreeBSD
    d152 1 a152 1 "#id2570324">3.2.3. Interix

    d155 1 a155 1 "#id2570557">3.2.4. IRIX

    d158 1 a158 1 "#id2570654">3.2.5. Linux

    d161 1 a161 1 "#id2570723">3.2.6. OpenBSD d164 1 a164 1 "#id2570835">3.2.7. Solaris d182 1 a182 1 "#id2571040">4.1.1. Where to get binary d186 1 a186 1 "#id2571080">4.1.2. How to use binary d190 1 a190 1 "#id2571256">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2571346">4.2.1. d205 1 a205 1 "#id2571366">4.2.2. Fetching d209 1 a209 1 "#id2571418">4.2.3. How to build and d213 1 a213 1 "#id2623831">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2624142">5.3.2. Other environmental d246 1 a246 1 "#id2624183">5.3.3. Operation
    d249 1 a249 1 "#id2624252">5.3.4. What it d253 1 a253 1 "#id2624309">5.3.5. Disk space d257 1 a257 1 "#id2624336">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2624865">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2625336">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d356 33 a388 1
    7. d395 1 a395 1 "#components.Makefile">7.1. 7.2. 7.3. d406 1 a406 1
    7.4. d410 1 a410 1 "#components.optional">7.5. Optional d413 1 a413 1
    7.6. d416 1 a416 1
    7.7. d422 1 a422 1
    8. PLIST d427 1 a427 1
    8.1. d430 1 a430 1
    8.2. d434 1 a434 1
    8.3. d439 1 a439 1
    8.4. d442 1 a442 1
    8.5. d445 1 a445 1
    8.6. d449 1 a449 1
    8.7. d454 1 a454 1 "#faq.common-dirs">8.8. Sharing directories between d459 1 a459 1
    9. d464 1 a464 1
    9.1. d468 1 a468 1
    9.2. d475 1 a475 1 "#id2629017">9.2.1. Anatomy of a buildlink3.mk d479 1 a479 1 "#id2629458">9.2.2. Updating 9.3. d494 1 a494 1 "#id2629618">9.3.1. Anatomy of a 9.3.2. Global preferences for d506 1 a506 1
    10. d511 1 a511 1
    10.1. d514 1 a514 1
    10.2. d520 1 a520 1
    11. The d526 1 a526 1 "#build.prefix">11.1. Program d529 1 a529 1
    11.2. d533 1 a533 1 "#build.helpful-targets">11.3. Other helpful d538 1 a538 1
    12. Notes on d543 1 a543 1
    12.1. d549 1 a549 1 "#id2632123">12.1.1. How to pull in variables d553 1 a553 1 "#id2632275">12.1.2. Restricted d557 1 a557 1 "#dependencies">12.1.3. Handling d561 1 a561 1 "#id2632728">12.1.4. Handling conflicts with d565 1 a565 1 "#id2632846">12.1.5. Packages that cannot or d569 1 a569 1 "#id2632872">12.1.6. Packages which should not d573 1 a573 1 "#security-handling">12.1.7. Handling packages d577 1 a577 1 "#id2632964">12.1.8. How to handle compiler d581 1 a581 1 "#id2633054">12.1.9. How to handle incrementing d586 1 a586 1 "#id2633104">12.1.10. Portability of d591 1 a591 1
    12.2. d597 1 a597 1 "#id2633131">12.2.1. Packages whose distfiles d602 1 a602 1 "#id2633194">12.2.2. How to handle modified d607 1 a607 1
    12.3. d613 1 a613 1 "#fixes.libtool">12.3.1. Shared libraries - d617 1 a617 1 "#id2633640">12.3.2. Using libtool on GNU d622 1 a622 1 "#id2633721">12.3.3. GNU d627 1 a627 1
    12.4. d633 1 a633 1 "#id2633837">12.4.1. CPP d638 1 a638 1
    12.5. d644 1 a644 1 "#id2633870">12.5.1. Package configuration d648 1 a648 1 "#id2633973">12.5.2. User d652 1 a652 1 "#id2634018">12.5.3. Handling d656 1 a656 1 "#id2634169">12.5.4. Creating an account from a d660 1 a660 1 "#id2634231">12.5.5. Installing score d664 1 a664 1 "#id2634411">12.5.6. Packages providing login d668 1 a668 1 "#id2634469">12.5.7. Packages containing perl d672 1 a672 1 "#id2634555">12.5.8. Packages with hardcoded d676 1 a676 1 "#id2634577">12.5.9. Packages installing perl d680 1 a680 1 "#faq.info-files">12.5.10. Packages installing d684 1 a684 1 "#id2634865">12.5.11. Packages installing d688 1 a688 1 "#id2634965">12.5.12. Packages installing d692 1 a692 1 "#id2635016">12.5.13. Packages installing X11 d696 1 a696 1 "#id2635063">12.5.14. Packages installing GTK2 d700 1 a700 1 "#id2635201">12.5.15. Packages installing SGML d704 1 a704 1 "#id2635253">12.5.16. Packages installing d708 1 a708 1 "#id2635323">12.5.17. Packages using d712 1 a712 1 "#id2635337">12.5.18. Packages installing d717 1 a717 1
    12.6. d722 1 a722 1
    13. d725 1 a725 1
    14. d730 1 a730 1
    14.1. d733 1 a733 1
    14.2. d737 1 a737 1
    14.3. d741 1 a741 1
    14.4. d753 1 a753 1
    A.1. d758 1 a758 1
    A.1.1. d761 1 a761 1
    A.1.2. d764 1 a764 1
    A.1.3. d767 1 a767 1
    A.1.4. d773 1 a773 1
    A.2. Steps d799 1 a799 1
    D.1. d802 1 a802 1
    D.2. d823 1 a823 1
    1.1. d842 2 a843 2 "id2623537" id= "id2623537">1.1. Introduction

    d1153 1 a1153 1
    2.1. As d1156 1 a1156 1
    2.2. Via d1159 1 a1159 1
    2.3. Via d1169 1 a1169 1
    3.1. d1172 1 a1172 1
    3.2. d1178 1 a1178 1 "#id2569718">3.2.1. Darwin (Mac OS d1182 1 a1182 1 "#id2569880">3.2.2. FreeBSD
    d1185 1 a1185 1 "#id2570324">3.2.3. Interix d1188 1 a1188 1 "#id2570557">3.2.4. IRIX d1191 1 a1191 1 "#id2570654">3.2.5. Linux d1194 1 a1194 1 "#id2570723">3.2.6. OpenBSD d1197 1 a1197 1 "#id2570835">3.2.7. Solaris d1215 1 a1215 1 "#id2571040">4.1.1. Where to get binary d1219 1 a1219 1 "#id2571080">4.1.2. How to use binary d1223 1 a1223 1 "#id2571256">4.1.3. A word of d1228 1 a1228 1
    4.2. d1234 1 a1234 1 "#id2571346">4.2.1. Requirements
    d1237 1 a1237 1 "#id2571366">4.2.2. Fetching d1241 1 a1241 1 "#id2571418">4.2.3. How to build and d1245 1 a1245 1 "#id2623831">4.2.4. Selecting the d1257 1 a1257 1
    5.1. d1260 1 a1260 1
    5.2. d1274 1 a1274 1 "#id2624142">5.3.2. Other environmental d1278 1 a1278 1 "#id2624183">5.3.3. Operation
    d1281 1 a1281 1 "#id2624252">5.3.4. What it does d1284 1 a1284 1 "#id2624309">5.3.5. Disk space d1288 1 a1288 1 "#id2624336">5.3.6. Setting up a sandbox for d1292 1 a1292 1 "#id2624865">5.3.7. Building a partial set of d1301 1 a1301 1
    5.4. d1308 1 a1308 1 "#id2625336">5.4.1. Example of d1320 1 a1320 1
    6.1. Are d1324 1 a1324 1
    6.2. d1331 1 a1331 1
    6.4. How d1334 1 a1334 1
    6.5. How d1338 1 a1338 1
    6.6. How d1342 1 a1342 1
    6.7. How d1345 1 a1345 1
    6.8. How d1348 1 a1348 1
    6.9. How d1353 1 a1353 1
    6.10. d1356 1 a1356 1
    6.11. d1361 1 a1361 1
    6.12. d1365 1 a1365 1
    6.13. d1395 1 a1395 1
    2.1. As d1398 1 a1398 1
    2.2. Via d1401 1 a1401 1
    2.3. Via d1415 1 a1415 1 "id2569236" id="id2569236">2.1. As tar d1433 1 a1433 1 "id2569252" id="id2569252">2.2. Via d1459 1 a1459 1 "id2569420" id="id2569420">2.3. Via d1516 1 a1516 1
    3.1. d1519 1 a1519 1
    3.2. d1524 1 a1524 1
    3.2.1. d1527 1 a1527 1
    3.2.2. d1530 1 a1530 1
    3.2.3. d1533 1 a1533 1
    3.2.4. d1536 1 a1536 1
    3.2.5. d1539 1 a1539 1
    3.2.6. d1542 1 a1542 1
    3.2.7. d1554 2 a1555 2 "id2569530" id= "id2569530">3.1. Bootstrapping pkgsrc

    d1645 1 a1645 1 "id2569712" id="id2569712">3.2. Platform d1658 2 a1659 2

    3.2.1. Darwin (Mac OS d1791 2 a1792 2

    3.2.2. FreeBSD

    d1848 2 a1849 2

    3.2.3. Interix

    d2030 2 a2031 2

    3.2.4. IRIX

    d2111 2 a2112 2

    3.2.5. Linux

    d2189 2 a2190 2

    3.2.6. OpenBSD

    d2256 2 a2257 2

    3.2.7. Solaris

    d2301 2 a2302 2

    3.2.7.1. If you are using d2331 2 a2332 2

    3.2.7.2. If you are using d2409 1 a2409 1
    4.1.1. d2412 1 a2412 1
    4.1.2. d2415 1 a2415 1
    4.1.3. d2420 1 a2420 1
    4.2. d2425 1 a2425 1
    4.2.1. d2428 1 a2428 1
    4.2.2. d2431 1 a2431 1
    4.2.3. d2434 1 a2434 1
    4.2.4. d2461 2 a2462 2

    4.1.1. Where to get binary d2493 2 a2494 2

    4.1.2. How to use binary d2564 2 a2565 2

    4.1.3. A word of d2588 1 a2588 1 "id2571336" id="id2571336">4.2. Building d2603 2 a2604 2

    4.2.1. Requirements

    d2623 2 a2624 2

    4.2.2. Fetching d2665 2 a2666 2

    4.2.3. How to build and d2834 2 a2835 2

    4.2.4. Selecting the d2935 1 a2935 1
    5.1. d2938 1 a2938 1
    5.2. d2951 1 a2951 1
    5.3.2. d2954 1 a2954 1
    5.3.3. d2957 1 a2957 1
    5.3.4. d2960 1 a2960 1
    5.3.5. d2963 1 a2963 1
    5.3.6. d2967 1 a2967 1
    5.3.7. d2976 1 a2976 1
    5.4. d2982 1 a2982 1
    5.4.1. d2994 1 a2994 1 "id2623917" id="id2623917">5.1. Building a d3038 2 a3039 2 "Chapter 14. Submitting and Committing">Chapter 14, Submitting and Committing for information d3048 1 a3048 1 "id2623995" id="id2623995">5.2. Settings d3055 1 a3055 1 "11.3. Other helpful targets">Section 11.3, d3130 2 a3131 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3233 2 a3234 2

    5.3.3. Operation

    d3280 2 a3281 2

    5.3.4. What it does

    d3339 2 a3340 2

    5.3.5. Disk space d3382 2 a3383 2

    5.3.6. Setting up a sandbox d3572 2 a3573 2

    5.3.7. Building a partial d3766 1 a3766 1 "id2625321" id="id2625321">5.4. Creating a d3789 2 a3790 2

    5.4.1. Example of d3863 1 a3863 1
    6.1. Are d3867 1 a3867 1
    6.2. d3874 1 a3874 1
    6.4. How d3877 1 a3877 1
    6.5. How d3881 1 a3881 1
    6.6. How d3884 1 a3884 1
    6.7. How d3887 1 a3887 1
    6.8. How d3890 1 a3890 1
    6.9. How d3895 1 a3895 1
    6.10. How d3898 1 a3898 1
    6.11. What d3903 1 a3903 1
    6.12. What d3907 1 a3907 1
    6.13. d3929 1 a3929 1 "id2625528" id="id2625528">6.1. Are there d3988 1 a3988 1 "id2625662" id="id2625662">6.2. Where's d4243 1 a4243 1 "id2625984" id="id2625984">6.4. How to use d4261 1 a4261 1 "id2625995" id="id2625995">6.5. How to d4304 1 a4304 1 "id2626045" id="id2626045">6.6. How can I d4327 1 a4327 1 "id2626073" id="id2626073">6.7. How can I d4350 1 a4350 1 "id2626101" id="id2626101">6.8. How to d4375 1 a4375 1 "id2626115" id="id2626115">6.9. How do I d4409 1 a4409 1 "id2626166" id="id2626166">6.10. How to d4482 1 a4482 1 "id2626313" id="id2626313">6.11. What does d4514 1 a4514 1 "id2626352" id="id2626352">6.12. What does d4543 1 a4543 1 "id2626409" id="id2626409">6.13. Using d4791 32 a4822 1
    7. d4829 1 a4829 1 "#components.Makefile">7.1. 7.2. 7.3. patches/*
    d4839 1 a4839 1
    7.4. d4843 1 a4843 1 "#components.optional">7.5. Optional d4846 1 a4846 1
    7.6. d4849 1 a4849 1
    7.7. d4854 1 a4854 1
    8. PLIST d4859 1 a4859 1
    8.1. RCS d4862 1 a4862 1
    8.2. d4866 1 a4866 1
    8.3. d4870 1 a4870 1
    8.4. d4873 1 a4873 1
    8.5. d4876 1 a4876 1
    8.6. d4880 1 a4880 1
    8.7. d4885 1 a4885 1 "#faq.common-dirs">8.8. Sharing directories between d4890 1 a4890 1
    9. d4895 1 a4895 1
    9.1. d4898 1 a4898 1
    9.2. d4905 1 a4905 1 "#id2629017">9.2.1. Anatomy of a buildlink3.mk d4909 1 a4909 1 "#id2629458">9.2.2. Updating 9.3. d4924 1 a4924 1 "#id2629618">9.3.1. Anatomy of a 9.3.2. Global preferences for native or pkgsrc software
    d4935 1 a4935 1
    10. Options d4940 1 a4940 1
    10.1. d4943 1 a4943 1
    10.2. d4949 1 a4949 1
    11. The build d4954 1 a4954 1
    11.1. d4957 1 a4957 1
    11.2. d4961 1 a4961 1 "#build.helpful-targets">11.3. Other helpful d4966 1 a4966 1
    12. Notes on d4971 1 a4971 1
    12.1. d4977 1 a4977 1 "#id2632123">12.1.1. How to pull in variables d4981 1 a4981 1 "#id2632275">12.1.2. Restricted d4985 1 a4985 1 "#dependencies">12.1.3. Handling d4989 1 a4989 1 "#id2632728">12.1.4. Handling conflicts with d4993 1 a4993 1 "#id2632846">12.1.5. Packages that cannot or d4997 1 a4997 1 "#id2632872">12.1.6. Packages which should not be d5001 1 a5001 1 "#security-handling">12.1.7. Handling packages d5005 1 a5005 1 "#id2632964">12.1.8. How to handle compiler d5009 1 a5009 1 "#id2633054">12.1.9. How to handle incrementing d5014 1 a5014 1 "#id2633104">12.1.10. Portability of d5019 1 a5019 1
    12.2. d5025 1 a5025 1 "#id2633131">12.2.1. Packages whose distfiles d5030 1 a5030 1 "#id2633194">12.2.2. How to handle modified d5035 1 a5035 1
    12.3. d5041 1 a5041 1 "#fixes.libtool">12.3.1. Shared libraries - d5045 1 a5045 1 "#id2633640">12.3.2. Using libtool on GNU d5050 1 a5050 1 "#id2633721">12.3.3. GNU d5055 1 a5055 1
    12.4. d5061 1 a5061 1 "#id2633837">12.4.1. CPP defines
    d5065 1 a5065 1
    12.5. d5071 1 a5071 1 "#id2633870">12.5.1. Package configuration d5075 1 a5075 1 "#id2633973">12.5.2. User d5079 1 a5079 1 "#id2634018">12.5.3. Handling d5083 1 a5083 1 "#id2634169">12.5.4. Creating an account from a d5087 1 a5087 1 "#id2634231">12.5.5. Installing score d5091 1 a5091 1 "#id2634411">12.5.6. Packages providing login d5095 1 a5095 1 "#id2634469">12.5.7. Packages containing perl d5099 1 a5099 1 "#id2634555">12.5.8. Packages with hardcoded d5103 1 a5103 1 "#id2634577">12.5.9. Packages installing perl d5107 1 a5107 1 "#faq.info-files">12.5.10. Packages installing d5111 1 a5111 1 "#id2634865">12.5.11. Packages installing GConf2 d5115 1 a5115 1 "#id2634965">12.5.12. Packages installing d5119 1 a5119 1 "#id2635016">12.5.13. Packages installing X11 d5123 1 a5123 1 "#id2635063">12.5.14. Packages installing GTK2 d5127 1 a5127 1 "#id2635201">12.5.15. Packages installing SGML or d5131 1 a5131 1 "#id2635253">12.5.16. Packages installing d5135 1 a5135 1 "#id2635323">12.5.17. Packages using d5139 1 a5139 1 "#id2635337">12.5.18. Packages installing startup d5144 1 a5144 1
    12.6. d5149 1 a5149 1
    13. d5152 1 a5152 1
    14. d5157 1 a5157 1
    14.1. d5160 1 a5160 1
    14.2. d5164 1 a5164 1
    14.3. d5167 1 a5167 1
    14.4. d5178 267 d5446 1 a5446 1 "components">Chapter 7. Package d5457 1 a5457 1 "#components.Makefile">7.1. 7.2. 7.3. patches/*
    d5467 1 a5467 1
    7.4. Other d5471 1 a5471 1 "#components.optional">7.5. Optional d5474 1 a5474 1
    7.6. d5477 1 a5477 1
    7.7. d5492 1 a5492 1 "components.Makefile">7.1. Section 12.5.10, “Packages installing info d5703 1 a5703 1 "components.distinfo">7.2. Section 7.3, d5765 1 a5765 1 "components.patches">7.3. patches/*

    d5826 1 a5826 1 "7.2. distinfo">Section 7.2, d5856 1 a5856 1 "id2627489" id="id2627489">7.4. Other d5886 1 a5886 1 "Chapter 8. PLIST issues">Chapter 8, d5899 1 a5899 1 "components.optional">7.5. Optional d5980 2 a5981 2 "id2627614" id= "id2627614">7.6. 7.7. Chapter 8. PLIST issues

    d6074 1 a6074 1
    8.1. RCS d6077 1 a6077 1
    8.2. d6081 1 a6081 1
    8.3. d6085 1 a6085 1
    8.4. d6088 1 a6088 1
    8.5. d6091 1 a6091 1
    8.6. d6095 1 a6095 1
    8.7. d6098 1 a6098 1
    8.8. d6121 1 a6121 1 "id2627961" id="id2627961">8.1. RCS d6139 2 a6140 2 "id2627976" id= "id2627976">8.2. Semi-automatic d6150 1 a6150 1 "11.3. Other helpful targets">Section 11.3, d6161 1 a6161 1 "print-PLIST">8.3. Tweaking output of d6170 1 a6170 1 "8.8. Sharing directories between packages">Section 8.8, d6210 1 a6210 1 "plist.misc" id="plist.misc">8.4. Variable d6318 1 a6318 1 "7.5. Optional files">Section 7.5, d6334 2 a6335 2 "id2628297" id= "id2628297">8.5. Manpage-compression

    d6359 1 a6359 1 "id2628339" id="id2628339">8.6. Changing d6382 1 a6382 1 "id2628363" id="id2628363">8.7. Platform d6427 1 a6427 1 "faq.common-dirs">8.8. Sharing directories d6517 1 a6517 1 "buildlink">Chapter 9. Buildlink d6527 1 a6527 1
    9.1. d6530 1 a6530 1
    9.2. d6536 3 a6538 2
    9.2.1. Anatomy of a buildlink3.mk file
    d6540 2 a6541 2
    9.2.2. Updating 9.3. d6555 2 a6556 2
    9.3.1. Anatomy of a 9.3.2. Global preferences for native or pkgsrc software
    d6610 3 a6612 2 "id2628562" id="id2628562">9.1. Converting packages to use buildlink3

    d6756 1 a6756 1 "id2628948" id="id2628948">9.2. Writing d6796 3 a6798 3

    9.2.1. Anatomy of a buildlink3.mk file

    d7027 2 a7028 2

    9.2.2. Updating Section 12.1.3, “Handling dependencies” and d7083 6 a7088 6 "Chapter 9. Buildlink methodology">Chapter 9, Buildlink methodology for more information about dependencies on other packages, including the BUILDLINK_RECOMMENDED and RECOMMENDED definitions.

    d7097 1 a7097 1 "id2629537" id="id2629537">9.3. Writing d7149 2 a7150 2

    9.3.1. Anatomy of a d7275 2 a7276 2

    9.3.2. Global preferences d7324 1 a7324 1 "options">Chapter 10. Options d7334 1 a7334 1
    10.1. d7337 1 a7337 1
    10.2. d7357 1 a7357 1 "id2629986" id="id2629986">10.1. Global d7375 2 a7376 2 "id2630001" id= "id2630001">10.2. Converting packages to d7526 1 a7526 1 "build">Chapter 11. The build d7536 1 a7536 1
    11.1. d7539 1 a7539 1
    11.2. Main d7543 1 a7543 1 "#build.helpful-targets">11.3. Other helpful d7566 1 a7566 1 "build.prefix">11.1. Program location

    d7587 1 a7587 1 "7.3. patches/*">Section 7.3, d7590 1 a7590 1 "12.3.1. Shared libraries - libtool">Section 12.3.1, d7741 1 a7741 1 "id2630624" id="id2630624">11.2. Main d7868 1 a7868 1 "7.3. patches/*">Section 7.3, d7992 1 a7992 1 "build.helpful-targets">11.3. Other d8432 1 a8432 1 "8.3. Tweaking output of make print-PLIST">Section 8.3, d8510 1 a8510 1 "fixes">Chapter 12. Notes on fixes for d8520 1 a8520 1
    12.1. d8526 1 a8526 1 "#id2632123">12.1.1. How to pull in variables from d8530 1 a8530 1 "#id2632275">12.1.2. Restricted d8534 1 a8534 1 "#dependencies">12.1.3. Handling d8538 1 a8538 1 "#id2632728">12.1.4. Handling conflicts with other d8542 1 a8542 1 "#id2632846">12.1.5. Packages that cannot or should d8546 1 a8546 1 "#id2632872">12.1.6. Packages which should not be d8550 1 a8550 1 "#security-handling">12.1.7. Handling packages with d8554 1 a8554 1 "#id2632964">12.1.8. How to handle compiler d8558 1 a8558 1 "#id2633054">12.1.9. How to handle incrementing d8563 1 a8563 1 "#id2633104">12.1.10. Portability of d8568 1 a8568 1
    12.2. d8574 1 a8574 1 "#id2633131">12.2.1. Packages whose distfiles d8579 1 a8579 1 "#id2633194">12.2.2. How to handle modified d8584 1 a8584 1
    12.3. d8590 1 a8590 1 "#fixes.libtool">12.3.1. Shared libraries - d8594 1 a8594 1 "#id2633640">12.3.2. Using libtool on GNU packages d8598 1 a8598 1 "#id2633721">12.3.3. GNU d8603 1 a8603 1
    12.4. d8609 1 a8609 1 "#id2633837">12.4.1. CPP defines
    d8613 1 a8613 1
    12.5. d8619 1 a8619 1 "#id2633870">12.5.1. Package configuration d8623 1 a8623 1 "#id2633973">12.5.2. User d8627 1 a8627 1 "#id2634018">12.5.3. Handling d8631 1 a8631 1 "#id2634169">12.5.4. Creating an account from a d8635 1 a8635 1 "#id2634231">12.5.5. Installing score d8639 1 a8639 1 "#id2634411">12.5.6. Packages providing login d8643 1 a8643 1 "#id2634469">12.5.7. Packages containing perl d8647 1 a8647 1 "#id2634555">12.5.8. Packages with hardcoded paths d8651 1 a8651 1 "#id2634577">12.5.9. Packages installing perl d8655 1 a8655 1 "#faq.info-files">12.5.10. Packages installing info d8659 1 a8659 1 "#id2634865">12.5.11. Packages installing GConf2 d8663 1 a8663 1 "#id2634965">12.5.12. Packages installing d8667 1 a8667 1 "#id2635016">12.5.13. Packages installing X11 d8671 1 a8671 1 "#id2635063">12.5.14. Packages installing GTK2 d8675 1 a8675 1 "#id2635201">12.5.15. Packages installing SGML or d8679 1 a8679 1 "#id2635253">12.5.16. Packages installing d8683 1 a8683 1 "#id2635323">12.5.17. Packages using d8687 1 a8687 1 "#id2635337">12.5.18. Packages installing startup d8692 1 a8692 1
    12.6. d8702 1 a8702 1 "id2632120" id="id2632120">12.1. General d8712 2 a8713 2

    12.1.1. How to pull in d8773 2 a8774 2

    12.1.2. Restricted d8853 1 a8853 1 "dependencies">12.1.3. Handling d8868 1 a8868 1 "Chapter 9. Buildlink methodology">Chapter 9, d9006 2 a9007 2 "12.1.7. Handling packages with security problems"> Section 12.1.7, “Handling packages with d9081 2 a9082 2

    12.1.4. Handling conflicts d9129 2 a9130 2

    12.1.5. Packages that cannot d9161 2 a9162 2

    12.1.6. Packages which d9187 1 a9187 1 "security-handling">12.1.7. Handling d9211 1 a9211 1 "Chapter 9. Buildlink methodology">Chapter 9, d9225 2 a9226 2

    12.1.8. How to handle d9251 2 a9252 2

    12.1.9. How to handle d9292 2 a9293 2

    12.1.10. Portability of d9309 2 a9310 2

    12.1.10.1. ${INSTALL}, d9335 1 a9335 1 "id2633128" id="id2633128">12.2. Possible d9345 2 a9346 2

    12.2.1. Packages whose d9407 2 a9408 2

    12.2.2. How to handle d9437 2 a9438 2 "id2633206" id= "id2633206">12.3. Configuration d9449 1 a9449 1 "fixes.libtool">12.3.1. Shared libraries d9657 2 a9658 2

    12.3.2. Using libtool on GNU d9736 2 a9737 2

    12.3.3. GNU d9803 1 a9803 1 "id2633834" id="id2633834">12.4. Building d9813 2 a9814 2

    12.4.1. CPP defines

    d9853 1 a9853 1 "id2633867" id="id2633867">12.5. Package d9863 2 a9864 2

    12.5.1. Package d9936 2 a9937 2

    12.5.2. User d9986 2 a9987 2

    12.5.3. Handling d10061 2 a10062 2

    12.5.4. Creating an account d10116 2 a10117 2

    12.5.5. Installing score d10154 2 a10155 2

    12.5.6. Packages providing d10190 2 a10191 2

    12.5.7. Packages containing d10209 2 a10210 2

    12.5.8. Packages with d10236 2 a10237 2

    12.5.9. Packages installing d10280 1 a10280 1 "faq.info-files">12.5.10. Packages d10376 2 a10377 2

    12.5.11. Packages installing d10451 2 a10452 2

    12.5.12. Packages installing d10496 2 a10497 2

    12.5.13. Packages installing d10534 2 a10535 2

    12.5.14. Packages installing d10601 2 a10602 2

    12.5.15. Packages installing d10663 2 a10664 2

    12.5.16. Packages installing d10722 2 a10723 2

    12.5.17. Packages using d10746 2 a10747 2

    12.5.18. Packages installing d10770 1 a10770 1 "id2635358" id="id2635358">12.6. Feedback d10794 1 a10794 1 "debug">Chapter 13. Debugging

    d10893 1 a10893 1 "7.1. Makefile">Section 7.1, d10984 1 a10984 1 "Chapter 14. Submitting and Committing">Chapter 14, d10996 1 a10996 1 "submit">Chapter 14. Submitting and d11006 1 a11006 1
    14.1. d11009 1 a11009 1
    14.2. d11013 1 a11013 1
    14.3. d11016 1 a11016 1
    14.4. d11026 2 a11027 2 "id2635957" id= "id2635957">14.1. Submitting your d11060 1 a11060 1 "Chapter 13. Debugging">Chapter 13, d11096 2 a11097 2 "id2636014" id= "id2636014">14.2. Committing: Importing a d11153 1 a11153 1 "id2636077" id="id2636077">14.3. Updating d11204 1 a11204 1 "id2636097" id="id2636097">14.4. Moving a d11305 1 a11305 1
    A.1. d11310 1 a11310 1
    A.1.1. d11313 1 a11313 1
    A.1.2. d11316 1 a11316 1
    A.1.3. d11319 1 a11319 1
    A.1.4. d11325 1 a11325 1
    A.2. Steps d11343 1 a11343 1 "id2636323" id="id2636323">A.1. files

    d11352 2 a11353 2

    A.1.1. Makefile

    d11380 2 a11381 2

    A.1.2. DESCR

    d11397 2 a11398 2

    A.1.3. PLIST

    d11415 2 a11416 2

    A.1.4. Checking a package with a11434 4 OK: checking ./DESCR. OK: checking Makefile. OK: checking distinfo. OK: checking patches/patch-aa. d11450 1 a11450 1 "id2636465" id="id2636465">A.2. Steps for d11472 2 a11473 2 "Chapter 7. Package components - files, directories and contents"> Chapter 7, Package components - files, directories and d11868 1 a11868 1
    D.1. d11871 1 a11871 1
    D.2. d11884 1 a11884 1 "id2637111" id="id2637111">D.1. Targets

    d11935 2 a11936 2 "id2637517" id= "id2637517">D.2. Procedure

    @ 1.23 log @regen (various fixes and updates) @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2569717">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2569879">3.2.2. FreeBSD
    d152 1 a152 1 "#id2570459">3.2.3. Interix d155 1 a155 1 "#id2570693">3.2.4. IRIX d158 1 a158 1 "#id2570777">3.2.5. Linux d161 1 a161 1 "#id2570838">3.2.6. OpenBSD d164 1 a164 1 "#id2570950">3.2.7. Solaris d182 1 a182 1 "#id2571155">4.1.1. Where to get binary d186 1 a186 1 "#id2571264">4.1.2. How to use binary d190 1 a190 1 "#id2571371">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2571393">4.2.1. d205 1 a205 1 "#id2571822">4.2.2. Fetching d209 1 a209 1 "#id2571875">4.2.3. How to build and d213 1 a213 1 "#id2623810">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2624115">5.3.2. Other environmental d246 1 a246 1 "#id2624155">5.3.3. Operation
    d249 1 a249 1 "#id2624225">5.3.4. What it d253 1 a253 1 "#id2624281">5.3.5. Disk space d257 1 a257 1 "#id2624308">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2624905">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2625289">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d374 1 a374 1
    7.4. d384 1 a384 1
    7.7. d395 1 a395 1
    8.1. d398 1 a398 1
    8.2. d410 1 a410 1
    8.5. d413 1 a413 1
    8.6. d417 1 a417 1
    8.7. d432 1 a432 1
    9.1. d436 1 a436 1
    9.2. d443 1 a443 1 "#id2628941">9.2.1. Anatomy of a buildlink3.mk d447 1 a447 1 "#id2629382">9.2.2. Updating 9.3. d462 1 a462 1 "#id2629542">9.3.1. Anatomy of a 9.3.2. Global preferences for d479 1 a479 1
    10.1. d482 1 a482 1
    10.2. d497 1 a497 1
    11.2. d511 1 a511 1
    12.1. d517 1 a517 1 "#id2632073">12.1.1. How to pull in variables d521 1 a521 1 "#id2632156">12.1.2. Restricted d529 1 a529 1 "#id2632672">12.1.4. Handling conflicts with d533 1 a533 1 "#id2632790">12.1.5. Packages that cannot or d537 1 a537 1 "#id2632816">12.1.6. Packages which should not d545 1 a545 1 "#id2632907">12.1.8. How to handle compiler d549 1 a549 1 "#id2632930">12.1.9. How to handle incrementing d554 1 a554 1 "#id2632979">12.1.10. Portability of d559 1 a559 1
    12.2. d565 1 a565 1 "#id2633006">12.2.1. Packages whose distfiles d570 1 a570 1 "#id2633069">12.2.2. How to handle modified d575 1 a575 1
    12.3. d585 1 a585 1 "#id2633438">12.3.2. Using libtool on GNU d590 1 a590 1 "#id2633588">12.3.3. GNU d595 1 a595 1
    12.4. d601 1 a601 1 "#id2633704">12.4.1. CPP d606 1 a606 1
    12.5. d612 1 a612 1 "#id2633805">12.5.1. Package configuration d616 1 a616 1 "#id2633908">12.5.2. User d620 1 a620 1 "#id2633953">12.5.3. Handling d624 1 a624 1 "#id2634036">12.5.4. Creating an account from a d628 1 a628 1 "#id2634166">12.5.5. Installing score d632 1 a632 1 "#id2634210">12.5.6. Packages providing login d636 1 a636 1 "#id2634267">12.5.7. Packages containing perl d640 1 a640 1 "#id2634422">12.5.8. Packages with hardcoded d644 1 a644 1 "#id2634443">12.5.9. Packages installing perl d652 1 a652 1 "#id2634663">12.5.11. Packages installing d656 1 a656 1 "#id2634763">12.5.12. Packages installing d660 1 a660 1 "#id2634814">12.5.13. Packages installing X11 d664 1 a664 1 "#id2634861">12.5.14. Packages installing GTK2 d668 1 a668 1 "#id2634931">12.5.15. Packages installing SGML d672 1 a672 1 "#id2635051">12.5.16. Packages installing d676 1 a676 1 "#id2635190">12.5.17. Packages using d680 1 a680 1 "#id2635204">12.5.18. Packages installing d685 1 a685 1
    12.6. d698 1 a698 1
    14.1. d701 1 a701 1
    14.2. d705 1 a705 1
    14.3. d709 1 a709 1
    14.4. d721 1 a721 1
    A.1. d726 1 a726 1
    A.1.1. d729 1 a729 1
    A.1.2. d732 1 a732 1
    A.1.3. d735 1 a735 1
    A.1.4. d741 1 a741 1
    A.2. Steps d767 1 a767 1
    D.1. d770 1 a770 1
    D.2. d791 1 a791 1
    1.1. d810 2 a811 2 "id2623536" id= "id2623536">1.1. Introduction

    d1121 1 a1121 1
    2.1. As d1124 1 a1124 1
    2.2. Via d1127 1 a1127 1
    2.3. Via d1137 1 a1137 1
    3.1. d1140 1 a1140 1
    3.2. d1146 1 a1146 1 "#id2569717">3.2.1. Darwin (Mac OS d1150 1 a1150 1 "#id2569879">3.2.2. FreeBSD
    d1153 1 a1153 1 "#id2570459">3.2.3. Interix d1156 1 a1156 1 "#id2570693">3.2.4. IRIX d1159 1 a1159 1 "#id2570777">3.2.5. Linux d1162 1 a1162 1 "#id2570838">3.2.6. OpenBSD d1165 1 a1165 1 "#id2570950">3.2.7. Solaris d1183 1 a1183 1 "#id2571155">4.1.1. Where to get binary d1187 1 a1187 1 "#id2571264">4.1.2. How to use binary d1191 1 a1191 1 "#id2571371">4.1.3. A word of d1196 1 a1196 1
    4.2. d1202 1 a1202 1 "#id2571393">4.2.1. Requirements
    d1205 1 a1205 1 "#id2571822">4.2.2. Fetching d1209 1 a1209 1 "#id2571875">4.2.3. How to build and d1213 1 a1213 1 "#id2623810">4.2.4. Selecting the d1225 1 a1225 1
    5.1. d1228 1 a1228 1
    5.2. d1242 1 a1242 1 "#id2624115">5.3.2. Other environmental d1246 1 a1246 1 "#id2624155">5.3.3. Operation
    d1249 1 a1249 1 "#id2624225">5.3.4. What it does d1252 1 a1252 1 "#id2624281">5.3.5. Disk space d1256 1 a1256 1 "#id2624308">5.3.6. Setting up a sandbox for d1260 1 a1260 1 "#id2624905">5.3.7. Building a partial set of d1269 1 a1269 1
    5.4. d1276 1 a1276 1 "#id2625289">5.4.1. Example of d1288 1 a1288 1
    6.1. Are d1292 1 a1292 1
    6.2. d1299 1 a1299 1
    6.4. How d1302 1 a1302 1
    6.5. How d1306 1 a1306 1
    6.6. How d1310 1 a1310 1
    6.7. How d1313 1 a1313 1
    6.8. How d1316 1 a1316 1
    6.9. How d1321 1 a1321 1
    6.10. d1324 1 a1324 1
    6.11. d1329 1 a1329 1
    6.12. d1333 1 a1333 1
    6.13. d1363 1 a1363 1
    2.1. As d1366 1 a1366 1
    2.2. Via d1369 1 a1369 1
    2.3. Via d1383 1 a1383 1 "id2569303" id="id2569303">2.1. As tar d1401 1 a1401 1 "id2569319" id="id2569319">2.2. Via d1427 1 a1427 1 "id2569351" id="id2569351">2.3. Via d1484 1 a1484 1
    3.1. d1487 1 a1487 1
    3.2. d1492 1 a1492 1
    3.2.1. d1495 1 a1495 1
    3.2.2. d1498 1 a1498 1
    3.2.3. d1501 1 a1501 1
    3.2.4. d1504 1 a1504 1
    3.2.5. d1507 1 a1507 1
    3.2.6. d1510 1 a1510 1
    3.2.7. d1522 2 a1523 2 "id2569529" id= "id2569529">3.1. Bootstrapping pkgsrc

    d1613 1 a1613 1 "id2569710" id="id2569710">3.2. Platform d1626 2 a1627 2

    3.2.1. Darwin (Mac OS d1759 2 a1760 2

    3.2.2. FreeBSD

    d1816 2 a1817 2

    3.2.3. Interix

    d1998 2 a1999 2

    3.2.4. IRIX

    d2015 9 a2023 2 providing support for if_indextoname(3), if_nametoindex(3), etc.

    d2079 2 a2080 2

    3.2.5. Linux

    d2141 10 a2150 6 the ld(1) command run when linking a C++ shared library and records it, throwing away the -Bstatic and -Bdynamic options interspersed between the libraries. This means that libtool-linked C++ shared libraries will have a runtime dependency on the icc libraries until this is fixed in libtool.

    d2157 2 a2158 2

    3.2.6. OpenBSD

    d2224 2 a2225 2

    3.2.7. Solaris

    d2269 2 a2270 2

    3.2.7.1. If you are using d2299 2 a2300 2

    3.2.7.2. If you are using d2377 1 a2377 1
    4.1.1. d2380 1 a2380 1
    4.1.2. d2383 1 a2383 1
    4.1.3. d2388 1 a2388 1
    4.2. d2393 1 a2393 1
    4.2.1. d2396 1 a2396 1
    4.2.2. d2399 1 a2399 1
    4.2.3. d2402 1 a2402 1
    4.2.4. d2429 2 a2430 2

    4.1.1. Where to get binary d2461 2 a2462 2

    4.1.2. How to use binary d2532 2 a2533 2

    4.1.3. A word of d2556 1 a2556 1 "id2571383" id="id2571383">4.2. Building d2571 2 a2572 2

    4.2.1. Requirements

    d2591 2 a2592 2

    4.2.2. Fetching d2633 2 a2634 2

    4.2.3. How to build and d2802 2 a2803 2

    4.2.4. Selecting the d2903 1 a2903 1
    5.1. d2906 1 a2906 1
    5.2. d2919 1 a2919 1
    5.3.2. d2922 1 a2922 1
    5.3.3. d2925 1 a2925 1
    5.3.4. d2928 1 a2928 1
    5.3.5. d2931 1 a2931 1
    5.3.6. d2935 1 a2935 1
    5.3.7. d2944 1 a2944 1
    5.4. d2950 1 a2950 1
    5.4.1. d2962 1 a2962 1 "id2623896" id="id2623896">5.1. Building a d3016 1 a3016 1 "id2623974" id="id2623974">5.2. Settings d3098 2 a3099 2

    5.3.1.2. 5.3.1.3. pre-build.local is to have the line:

    d3159 2 a3160 2

    5.3.2. Other environmental d3201 2 a3202 2

    5.3.3. Operation

    d3248 2 a3249 2

    5.3.4. What it does

    d3307 2 a3308 2

    5.3.5. Disk space d3350 2 a3351 2

    5.3.6. Setting up a sandbox d3540 2 a3541 2

    5.3.7. Building a partial d3693 12 a3704 2 "ls" or "du" on the FTP server to monitor progress of the upload.

    d3734 1 a3734 1 "id2625274" id="id2625274">5.4. Creating a d3757 2 a3758 2

    5.4.1. Example of d3831 1 a3831 1
    6.1. Are d3835 1 a3835 1
    6.2. d3842 1 a3842 1
    6.4. How d3845 1 a3845 1
    6.5. How d3849 1 a3849 1
    6.6. How d3852 1 a3852 1
    6.7. How d3855 1 a3855 1
    6.8. How d3858 1 a3858 1
    6.9. How d3863 1 a3863 1
    6.10. How d3866 1 a3866 1
    6.11. What d3871 1 a3871 1
    6.12. What d3875 1 a3875 1
    6.13. d3897 1 a3897 1 "id2625481" id="id2625481">6.1. Are there d3956 1 a3956 1 "id2625616" id="id2625616">6.2. Where's d4211 1 a4211 1 "id2625937" id="id2625937">6.4. How to use d4229 1 a4229 1 "id2625948" id="id2625948">6.5. How to d4243 9 a4251 5 ftp(1) by changing the FETCH_CMD variable. Don't forget to set FETCH_RESUME_ARGS and FETCH_OUTPUT_ARGS if you are not using default values.

    d4272 1 a4272 1 "id2625991" id="id2625991">6.6. How can I d4295 1 a4295 1 "id2626019" id="id2626019">6.7. How can I d4318 1 a4318 1 "id2626046" id="id2626046">6.8. How to d4343 1 a4343 1 "id2626060" id="id2626060">6.9. How do I d4377 1 a4377 1 "id2626112" id="id2626112">6.10. How to d4397 7 a4403 3 NetBSD-compatible ftp(1) (like lukemftp) at work, don't forget to set FETCH_CMD to something that fetches a URL:

    d4450 1 a4450 1 "id2626251" id="id2626251">6.11. What does d4482 1 a4482 1 "id2626290" id="id2626290">6.12. What does d4511 1 a4511 1 "id2626347" id="id2626347">6.13. Using d4518 10 a4527 6 the just-in-time su(1) feature of pkgsrc, it can become annoying to type in the root password for each required package installed. To avoid this, the sudo package can be used, which does password caching over a limited time. To use it, install sudo (either as binary package or from 7.4. d4786 1 a4786 1
    7.7. d4796 1 a4796 1
    8.1. RCS d4799 1 a4799 1
    8.2. d4810 1 a4810 1
    8.5. d4813 1 a4813 1
    8.6. d4817 1 a4817 1
    8.7. d4832 1 a4832 1
    9.1. d4835 1 a4835 1
    9.2. d4842 1 a4842 1 "#id2628941">9.2.1. Anatomy of a buildlink3.mk d4846 1 a4846 1 "#id2629382">9.2.2. Updating 9.3. d4861 1 a4861 1 "#id2629542">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4877 1 a4877 1
    10.1. d4880 1 a4880 1
    10.2. d4894 1 a4894 1
    11.2. d4908 1 a4908 1
    12.1. d4914 1 a4914 1 "#id2632073">12.1.1. How to pull in variables d4918 1 a4918 1 "#id2632156">12.1.2. Restricted d4926 1 a4926 1 "#id2632672">12.1.4. Handling conflicts with d4930 1 a4930 1 "#id2632790">12.1.5. Packages that cannot or d4934 1 a4934 1 "#id2632816">12.1.6. Packages which should not be d4942 1 a4942 1 "#id2632907">12.1.8. How to handle compiler d4946 1 a4946 1 "#id2632930">12.1.9. How to handle incrementing d4951 1 a4951 1 "#id2632979">12.1.10. Portability of d4956 1 a4956 1
    12.2. d4962 1 a4962 1 "#id2633006">12.2.1. Packages whose distfiles d4967 1 a4967 1 "#id2633069">12.2.2. How to handle modified d4972 1 a4972 1
    12.3. d4982 1 a4982 1 "#id2633438">12.3.2. Using libtool on GNU d4987 1 a4987 1 "#id2633588">12.3.3. GNU d4992 1 a4992 1
    12.4. d4998 1 a4998 1 "#id2633704">12.4.1. CPP defines
    d5002 1 a5002 1
    12.5. d5008 1 a5008 1 "#id2633805">12.5.1. Package configuration d5012 1 a5012 1 "#id2633908">12.5.2. User d5016 1 a5016 1 "#id2633953">12.5.3. Handling d5020 1 a5020 1 "#id2634036">12.5.4. Creating an account from a d5024 1 a5024 1 "#id2634166">12.5.5. Installing score d5028 1 a5028 1 "#id2634210">12.5.6. Packages providing login d5032 1 a5032 1 "#id2634267">12.5.7. Packages containing perl d5036 1 a5036 1 "#id2634422">12.5.8. Packages with hardcoded d5040 1 a5040 1 "#id2634443">12.5.9. Packages installing perl d5048 1 a5048 1 "#id2634663">12.5.11. Packages installing GConf2 d5052 1 a5052 1 "#id2634763">12.5.12. Packages installing d5056 1 a5056 1 "#id2634814">12.5.13. Packages installing X11 d5060 1 a5060 1 "#id2634861">12.5.14. Packages installing GTK2 d5064 1 a5064 1 "#id2634931">12.5.15. Packages installing SGML or d5068 1 a5068 1 "#id2635051">12.5.16. Packages installing d5072 1 a5072 1 "#id2635190">12.5.17. Packages using d5076 1 a5076 1 "#id2635204">12.5.18. Packages installing startup d5081 1 a5081 1
    12.6. d5094 1 a5094 1
    14.1. d5097 1 a5097 1
    14.2. d5101 1 a5101 1
    14.3. d5104 1 a5104 1
    14.4. d5137 1 a5137 1
    7.4. Other d5147 1 a5147 1
    7.7. d5526 1 a5526 1 "id2627420" id="id2627420">7.4. Other d5711 2 a5712 2 "id2627702" id= "id2627702">7.7. 8.1. RCS d5747 1 a5747 1
    8.2. d5758 1 a5758 1
    8.5. d5761 1 a5761 1
    8.6. d5765 1 a5765 1
    8.7. d5791 1 a5791 1 "id2627825" id="id2627825">8.1. RCS d5809 2 a5810 2 "id2627840" id= "id2627840">8.2. Semi-automatic d6004 2 a6005 2 "id2628229" id= "id2628229">8.5. Manpage-compression

    d6029 1 a6029 1 "id2628270" id="id2628270">8.6. Changing d6040 5 a6044 2 The files are later concatenated using cat(1), and order of things is important.

    d6052 1 a6052 1 "id2628288" id="id2628288">8.7. Platform d6197 1 a6197 1
    9.1. d6200 1 a6200 1
    9.2. d6206 1 a6206 1
    9.2.1. d6209 1 a6209 1
    9.2.2. d6218 1 a6218 1
    9.3. d6224 1 a6224 1
    9.3.1. d6228 1 a6228 1
    9.3.2. d6279 1 a6279 1 "id2628486" id="id2628486">9.1. Converting d6424 1 a6424 1 "id2628872" id="id2628872">9.2. Writing d6464 2 a6465 2

    9.2.1. Anatomy of a buildlink3.mk d6695 2 a6696 2

    9.2.2. Updating 9.3. Writing d6817 2 a6818 2

    9.3.1. Anatomy of a d6943 2 a6944 2

    9.3.2. Global preferences d7002 1 a7002 1
    10.1. d7005 1 a7005 1
    10.2. d7025 1 a7025 1 "id2629910" id="id2629910">10.1. Global d7043 2 a7044 2 "id2629925" id= "id2629925">10.2. Converting packages to d7207 1 a7207 1
    11.2. Main d7356 7 a7362 4 the make(1) variable DIRNAME will be set to the prefix of the installed package <package>, or “${PREFIX}/man, not 11.2. Main d7529 5 a7533 1 options to patch(1) can be handed in By default patch(1) is given special args to make it fail if the patches apply with some lines of fuzz. Please fix (regen) the patches so that they apply cleanly. The rationale behind this is that patches that don't apply cleanly may end up being applied in the wrong place, and cause severe harm there.

    d7709 7 a7715 4

    This target does a pkg_delete(1) in the current directory, effectively de-installing the package. The following variables can be used to tune the behaviour:

    d8088 6 a8093 3

    If the package installs files via tar(1) or other methods that don't update file access times, be sure to add these files manually to your d8188 1 a8188 1

    12.1. d8194 1 a8194 1 "#id2632073">12.1.1. How to pull in variables from d8198 1 a8198 1 "#id2632156">12.1.2. Restricted d8206 1 a8206 1 "#id2632672">12.1.4. Handling conflicts with other d8210 1 a8210 1 "#id2632790">12.1.5. Packages that cannot or should d8214 1 a8214 1 "#id2632816">12.1.6. Packages which should not be d8222 1 a8222 1 "#id2632907">12.1.8. How to handle compiler d8226 1 a8226 1 "#id2632930">12.1.9. How to handle incrementing d8231 1 a8231 1 "#id2632979">12.1.10. Portability of d8236 1 a8236 1
    12.2. d8242 1 a8242 1 "#id2633006">12.2.1. Packages whose distfiles d8247 1 a8247 1 "#id2633069">12.2.2. How to handle modified d8252 1 a8252 1
    12.3. d8262 1 a8262 1 "#id2633438">12.3.2. Using libtool on GNU packages d8266 1 a8266 1 "#id2633588">12.3.3. GNU d8271 1 a8271 1
    12.4. d8277 1 a8277 1 "#id2633704">12.4.1. CPP defines
    d8281 1 a8281 1
    12.5. d8287 1 a8287 1 "#id2633805">12.5.1. Package configuration d8291 1 a8291 1 "#id2633908">12.5.2. User d8295 1 a8295 1 "#id2633953">12.5.3. Handling d8299 1 a8299 1 "#id2634036">12.5.4. Creating an account from a d8303 1 a8303 1 "#id2634166">12.5.5. Installing score d8307 1 a8307 1 "#id2634210">12.5.6. Packages providing login d8311 1 a8311 1 "#id2634267">12.5.7. Packages containing perl d8315 1 a8315 1 "#id2634422">12.5.8. Packages with hardcoded paths d8319 1 a8319 1 "#id2634443">12.5.9. Packages installing perl d8327 1 a8327 1 "#id2634663">12.5.11. Packages installing GConf2 d8331 1 a8331 1 "#id2634763">12.5.12. Packages installing d8335 1 a8335 1 "#id2634814">12.5.13. Packages installing X11 d8339 1 a8339 1 "#id2634861">12.5.14. Packages installing GTK2 d8343 1 a8343 1 "#id2634931">12.5.15. Packages installing SGML or d8347 1 a8347 1 "#id2635051">12.5.16. Packages installing d8351 1 a8351 1 "#id2635190">12.5.17. Packages using d8355 1 a8355 1 "#id2635204">12.5.18. Packages installing startup d8360 1 a8360 1
    12.6. d8370 1 a8370 1 "id2632070" id="id2632070">12.1. General d8380 2 a8381 2

    12.1.1. How to pull in d8441 2 a8442 2

    12.1.2. Restricted d8728 7 a8734 3 former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the 12.1.4. Handling conflicts d8797 2 a8798 2

    12.1.5. Packages that cannot d8829 2 a8830 2

    12.1.6. Packages which d8893 2 a8894 2

    12.1.8. How to handle d8919 2 a8920 2

    12.1.9. How to handle d8960 2 a8961 2

    12.1.10. Portability of d8977 2 a8978 2

    12.1.10.1. ${INSTALL}, d9003 1 a9003 1 "id2633003" id="id2633003">12.2. Possible d9013 2 a9014 2

    12.2.1. Packages whose d9075 2 a9076 2

    12.2.2. How to handle d9105 2 a9106 2 "id2633081" id= "id2633081">12.3. Configuration d9237 7 a9243 4 loaded via dlopen(3), NOT shared libraries, use “-module -avoid-version” to prevent them getting version tacked on.

    d9325 2 a9326 2

    12.3.2. Using libtool on GNU d9404 2 a9405 2

    12.3.3. GNU d9471 1 a9471 1 "id2633701" id="id2633701">12.4. Building d9481 2 a9482 2

    12.4.1. CPP defines

    d9521 1 a9521 1 "id2633802" id="id2633802">12.5. Package d9531 2 a9532 2

    12.5.1. Package d9604 2 a9605 2

    12.5.2. User d9654 2 a9655 2

    12.5.3. Handling d9729 2 a9730 2

    12.5.4. Creating an account d9784 2 a9785 2

    12.5.5. Installing score d9822 2 a9823 2

    12.5.6. Packages providing d9858 2 a9859 2

    12.5.7. Packages containing d9877 2 a9878 2

    12.5.8. Packages with d9904 2 a9905 2

    12.5.9. Packages installing d10044 2 a10045 2

    12.5.11. Packages installing d10119 2 a10120 2

    12.5.12. Packages installing d10164 2 a10165 2

    12.5.13. Packages installing d10202 2 a10203 2

    12.5.14. Packages installing d10269 2 a10270 2

    12.5.15. Packages installing d10331 2 a10332 2

    12.5.16. Packages installing d10390 2 a10391 2

    12.5.17. Packages using d10414 2 a10415 2

    12.5.18. Packages installing d10438 1 a10438 1 "id2635225" id="id2635225">12.6. Feedback d10674 1 a10674 1
    14.1. d10677 1 a10677 1
    14.2. d10681 1 a10681 1
    14.3. d10684 1 a10684 1
    14.4. d10694 2 a10695 2 "id2635824" id= "id2635824">14.1. Submitting your d10730 4 a10733 1 Next, generate an uuencoded gzipped tar(1) archive, d10764 2 a10765 2 "id2635875" id= "id2635875">14.2. Committing: Importing a d10821 1 a10821 1 "id2635938" id="id2635938">14.3. Updating d10872 1 a10872 1 "id2635957" id="id2635957">14.4. Moving a d10973 1 a10973 1
    A.1. d10978 1 a10978 1
    A.1.1. d10981 1 a10981 1
    A.1.2. d10984 1 a10984 1
    A.1.3. d10987 1 a10987 1
    A.1.4. d10993 1 a10993 1
    A.2. Steps d11011 1 a11011 1 "id2636183" id="id2636183">A.1. files

    d11020 2 a11021 2

    A.1.1. Makefile

    d11048 2 a11049 2

    A.1.2. DESCR

    d11065 2 a11066 2

    A.1.3. PLIST

    d11083 2 a11084 2

    A.1.4. Checking a package with d11122 1 a11122 1 "id2636257" id="id2636257">A.2. Steps for d11540 1 a11540 1
    D.1. d11543 1 a11543 1
    D.2. d11556 1 a11556 1 "id2637176" id="id2637176">D.1. Targets

    d11607 2 a11608 2 "id2637378" id= "id2637378">D.2. Procedure

    @ 1.22 log @regen after USE_BUILDLINK3 nit changes @ text @d11 1 a11 1 "DocBook XSL Stylesheets V1.68.1" /> d22 2 a23 2

    The pkgsrc guide

    d68 3 a70 3

    d155 1 a155 1 "#id2509966">3.2.4. IRIX

    d158 1 a158 1 "#id2510187">3.2.5. Linux

    d161 1 a161 1 "#id2510248">3.2.6. OpenBSD d164 1 a164 1 "#id2510360">3.2.7. Solaris d182 1 a182 1 "#id2510565">4.1.1. Where to get binary d186 1 a186 1 "#id2510605">4.1.2. How to use binary d190 1 a190 1 "#id2510672">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2510693">4.2.1. d205 1 a205 1 "#id2510781">4.2.2. Fetching d209 1 a209 1 "#id2510834">4.2.3. How to build and d213 1 a213 1 "#id2511091">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2577136">5.3.2. Other environmental d246 1 a246 1 "#id2577176">5.3.3. Operation
    d249 1 a249 1 "#id2577245">5.3.4. What it d253 1 a253 1 "#id2577302">5.3.5. Disk space d257 1 a257 1 "#id2577329">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2577858">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2578378">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d374 1 a374 1
    7.4. d381 1 a381 1
    7.6. d384 1 a384 1
    7.7. d395 1 a395 1
    8.1. d398 1 a398 1
    8.2. d410 1 a410 1
    8.5. d413 1 a413 1
    8.6. d417 1 a417 1
    8.7. d432 1 a432 1
    9.1. d436 1 a436 1
    9.2. d443 1 a443 1 "#id2581934">9.2.1. Anatomy of a buildlink3.mk d447 1 a447 1 "#id2582307">9.2.2. Updating 9.3. d462 1 a462 1 "#id2582603">9.3.1. Anatomy of a 9.3.2. Global preferences for d479 1 a479 1
    10.1. d482 1 a482 1
    10.2. d497 1 a497 1
    11.2. d511 1 a511 1
    12.1. d517 1 a517 1 "#id2585066">12.1.1. How to pull in variables d521 1 a521 1 "#id2585149">12.1.2. Restricted d529 1 a529 1 "#id2585596">12.1.4. Handling conflicts with d533 1 a533 1 "#id2585715">12.1.5. Packages that cannot or d537 1 a537 1 "#id2585740">12.1.6. Packages which should not d545 1 a545 1 "#id2585832">12.1.8. How to handle compiler d549 1 a549 1 "#id2585854">12.1.9. How to handle incrementing d554 1 a554 1 "#id2585904">12.1.10. Portability of d559 1 a559 1
    12.2. d565 1 a565 1 "#id2585931">12.2.1. Packages whose distfiles d570 1 a570 1 "#id2585994">12.2.2. How to handle modified d575 1 a575 1
    12.3. d585 1 a585 1 "#id2586589">12.3.2. Using libtool on GNU d590 1 a590 1 "#id2586670">12.3.3. GNU d595 1 a595 1
    12.4. d601 1 a601 1 "#id2586787">12.4.1. CPP d606 1 a606 1
    12.5. d612 1 a612 1 "#id2586820">12.5.1. Package configuration d616 1 a616 1 "#id2586990">12.5.2. User d620 1 a620 1 "#id2587035">12.5.3. Handling d624 1 a624 1 "#id2587187">12.5.4. Creating an account from a d628 1 a628 1 "#id2587249">12.5.5. Installing score d632 1 a632 1 "#id2587292">12.5.6. Packages providing login d636 1 a636 1 "#id2587350">12.5.7. Packages containing perl d640 1 a640 1 "#id2587368">12.5.8. Packages with hardcoded d644 1 a644 1 "#id2587458">12.5.9. Packages installing perl d652 1 a652 1 "#id2587677">12.5.11. Packages installing d656 1 a656 1 "#id2587778">12.5.12. Packages installing d660 1 a660 1 "#id2587829">12.5.13. Packages installing X11 d664 1 a664 1 "#id2587876">12.5.14. Packages installing GTK2 d668 1 a668 1 "#id2587945">12.5.15. Packages installing SGML d672 1 a672 1 "#id2588066">12.5.16. Packages installing d676 1 a676 1 "#id2588273">12.5.17. Packages using d680 1 a680 1 "#id2588286">12.5.18. Packages installing d685 1 a685 1
    12.6. d698 1 a698 1
    14.1. d701 1 a701 1
    14.2. d705 1 a705 1
    14.3. d709 1 a709 1
    14.4. d721 1 a721 1
    A.1. d726 1 a726 1
    A.1.1. d729 1 a729 1
    A.1.2. d732 1 a732 1
    A.1.3. d735 1 a735 1
    A.1.4. d741 1 a741 1
    A.2. Steps d767 1 a767 1
    D.1. d770 1 a770 1
    D.2. d791 1 a791 1
    1.1. d810 2 a811 2 "id2507990" id= "id2507990">1.1. Introduction

    d1121 1 a1121 1
    2.1. As d1124 1 a1124 1
    2.2. Via d1127 1 a1127 1
    2.3. Via d1137 1 a1137 1
    3.1. d1140 1 a1140 1
    3.2. d1146 1 a1146 1 "#id2508921">3.2.1. Darwin (Mac OS d1150 1 a1150 1 "#id2509220">3.2.2. FreeBSD
    d1153 1 a1153 1 "#id2509390">3.2.3. Interix d1156 1 a1156 1 "#id2509966">3.2.4. IRIX d1159 1 a1159 1 "#id2510187">3.2.5. Linux d1162 1 a1162 1 "#id2510248">3.2.6. OpenBSD d1165 1 a1165 1 "#id2510360">3.2.7. Solaris d1183 1 a1183 1 "#id2510565">4.1.1. Where to get binary d1187 1 a1187 1 "#id2510605">4.1.2. How to use binary d1191 1 a1191 1 "#id2510672">4.1.3. A word of d1196 1 a1196 1
    4.2. d1202 1 a1202 1 "#id2510693">4.2.1. Requirements
    d1205 1 a1205 1 "#id2510781">4.2.2. Fetching d1209 1 a1209 1 "#id2510834">4.2.3. How to build and d1213 1 a1213 1 "#id2511091">4.2.4. Selecting the d1225 1 a1225 1
    5.1. d1228 1 a1228 1
    5.2. d1242 1 a1242 1 "#id2577136">5.3.2. Other environmental d1246 1 a1246 1 "#id2577176">5.3.3. Operation
    d1249 1 a1249 1 "#id2577245">5.3.4. What it does d1252 1 a1252 1 "#id2577302">5.3.5. Disk space d1256 1 a1256 1 "#id2577329">5.3.6. Setting up a sandbox for d1260 1 a1260 1 "#id2577858">5.3.7. Building a partial set of d1269 1 a1269 1
    5.4. d1276 1 a1276 1 "#id2578378">5.4.1. Example of d1288 1 a1288 1
    6.1. Are d1292 1 a1292 1
    6.2. d1299 1 a1299 1
    6.4. How d1302 1 a1302 1
    6.5. How d1306 1 a1306 1
    6.6. How d1310 1 a1310 1
    6.7. How d1313 1 a1313 1
    6.8. How d1316 1 a1316 1
    6.9. How d1321 1 a1321 1
    6.10. d1324 1 a1324 1
    6.11. d1329 1 a1329 1
    6.12. d1333 1 a1333 1
    6.13. d1363 1 a1363 1
    2.1. As d1366 1 a1366 1
    2.2. Via d1369 1 a1369 1
    2.3. Via d1383 1 a1383 1 "id2508576" id="id2508576">2.1. As tar d1401 1 a1401 1 "id2508592" id="id2508592">2.2. Via d1427 1 a1427 1 "id2508692" id="id2508692">2.3. Via d1484 1 a1484 1
    3.1. d1487 1 a1487 1
    3.2. d1492 1 a1492 1
    3.2.1. d1495 1 a1495 1
    3.2.2. d1498 1 a1498 1
    3.2.3. d1501 1 a1501 1
    3.2.4. d1504 1 a1504 1
    3.2.5. d1507 1 a1507 1
    3.2.6. d1510 1 a1510 1
    3.2.7. d1522 2 a1523 2 "id2508802" id= "id2508802">3.1. Bootstrapping pkgsrc

    d1613 1 a1613 1 "id2508915" id="id2508915">3.2. Platform d1626 2 a1627 2

    3.2.1. Darwin (Mac OS d1759 2 a1760 2

    3.2.2. FreeBSD

    d1816 2 a1817 2

    3.2.3. Interix

    d1998 2 a1999 2

    3.2.4. IRIX

    d2072 2 a2073 2

    3.2.5. Linux

    d2146 2 a2147 2

    3.2.6. OpenBSD

    d2213 2 a2214 2

    3.2.7. Solaris

    d2258 2 a2259 2

    3.2.7.1. If you are using d2288 2 a2289 2

    3.2.7.2. If you are using d2366 1 a2366 1
    4.1.1. d2369 1 a2369 1
    4.1.2. d2372 1 a2372 1
    4.1.3. d2377 1 a2377 1
    4.2. d2382 1 a2382 1
    4.2.1. d2385 1 a2385 1
    4.2.2. d2388 1 a2388 1
    4.2.3. d2391 1 a2391 1
    4.2.4. d2418 2 a2419 2

    4.1.1. Where to get binary d2450 2 a2451 2

    4.1.2. How to use binary d2458 1 a2458 1 to your hard disk, youcan install them with the d2485 26 d2521 2 a2522 2

    4.1.3. A word of d2545 1 a2545 1 "id2510683" id="id2510683">4.2. Building d2560 2 a2561 2

    4.2.1. Requirements

    d2580 2 a2581 2

    4.2.2. Fetching d2622 2 a2623 2

    4.2.3. How to build and d2791 2 a2792 2

    4.2.4. Selecting the d2892 1 a2892 1
    5.1. d2895 1 a2895 1
    5.2. d2908 1 a2908 1
    5.3.2. d2911 1 a2911 1
    5.3.3. d2914 1 a2914 1
    5.3.4. d2917 1 a2917 1
    5.3.5. d2920 1 a2920 1
    5.3.6. d2924 1 a2924 1
    5.3.7. d2933 1 a2933 1
    5.4. d2939 1 a2939 1
    5.4.1. d2951 1 a2951 1 "id2512065" id="id2512065">5.1. Building a d3005 1 a3005 1 "id2512142" id="id2512142">5.2. Settings d3030 4 a3033 4 packages from your system! Having a FTP server configured either on the machine doing the bulk builds or on a nearby NFS server can help to make the packages available to everyone. See You may want to set things in 5.3.1.2. su(8) to to do a d3113 2 a3114 2

    5.3.1.3. /usr/pkgsrc/mk/bulk it d3132 1 a3132 1 > pkgsrc/games/crafty-book-enormous/$BROKENF d3145 2 a3146 2

    5.3.2. Other environmental d3187 2 a3188 2

    5.3.3. Operation

    d3234 2 a3235 2

    5.3.4. What it does

    d3293 2 a3294 2

    5.3.5. Disk space d3336 2 a3337 2

    5.3.6. Setting up a sandbox d3345 2 a3346 2 compiling), there is the possibility of doing the pkg bulk build inside a chroot environment.

    d3434 1 a3434 1 "userinput">ln -s cvs/src-1.6 src
    d3526 2 a3527 2

    5.3.7. Building a partial d3599 1 a3599 1 will prompt you for your gpg password to sign the files d3611 1 a3611 1

    Please use appropviate values for "pkgsrc-200xQ4", d3638 1 a3638 1 needs to be setup next. This example shows how to setup d3710 1 a3710 1 "id2578363" id="id2578363">5.4. Creating a d3733 2 a3734 2

    5.4.1. Example of d3807 1 a3807 1
    6.1. Are d3811 1 a3811 1
    6.2. d3818 1 a3818 1
    6.4. How d3821 1 a3821 1
    6.5. How d3825 1 a3825 1
    6.6. How d3828 1 a3828 1
    6.7. How d3831 1 a3831 1
    6.8. How d3834 1 a3834 1
    6.9. How d3839 1 a3839 1
    6.10. How d3842 1 a3842 1
    6.11. What d3847 1 a3847 1
    6.12. What d3851 1 a3851 1
    6.13. d3873 1 a3873 1 "id2578570" id="id2578570">6.1. Are there d3932 1 a3932 1 "id2578636" id="id2578636">6.2. Where's d4187 1 a4187 1 "id2578821" id="id2578821">6.4. How to use d4205 1 a4205 1 "id2578833" id="id2578833">6.5. How to d4244 1 a4244 1 "id2578944" id="id2578944">6.6. How can I d4267 1 a4267 1 "id2578971" id="id2578971">6.7. How can I d4290 1 a4290 1 "id2578999" id="id2578999">6.8. How to d4315 1 a4315 1 "id2579013" id="id2579013">6.9. How do I d4349 1 a4349 1 "id2579064" id="id2579064">6.10. How to d4368 1 a4368 1 at work/school and use it there If you don't have a d4418 1 a4418 1 "id2579204" id="id2579204">6.11. What does d4432 3 a4434 3 “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4450 1 a4450 1 "id2579242" id="id2579242">6.12. What does d4479 1 a4479 1 "id2579300" id="id2579300">6.13. Using d4497 2 a4498 2 .if exists(/usr/pkg/bin/sudo) SU_CMD=/usr/pkg/bin/sudo /bin/sh -c d4695 9 a4703 30

    Use of the audit-packages package is strongly recommended!

    The following message is displayed as part of the audit-packages installation procedure:

    ===========================================================================
    $NetBSD: faq.xml,v 1.5 2005/02/24 14:24:32 jschauma Exp $
    
    You may wish to have the vulnerabilities file downloaded daily so that
    it remains current.  This may be done by adding an appropriate entry
    to the root users crontab(5) entry.  For example the entry
    
    # download vulnerabilities file
    0 3 * * * ${PREFIX}/sbin/download-vulnerability-list >/dev/null 2>&1
    
    will update the vulnerability list every day at 3AM. You may wish to do
    this more often than once a day.
    
    In addition, you may wish to run the package audit from the daily
    security script.  This may be accomplished by adding the following
    lines to /etc/security.local
    
    if [ -x ${PREFIX}/sbin/audit-packages ]; then
              ${PREFIX}/sbin/audit-packages
    fi
    
    ===========================================================================
        
    
    d4740 1 a4740 1
    7.4. d4747 1 a4747 1
    7.6. d4750 1 a4750 1
    7.7. d4760 1 a4760 1
    8.1. RCS d4763 1 a4763 1
    8.2. d4774 1 a4774 1
    8.5. d4777 1 a4777 1
    8.6. d4781 1 a4781 1
    8.7. d4796 1 a4796 1
    9.1. d4799 1 a4799 1
    9.2. d4806 1 a4806 1 "#id2581934">9.2.1. Anatomy of a buildlink3.mk d4810 1 a4810 1 "#id2582307">9.2.2. Updating 9.3. d4825 1 a4825 1 "#id2582603">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4841 1 a4841 1
    10.1. d4844 1 a4844 1
    10.2. d4858 1 a4858 1
    11.2. d4872 1 a4872 1
    12.1. d4878 1 a4878 1 "#id2585066">12.1.1. How to pull in variables d4882 1 a4882 1 "#id2585149">12.1.2. Restricted d4890 1 a4890 1 "#id2585596">12.1.4. Handling conflicts with d4894 1 a4894 1 "#id2585715">12.1.5. Packages that cannot or d4898 1 a4898 1 "#id2585740">12.1.6. Packages which should not be d4906 1 a4906 1 "#id2585832">12.1.8. How to handle compiler d4910 1 a4910 1 "#id2585854">12.1.9. How to handle incrementing d4915 1 a4915 1 "#id2585904">12.1.10. Portability of d4920 1 a4920 1
    12.2. d4926 1 a4926 1 "#id2585931">12.2.1. Packages whose distfiles d4931 1 a4931 1 "#id2585994">12.2.2. How to handle modified d4936 1 a4936 1
    12.3. d4946 1 a4946 1 "#id2586589">12.3.2. Using libtool on GNU d4951 1 a4951 1 "#id2586670">12.3.3. GNU d4956 1 a4956 1
    12.4. d4962 1 a4962 1 "#id2586787">12.4.1. CPP defines
    d4966 1 a4966 1
    12.5. d4972 1 a4972 1 "#id2586820">12.5.1. Package configuration d4976 1 a4976 1 "#id2586990">12.5.2. User d4980 1 a4980 1 "#id2587035">12.5.3. Handling d4984 1 a4984 1 "#id2587187">12.5.4. Creating an account from a d4988 1 a4988 1 "#id2587249">12.5.5. Installing score d4992 1 a4992 1 "#id2587292">12.5.6. Packages providing login d4996 1 a4996 1 "#id2587350">12.5.7. Packages containing perl d5000 1 a5000 1 "#id2587368">12.5.8. Packages with hardcoded d5004 1 a5004 1 "#id2587458">12.5.9. Packages installing perl d5012 1 a5012 1 "#id2587677">12.5.11. Packages installing GConf2 d5016 1 a5016 1 "#id2587778">12.5.12. Packages installing d5020 1 a5020 1 "#id2587829">12.5.13. Packages installing X11 d5024 1 a5024 1 "#id2587876">12.5.14. Packages installing GTK2 d5028 1 a5028 1 "#id2587945">12.5.15. Packages installing SGML or d5032 1 a5032 1 "#id2588066">12.5.16. Packages installing d5036 1 a5036 1 "#id2588273">12.5.17. Packages using d5040 1 a5040 1 "#id2588286">12.5.18. Packages installing startup d5045 1 a5045 1
    12.6. d5058 1 a5058 1
    14.1. d5061 1 a5061 1
    14.2. d5065 1 a5065 1
    14.3. d5068 1 a5068 1
    14.4. d5101 1 a5101 1
    7.4. Other d5108 1 a5108 1
    7.6. d5111 1 a5111 1
    7.7. d5134 60 a5193 1 "filename">Makefile.

    d5195 7 a5201 22

    There is a Makefile for each package. This file includes the standard bsd.pkg.mk file (referenced as ../../mk/bsd.pkg.mk), which sets all the definitions and actions necessary for the package to compile and install itself. The mandatory variables are the DISTNAME which specifies the base name of the distribution file to be downloaded from the site on the Internet, MASTER_SITES which specifies that site, CATEGORIES which denotes the categories into which the package falls, PKGNAME which is the name of the package, the MAINTAINER's name, and the COMMENT variable, which should contain a one-line description of the package (the package name should not appear, it will be added automatically). The maintainer variable is there so that anyone who quibbles with the (always completely correct) decisions taken by the guy who maintains the package can complain vigorously, or send chocolate as a sign of appreciation.

    d5490 1 a5490 1 "id2580482" id="id2580482">
    7.4. Other d5614 2 a5615 2 "id2580608" id= "id2580608">7.6. 7.7. 8.1. RCS d5711 1 a5711 1
    8.2. d5722 1 a5722 1
    8.5. d5725 1 a5725 1
    8.6. d5729 1 a5729 1
    8.7. d5755 1 a5755 1 "id2580818" id="id2580818">8.1. RCS d5773 2 a5774 2 "id2580901" id= "id2580901">8.2. Semi-automatic d5968 2 a5969 2 "id2581290" id= "id2581290">8.5. Manpage-compression

    d5993 1 a5993 1 "id2581332" id="id2581332">8.6. Changing d6013 1 a6013 1 "id2581349" id="id2581349">8.7. Platform d6158 1 a6158 1
    9.1. d6161 1 a6161 1
    9.2. d6167 1 a6167 1
    9.2.1. d6170 1 a6170 1
    9.2.2. d6179 1 a6179 1
    9.3. d6185 1 a6185 1
    9.3.1. d6189 1 a6189 1
    9.3.2. d6240 1 a6240 1 "id2581547" id="id2581547">9.1. Converting d6385 1 a6385 1 "id2581865" id="id2581865">9.2. Writing d6425 2 a6426 2

    9.2.1. Anatomy of a buildlink3.mk d6656 2 a6657 2

    9.2.2. Updating 9.3. Writing d6778 2 a6779 2

    9.3.1. Anatomy of a d6904 2 a6905 2

    9.3.2. Global preferences d6963 1 a6963 1
    10.1. d6966 1 a6966 1
    10.2. d6986 1 a6986 1 "id2582903" id="id2582903">10.1. Global d7004 2 a7005 2 "id2582918" id= "id2582918">10.2. Converting packages to d7013 1 a7013 1 "filename">bsd.options.mk should be use in a d7168 1 a7168 1
    11.2. Main d7365 1 a7365 1 "id2583526" id="id2583526">11.2. Main d8131 1 a8131 1
    12.1. d8137 1 a8137 1 "#id2585066">12.1.1. How to pull in variables from d8141 1 a8141 1 "#id2585149">12.1.2. Restricted d8149 1 a8149 1 "#id2585596">12.1.4. Handling conflicts with other d8153 1 a8153 1 "#id2585715">12.1.5. Packages that cannot or should d8157 1 a8157 1 "#id2585740">12.1.6. Packages which should not be d8165 1 a8165 1 "#id2585832">12.1.8. How to handle compiler d8169 1 a8169 1 "#id2585854">12.1.9. How to handle incrementing d8174 1 a8174 1 "#id2585904">12.1.10. Portability of d8179 1 a8179 1
    12.2. d8185 1 a8185 1 "#id2585931">12.2.1. Packages whose distfiles d8190 1 a8190 1 "#id2585994">12.2.2. How to handle modified d8195 1 a8195 1
    12.3. d8205 1 a8205 1 "#id2586589">12.3.2. Using libtool on GNU packages d8209 1 a8209 1 "#id2586670">12.3.3. GNU d8214 1 a8214 1
    12.4. d8220 1 a8220 1 "#id2586787">12.4.1. CPP defines
    d8224 1 a8224 1
    12.5. d8230 1 a8230 1 "#id2586820">12.5.1. Package configuration d8234 1 a8234 1 "#id2586990">12.5.2. User d8238 1 a8238 1 "#id2587035">12.5.3. Handling d8242 1 a8242 1 "#id2587187">12.5.4. Creating an account from a d8246 1 a8246 1 "#id2587249">12.5.5. Installing score d8250 1 a8250 1 "#id2587292">12.5.6. Packages providing login d8254 1 a8254 1 "#id2587350">12.5.7. Packages containing perl d8258 1 a8258 1 "#id2587368">12.5.8. Packages with hardcoded paths d8262 1 a8262 1 "#id2587458">12.5.9. Packages installing perl d8270 1 a8270 1 "#id2587677">12.5.11. Packages installing GConf2 d8274 1 a8274 1 "#id2587778">12.5.12. Packages installing d8278 1 a8278 1 "#id2587829">12.5.13. Packages installing X11 d8282 1 a8282 1 "#id2587876">12.5.14. Packages installing GTK2 d8286 1 a8286 1 "#id2587945">12.5.15. Packages installing SGML or d8290 1 a8290 1 "#id2588066">12.5.16. Packages installing d8294 1 a8294 1 "#id2588273">12.5.17. Packages using d8298 1 a8298 1 "#id2588286">12.5.18. Packages installing startup d8303 1 a8303 1
    12.6. d8313 1 a8313 1 "id2585063" id="id2585063">12.1. General d8323 2 a8324 2

    12.1.1. How to pull in d8384 2 a8385 2

    12.1.2. Restricted d8688 2 a8689 2

    12.1.4. Handling conflicts d8736 2 a8737 2

    12.1.5. Packages that cannot d8768 2 a8769 2

    12.1.6. Packages which d8832 2 a8833 2

    12.1.8. How to handle d8858 2 a8859 2

    12.1.9. How to handle d8899 2 a8900 2

    12.1.10. Portability of d8916 2 a8917 2

    12.1.10.1. ${INSTALL}, d8942 1 a8942 1 "id2585928" id="id2585928">12.2. Possible d8952 2 a8953 2

    12.2.1. Packages whose d9014 2 a9015 2

    12.2.2. How to handle d9044 2 a9045 2 "id2586006" id= "id2586006">12.3. Configuration d9249 3 a9251 8 include all of the .a, .la, and .so, .so.CURRENT and .so.CURRENT.REVISION files (this is a change from the previous behaviour).

    d9261 2 a9262 2

    12.3.2. Using libtool on GNU d9340 2 a9341 2

    12.3.3. GNU d9407 1 a9407 1 "id2586784" id="id2586784">12.4. Building d9417 2 a9418 2

    12.4.1. CPP defines

    d9457 1 a9457 1 "id2586817" id="id2586817">12.5. Package d9467 2 a9468 2

    12.5.1. Package d9540 2 a9541 2

    12.5.2. User d9590 2 a9591 2

    12.5.3. Handling d9665 2 a9666 2

    12.5.4. Creating an account d9720 2 a9721 2

    12.5.5. Installing score d9758 2 a9759 2

    12.5.6. Packages providing d9794 2 a9795 2

    12.5.7. Packages containing d9813 2 a9814 2

    12.5.8. Packages with d9840 2 a9841 2

    12.5.9. Packages installing d9980 2 a9981 2

    12.5.11. Packages installing d10055 2 a10056 2

    12.5.12. Packages installing d10100 2 a10101 2

    12.5.13. Packages installing d10138 2 a10139 2

    12.5.14. Packages installing d10205 2 a10206 2

    12.5.15. Packages installing d10267 2 a10268 2

    12.5.16. Packages installing d10326 2 a10327 2

    12.5.17. Packages using d10350 2 a10351 2

    12.5.18. Packages installing d10374 1 a10374 1 "id2588308" id="id2588308">12.6. Feedback d10610 1 a10610 1
    14.1. d10613 1 a10613 1
    14.2. d10617 1 a10617 1
    14.3. d10620 1 a10620 1
    14.4. d10630 2 a10631 2 "id2588838" id= "id2588838">14.1. Submitting your d10697 2 a10698 2 "id2588889" id= "id2588889">14.2. Committing: Importing a d10754 1 a10754 1 "id2589020" id="id2589020">14.3. Updating d10805 1 a10805 1 "id2589040" id="id2589040">14.4. Moving a d10906 1 a10906 1
    A.1. d10911 1 a10911 1
    A.1.1. d10914 1 a10914 1
    A.1.2. d10917 1 a10917 1
    A.1.3. d10920 1 a10920 1
    A.1.4. d10926 1 a10926 1
    A.2. Steps d10944 1 a10944 1 "id2589266" id="id2589266">A.1. files

    d10953 2 a10954 2

    A.1.1. Makefile

    d10981 2 a10982 2

    A.1.2. DESCR

    d10998 2 a10999 2

    A.1.3. PLIST

    d11016 2 a11017 2

    A.1.4. Checking a package with d11055 1 a11055 1 "id2589339" id="id2589339">A.2. Steps for d11473 1 a11473 1
    D.1. d11476 1 a11476 1
    D.2. d11489 1 a11489 1 "id2590054" id="id2590054">D.1. Targets

    d11502 1 a11502 3 "filename">pkgsrc/doc/pkgsrc.txt
    , which replaces pkgsrc/Packages.txt

    d11540 2 a11541 2 "id2590124" id= "id2590124">D.2. Procedure

    @ 1.21 log @Re-generate. (Update plist.xml to reflect recent changes of the default value for PLIST_SRC with respect to PR#29569). @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2518025">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2518187">3.2.2. FreeBSD
    d152 1 a152 1 "#id2518768">3.2.3. Interix

    d155 1 a155 1 "#id2518926">3.2.4. IRIX d158 1 a158 1 "#id2519044">3.2.5. OpenBSD d161 4 a164 1 "#id2519156">3.2.6. Solaris d182 1 a182 1 "#id2519292">4.1.1. Where to get binary d186 1 a186 1 "#id2519333">4.1.2. How to use binary d190 1 a190 1 "#id2519467">4.1.3. A word of d195 1 a195 1
    4.2. d201 1 a201 1 "#id2519489">4.2.1. d205 1 a205 1 "#id2519509">4.2.2. Fetching d209 1 a209 1 "#id2519561">4.2.3. How to build and d213 1 a213 1 "#id2520288">4.2.4. Selecting the d225 1 a225 1
    5.1. d228 1 a228 1
    5.2. d242 1 a242 1 "#id2585786">5.3.2. Other environmental d246 1 a246 1 "#id2585827">5.3.3. Operation
    d249 1 a249 1 "#id2585964">5.3.4. What it d253 1 a253 1 "#id2586021">5.3.5. Disk space d257 1 a257 1 "#id2586048">5.3.6. Setting up a sandbox for d261 1 a261 1 "#id2586508">5.3.7. Building a partial set of d270 1 a270 1
    5.4. d277 1 a277 1 "#id2586961">5.4.1. Example of d289 1 a289 1
    6.1. d293 1 a293 1
    6.2. d300 1 a300 1
    6.4. d303 1 a303 1
    6.5. d307 1 a307 1
    6.6. d311 1 a311 1
    6.7. d315 1 a315 1
    6.8. d319 1 a319 1
    6.9. d324 1 a324 1
    6.10. d327 1 a327 1
    6.11. d332 1 a332 1
    6.12. d336 1 a336 1
    6.13. d374 1 a374 1
    7.4. d381 1 a381 1
    7.6. d384 1 a384 1
    7.7. d395 1 a395 1
    8.1. d398 1 a398 1
    8.2. d410 1 a410 1
    8.5. d413 1 a413 1
    8.6. d417 1 a417 1
    8.7. d432 1 a432 1
    9.1. d436 1 a436 1
    9.2. d443 1 a443 1 "#id2590595">9.2.1. Anatomy of a buildlink3.mk d447 1 a447 1 "#id2591035">9.2.2. Updating 9.3. d462 1 a462 1 "#id2591400">9.3.1. Anatomy of a 9.3.2. Global preferences for d479 1 a479 1
    10.1. d482 1 a482 1
    10.2. d497 1 a497 1
    11.2. d511 1 a511 1
    12.1. d517 1 a517 1 "#id2593726">12.1.1. How to pull in variables d521 1 a521 1 "#id2593878">12.1.2. Restricted d529 1 a529 1 "#id2594393">12.1.4. Handling conflicts with d533 1 a533 1 "#id2594443">12.1.5. Packages that cannot or d537 1 a537 1 "#id2594469">12.1.6. Packages which should not d545 1 a545 1 "#id2594629">12.1.8. How to handle compiler d549 1 a549 1 "#id2594651">12.1.9. How to handle incrementing d554 1 a554 1 "#id2594700">12.1.10. Portability of d559 1 a559 1
    12.2. d565 1 a565 1 "#id2594728">12.2.1. Packages whose distfiles d570 1 a570 1 "#id2594791">12.2.2. How to handle modified d575 1 a575 1
    12.3. d585 1 a585 1 "#id2595250">12.3.2. Using libtool on GNU d590 1 a590 1 "#id2595334">12.3.3. GNU d595 1 a595 1
    12.4. d601 1 a601 1 "#id2595382">12.4.1. CPP d606 1 a606 1
    12.5. d612 1 a612 1 "#id2595415">12.5.1. Package configuration d616 1 a616 1 "#id2595722">12.5.2. User d620 1 a620 1 "#id2595767">12.5.3. Handling d624 1 a624 1 "#id2595918">12.5.4. Creating an account from a d628 1 a628 1 "#id2595980">12.5.5. Installing score d632 1 a632 1 "#id2596024">12.5.6. Packages providing login d636 1 a636 1 "#id2596082">12.5.7. Packages containing perl d640 1 a640 1 "#id2596100">12.5.8. Packages with hardcoded d644 1 a644 1 "#id2596121">12.5.9. Packages installing perl d652 1 a652 1 "#id2596341">12.5.11. Packages installing d656 1 a656 1 "#id2596441">12.5.12. Packages installing d660 1 a660 1 "#id2596561">12.5.13. Packages installing X11 d664 1 a664 1 "#id2596608">12.5.14. Packages installing GTK2 d668 1 a668 1 "#id2596745">12.5.15. Packages installing SGML d672 1 a672 1 "#id2596797">12.5.16. Packages installing d676 1 a676 1 "#id2597004">12.5.17. Packages using d680 1 a680 1 "#id2597018">12.5.18. Packages installing d685 1 a685 1
    12.6. d698 1 a698 1
    14.1. d701 1 a701 1
    14.2. d705 1 a705 1
    14.3. d709 1 a709 1
    14.4. d721 1 a721 1
    A.1. d726 1 a726 1
    A.1.1. d729 1 a729 1
    A.1.2. d732 1 a732 1
    A.1.3. d735 1 a735 1
    A.1.4. d741 1 a741 1
    A.2. Steps d767 1 a767 1
    D.1. d770 1 a770 1
    D.2. d791 1 a791 1
    1.1. d810 2 a811 2 "id2516957" id= "id2516957">1.1. Introduction

    d1121 1 a1121 1
    2.1. As d1124 1 a1124 1
    2.2. Via d1127 1 a1127 1
    2.3. Via d1137 1 a1137 1
    3.1. d1140 1 a1140 1
    3.2. d1146 1 a1146 1 "#id2518025">3.2.1. Darwin (Mac OS d1150 4 a1153 1 "#id2518187">3.2.2. FreeBSD
    d1156 1 a1156 1 "#id2518768">3.2.3. Interix d1159 1 a1159 1 "#id2518926">3.2.4. IRIX d1162 1 a1162 1 "#id2519044">3.2.5. OpenBSD d1165 1 a1165 1 "#id2519156">3.2.6. Solaris d1183 1 a1183 1 "#id2519292">4.1.1. Where to get binary d1187 1 a1187 1 "#id2519333">4.1.2. How to use binary d1191 1 a1191 1 "#id2519467">4.1.3. A word of d1196 1 a1196 1
    4.2. d1202 1 a1202 1 "#id2519489">4.2.1. Requirements
    d1205 1 a1205 1 "#id2519509">4.2.2. Fetching d1209 1 a1209 1 "#id2519561">4.2.3. How to build and d1213 1 a1213 1 "#id2520288">4.2.4. Selecting the d1225 1 a1225 1
    5.1. d1228 1 a1228 1
    5.2. d1242 1 a1242 1 "#id2585786">5.3.2. Other environmental d1246 1 a1246 1 "#id2585827">5.3.3. Operation
    d1249 1 a1249 1 "#id2585964">5.3.4. What it does d1252 1 a1252 1 "#id2586021">5.3.5. Disk space d1256 1 a1256 1 "#id2586048">5.3.6. Setting up a sandbox for d1260 1 a1260 1 "#id2586508">5.3.7. Building a partial set of d1269 1 a1269 1
    5.4. d1276 1 a1276 1 "#id2586961">5.4.1. Example of d1288 1 a1288 1
    6.1. Are d1292 1 a1292 1
    6.2. d1299 1 a1299 1
    6.4. How d1302 1 a1302 1
    6.5. How d1306 1 a1306 1
    6.6. How d1310 1 a1310 1
    6.7. How d1313 1 a1313 1
    6.8. How d1316 1 a1316 1
    6.9. How d1321 1 a1321 1
    6.10. d1324 1 a1324 1
    6.11. d1329 1 a1329 1
    6.12. d1333 1 a1333 1
    6.13. d1363 1 a1363 1
    2.1. As d1366 1 a1366 1
    2.2. Via d1369 1 a1369 1
    2.3. Via d1383 1 a1383 1 "id2517611" id="id2517611">2.1. As tar d1401 1 a1401 1 "id2517627" id="id2517627">2.2. Via d1427 1 a1427 1 "id2517659" id="id2517659">2.3. Via d1484 1 a1484 1
    3.1. d1487 1 a1487 1
    3.2. d1492 1 a1492 1
    3.2.1. d1495 1 a1495 1
    3.2.2. d1498 1 a1498 1
    3.2.3. d1501 1 a1501 1
    3.2.4. d1504 4 a1507 1
    3.2.5. d1510 1 a1510 1
    3.2.6. d1522 2 a1523 2 "id2517769" id= "id2517769">3.1. Bootstrapping pkgsrc

    d1613 1 a1613 1 "id2518019" id="id2518019">3.2. Platform d1626 2 a1627 2

    3.2.1. Darwin (Mac OS d1717 1 a1717 1 "userinput">./bootstrap --pkgdbdir=/usr/pkg/pkgdb --pkgsrcdir=/Volumes/ufs/pkgsrc d1759 2 a1760 2

    3.2.2. FreeBSD

    d1816 2 a1817 2

    3.2.3. Interix

    d1827 3 a1829 2 Windows 2000, XP, or 2003. SFU can be downloaded from 3.2.4. IRIX

    d2045 21 d2072 76 a2147 2

    3.2.5. OpenBSD

    d2213 2 a2214 2

    3.2.6. Solaris

    d2258 2 a2259 2

    3.2.6.1. If you are using d2288 2 a2289 2

    3.2.6.2. If you are using d2366 1 a2366 1
    4.1.1. d2369 1 a2369 1
    4.1.2. d2372 1 a2372 1
    4.1.3. d2377 1 a2377 1
    4.2. d2382 1 a2382 1
    4.2.1. d2385 1 a2385 1
    4.2.2. d2388 1 a2388 1
    4.2.3. d2391 1 a2391 1
    4.2.4. d2418 2 a2419 2

    4.1.1. Where to get binary d2450 2 a2451 2

    4.1.2. How to use binary d2495 2 a2496 2

    4.1.3. A word of d2519 1 a2519 1 "id2519479" id="id2519479">4.2. Building d2534 2 a2535 2

    4.2.1. Requirements

    d2554 2 a2555 2

    4.2.2. Fetching d2596 2 a2597 2

    4.2.3. How to build and d2699 5 a2703 1 make(1) definition, then the DISTFILES:

    d2765 2 a2766 2

    4.2.4. Selecting the d2866 1 a2866 1
    5.1. d2869 1 a2869 1
    5.2. d2882 1 a2882 1
    5.3.2. d2885 1 a2885 1
    5.3.3. d2888 1 a2888 1
    5.3.4. d2891 1 a2891 1
    5.3.5. d2894 1 a2894 1
    5.3.6. d2898 1 a2898 1
    5.3.7. d2907 1 a2907 1
    5.4. d2913 1 a2913 1
    5.4.1. d2925 1 a2925 1 "id2520374" id="id2520374">5.1. Building a d2979 1 a2979 1 "id2585578" id="id2585578">5.2. Settings d3061 2 a3062 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3161 2 a3162 2

    5.3.3. Operation

    d3208 2 a3209 2

    5.3.4. What it does

    d3267 2 a3268 2

    5.3.5. Disk space d3310 2 a3311 2

    5.3.6. Setting up a sandbox d3500 2 a3501 2

    5.3.7. Building a partial d3684 1 a3684 1 "id2586946" id="id2586946">5.4. Creating a d3707 2 a3708 2

    5.4.1. Example of d3781 1 a3781 1
    6.1. Are d3785 1 a3785 1
    6.2. d3792 1 a3792 1
    6.4. How d3795 1 a3795 1
    6.5. How d3799 1 a3799 1
    6.6. How d3802 1 a3802 1
    6.7. How d3805 1 a3805 1
    6.8. How d3808 1 a3808 1
    6.9. How d3813 1 a3813 1
    6.10. How d3816 1 a3816 1
    6.11. What d3821 1 a3821 1
    6.12. What d3825 1 a3825 1
    6.13. d3847 1 a3847 1 "id2587153" id="id2587153">6.1. Are there d3906 1 a3906 1 "id2587355" id="id2587355">6.2. Where's d4161 1 a4161 1 "id2587540" id="id2587540">6.4. How to use d4179 1 a4179 1 "id2587552" id="id2587552">6.5. How to d4218 1 a4218 1 "id2587594" id="id2587594">6.6. How can I d4241 1 a4241 1 "id2587622" id="id2587622">6.7. How can I d4264 1 a4264 1 "id2587650" id="id2587650">6.8. How to d4289 1 a4289 1 "id2587664" id="id2587664">6.9. How do I d4323 1 a4323 1 "id2587715" id="id2587715">6.10. How to d4392 1 a4392 1 "id2587923" id="id2587923">6.11. What does d4424 1 a4424 1 "id2587961" id="id2587961">6.12. What does d4453 1 a4453 1 "id2588087" id="id2588087">6.13. Using d4735 1 a4735 1
    7.4. d4742 1 a4742 1
    7.6. d4745 1 a4745 1
    7.7. d4755 1 a4755 1
    8.1. RCS d4758 1 a4758 1
    8.2. d4769 1 a4769 1
    8.5. d4772 1 a4772 1
    8.6. d4776 1 a4776 1
    8.7. d4791 1 a4791 1
    9.1. d4794 1 a4794 1
    9.2. d4801 1 a4801 1 "#id2590595">9.2.1. Anatomy of a buildlink3.mk d4805 1 a4805 1 "#id2591035">9.2.2. Updating 9.3. d4820 1 a4820 1 "#id2591400">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4836 1 a4836 1
    10.1. d4839 1 a4839 1
    10.2. d4853 1 a4853 1
    11.2. d4867 1 a4867 1
    12.1. d4873 1 a4873 1 "#id2593726">12.1.1. How to pull in variables d4877 1 a4877 1 "#id2593878">12.1.2. Restricted d4885 1 a4885 1 "#id2594393">12.1.4. Handling conflicts with d4889 1 a4889 1 "#id2594443">12.1.5. Packages that cannot or d4893 1 a4893 1 "#id2594469">12.1.6. Packages which should not be d4901 1 a4901 1 "#id2594629">12.1.8. How to handle compiler d4905 1 a4905 1 "#id2594651">12.1.9. How to handle incrementing d4910 1 a4910 1 "#id2594700">12.1.10. Portability of d4915 1 a4915 1
    12.2. d4921 1 a4921 1 "#id2594728">12.2.1. Packages whose distfiles d4926 1 a4926 1 "#id2594791">12.2.2. How to handle modified d4931 1 a4931 1
    12.3. d4941 1 a4941 1 "#id2595250">12.3.2. Using libtool on GNU d4946 1 a4946 1 "#id2595334">12.3.3. GNU d4951 1 a4951 1
    12.4. d4957 1 a4957 1 "#id2595382">12.4.1. CPP defines
    d4961 1 a4961 1
    12.5. d4967 1 a4967 1 "#id2595415">12.5.1. Package configuration d4971 1 a4971 1 "#id2595722">12.5.2. User d4975 1 a4975 1 "#id2595767">12.5.3. Handling d4979 1 a4979 1 "#id2595918">12.5.4. Creating an account from a d4983 1 a4983 1 "#id2595980">12.5.5. Installing score d4987 1 a4987 1 "#id2596024">12.5.6. Packages providing login d4991 1 a4991 1 "#id2596082">12.5.7. Packages containing perl d4995 1 a4995 1 "#id2596100">12.5.8. Packages with hardcoded d4999 1 a4999 1 "#id2596121">12.5.9. Packages installing perl d5007 1 a5007 1 "#id2596341">12.5.11. Packages installing GConf2 d5011 1 a5011 1 "#id2596441">12.5.12. Packages installing d5015 1 a5015 1 "#id2596561">12.5.13. Packages installing X11 d5019 1 a5019 1 "#id2596608">12.5.14. Packages installing GTK2 d5023 1 a5023 1 "#id2596745">12.5.15. Packages installing SGML or d5027 1 a5027 1 "#id2596797">12.5.16. Packages installing d5031 1 a5031 1 "#id2597004">12.5.17. Packages using d5035 1 a5035 1 "#id2597018">12.5.18. Packages installing startup d5040 1 a5040 1
    12.6. d5053 1 a5053 1
    14.1. d5056 1 a5056 1
    14.2. d5060 1 a5060 1
    14.3. d5063 1 a5063 1
    14.4. d5096 1 a5096 1
    7.4. Other d5103 1 a5103 1
    7.6. d5106 1 a5106 1
    7.7. d5441 1 a5441 1 "id2589201" id="id2589201">7.4. Other d5565 2 a5566 2 "id2589326" id= "id2589326">7.6. 7.7. 8.1. RCS d5662 1 a5662 1
    8.2. d5673 1 a5673 1
    8.5. d5676 1 a5676 1
    8.6. d5680 1 a5680 1
    8.7. d5706 1 a5706 1 "id2589537" id="id2589537">8.1. RCS d5724 2 a5725 2 "id2589552" id= "id2589552">8.2. Semi-automatic d5919 2 a5920 2 "id2589941" id= "id2589941">8.5. Manpage-compression

    d5944 1 a5944 1 "id2589982" id="id2589982">8.6. Changing d5964 1 a5964 1 "id2590000" id="id2590000">8.7. Platform d6109 1 a6109 1
    9.1. d6112 1 a6112 1
    9.2. d6118 1 a6118 1
    9.2.1. d6121 1 a6121 1
    9.2.2. d6130 1 a6130 1
    9.3. d6136 1 a6136 1
    9.3.1. d6140 1 a6140 1
    9.3.2. d6191 1 a6191 1 "id2590334" id="id2590334">9.1. Converting a6204 6

    Set USE_BUILDLINK3 to “yes”.

  • d6336 1 a6336 1 "id2590525" id="id2590525">9.2. Writing d6376 2 a6377 2

    9.2.1. Anatomy of a buildlink3.mk d6607 2 a6608 2

    9.2.2. Updating 9.3. Writing d6729 2 a6730 2

    9.3.1. Anatomy of a d6855 2 a6856 2

    9.3.2. Global preferences d6914 1 a6914 1
    10.1. d6917 1 a6917 1
    10.2. d6937 1 a6937 1 "id2591700" id="id2591700">10.1. Global d6955 2 a6956 2 "id2591715" id= "id2591715">10.2. Converting packages to d7119 1 a7119 1
    11.2. Main d7316 1 a7316 1 "id2592323" id="id2592323">11.2. Main d8082 1 a8082 1
    12.1. d8088 1 a8088 1 "#id2593726">12.1.1. How to pull in variables from d8092 1 a8092 1 "#id2593878">12.1.2. Restricted d8100 1 a8100 1 "#id2594393">12.1.4. Handling conflicts with other d8104 1 a8104 1 "#id2594443">12.1.5. Packages that cannot or should d8108 1 a8108 1 "#id2594469">12.1.6. Packages which should not be d8116 1 a8116 1 "#id2594629">12.1.8. How to handle compiler d8120 1 a8120 1 "#id2594651">12.1.9. How to handle incrementing d8125 1 a8125 1 "#id2594700">12.1.10. Portability of d8130 1 a8130 1
    12.2. d8136 1 a8136 1 "#id2594728">12.2.1. Packages whose distfiles d8141 1 a8141 1 "#id2594791">12.2.2. How to handle modified d8146 1 a8146 1
    12.3. d8156 1 a8156 1 "#id2595250">12.3.2. Using libtool on GNU packages d8160 1 a8160 1 "#id2595334">12.3.3. GNU d8165 1 a8165 1
    12.4. d8171 1 a8171 1 "#id2595382">12.4.1. CPP defines
    d8175 1 a8175 1
    12.5. d8181 1 a8181 1 "#id2595415">12.5.1. Package configuration d8185 1 a8185 1 "#id2595722">12.5.2. User d8189 1 a8189 1 "#id2595767">12.5.3. Handling d8193 1 a8193 1 "#id2595918">12.5.4. Creating an account from a d8197 1 a8197 1 "#id2595980">12.5.5. Installing score d8201 1 a8201 1 "#id2596024">12.5.6. Packages providing login d8205 1 a8205 1 "#id2596082">12.5.7. Packages containing perl d8209 1 a8209 1 "#id2596100">12.5.8. Packages with hardcoded paths d8213 1 a8213 1 "#id2596121">12.5.9. Packages installing perl d8221 1 a8221 1 "#id2596341">12.5.11. Packages installing GConf2 d8225 1 a8225 1 "#id2596441">12.5.12. Packages installing d8229 1 a8229 1 "#id2596561">12.5.13. Packages installing X11 d8233 1 a8233 1 "#id2596608">12.5.14. Packages installing GTK2 d8237 1 a8237 1 "#id2596745">12.5.15. Packages installing SGML or d8241 1 a8241 1 "#id2596797">12.5.16. Packages installing d8245 1 a8245 1 "#id2597004">12.5.17. Packages using d8249 1 a8249 1 "#id2597018">12.5.18. Packages installing startup d8254 1 a8254 1
    12.6. d8264 1 a8264 1 "id2593723" id="id2593723">12.1. General d8274 2 a8275 2

    12.1.1. How to pull in d8335 2 a8336 2

    12.1.2. Restricted d8639 2 a8640 2

    12.1.4. Handling conflicts d8687 2 a8688 2

    12.1.5. Packages that cannot d8719 2 a8720 2

    12.1.6. Packages which d8783 2 a8784 2

    12.1.8. How to handle d8809 2 a8810 2

    12.1.9. How to handle d8850 2 a8851 2

    12.1.10. Portability of d8867 2 a8868 2

    12.1.10.1. ${INSTALL}, d8893 1 a8893 1 "id2594725" id="id2594725">12.2. Possible d8903 2 a8904 2

    12.2.1. Packages whose d8965 2 a8966 2

    12.2.2. How to handle d8995 2 a8996 2 "id2594803" id= "id2594803">12.3. Configuration d9217 2 a9218 2

    12.3.2. Using libtool on GNU d9249 1 a9249 2 the libtool buildlink3.mk (and set USE_BUILDLINK3=YES).

    d9296 2 a9297 2

    12.3.3. GNU d9363 1 a9363 1 "id2595379" id="id2595379">12.4. Building d9373 2 a9374 2

    12.4.1. CPP defines

    d9413 1 a9413 1 "id2595412" id="id2595412">12.5. Package d9423 2 a9424 2

    12.5.1. Package d9496 2 a9497 2

    12.5.2. User d9546 2 a9547 2

    12.5.3. Handling d9621 2 a9622 2

    12.5.4. Creating an account d9676 2 a9677 2

    12.5.5. Installing score d9714 2 a9715 2

    12.5.6. Packages providing d9750 2 a9751 2

    12.5.7. Packages containing d9769 2 a9770 2

    12.5.8. Packages with d9796 2 a9797 2

    12.5.9. Packages installing d9936 2 a9937 2

    12.5.11. Packages installing d10011 2 a10012 2

    12.5.12. Packages installing d10056 2 a10057 2

    12.5.13. Packages installing d10094 2 a10095 2

    12.5.14. Packages installing d10161 2 a10162 2

    12.5.15. Packages installing d10223 2 a10224 2

    12.5.16. Packages installing d10282 2 a10283 2

    12.5.17. Packages using d10306 2 a10307 2

    12.5.18. Packages installing d10330 1 a10330 1 "id2597040" id="id2597040">12.6. Feedback d10566 1 a10566 1
    14.1. d10569 1 a10569 1
    14.2. d10573 1 a10573 1
    14.3. d10576 1 a10576 1
    14.4. d10586 2 a10587 2 "id2597570" id= "id2597570">14.1. Submitting your d10653 2 a10654 2 "id2597621" id= "id2597621">14.2. Committing: Importing a d10710 1 a10710 1 "id2597752" id="id2597752">14.3. Updating d10761 1 a10761 1 "id2597771" id="id2597771">14.4. Moving a d10862 1 a10862 1
    A.1. d10867 1 a10867 1
    A.1.1. d10870 1 a10870 1
    A.1.2. d10873 1 a10873 1
    A.1.3. d10876 1 a10876 1
    A.1.4. d10882 1 a10882 1
    A.2. Steps d10900 1 a10900 1 "id2597997" id="id2597997">A.1. files

    d10909 2 a10910 2

    A.1.1. Makefile

    d10937 2 a10938 2

    A.1.2. DESCR

    d10954 2 a10955 2

    A.1.3. PLIST

    d10972 2 a10973 2

    A.1.4. Checking a package with d11011 1 a11011 1 "id2598071" id="id2598071">A.2. Steps for d11429 1 a11429 1
    D.1. d11432 1 a11432 1
    D.2. d11445 1 a11445 1 "id2598922" id="id2598922">D.1. Targets

    d11498 2 a11499 2 "id2599129" id= "id2599129">D.2. Procedure

    @ 1.20 log @Re-generate (correction in plist.xml with respect to PR#29740). @ text @d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2590582">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2591022">9.2.2. Updating 9.3. d459 1 a459 1 "#id2591387">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2593714">12.1.1. How to pull in variables d518 1 a518 1 "#id2593865">12.1.2. Restricted d526 1 a526 1 "#id2594380">12.1.4. Handling conflicts with d530 1 a530 1 "#id2594430">12.1.5. Packages that cannot or d534 1 a534 1 "#id2594456">12.1.6. Packages which should not d542 1 a542 1 "#id2594616">12.1.8. How to handle compiler d546 1 a546 1 "#id2594638">12.1.9. How to handle incrementing d551 1 a551 1 "#id2594688">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2594715">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2594778">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2595237">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2595321">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2595437">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2595470">12.5.1. Package configuration d613 1 a613 1 "#id2595709">12.5.2. User d617 1 a617 1 "#id2595754">12.5.3. Handling d621 1 a621 1 "#id2595906">12.5.4. Creating an account from a d625 1 a625 1 "#id2595968">12.5.5. Installing score d629 1 a629 1 "#id2596011">12.5.6. Packages providing login d633 1 a633 1 "#id2596069">12.5.7. Packages containing perl d637 1 a637 1 "#id2596087">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2596108">12.5.9. Packages installing perl d649 1 a649 1 "#id2596328">12.5.11. Packages installing d653 1 a653 1 "#id2596428">12.5.12. Packages installing d657 1 a657 1 "#id2596548">12.5.13. Packages installing X11 d661 1 a661 1 "#id2596595">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2596732">12.5.15. Packages installing SGML d669 1 a669 1 "#id2596785">12.5.16. Packages installing d673 1 a673 1 "#id2596923">12.5.17. Packages using d677 1 a677 1 "#id2597005">12.5.18. Packages installing d682 1 a682 1
    12.6. d695 1 a695 1
    14.1. d698 1 a698 1
    14.2. d702 1 a702 1
    14.3. d706 1 a706 1
    14.4. d718 1 a718 1
    A.1. d723 1 a723 1
    A.1.1. d726 1 a726 1
    A.1.2. d729 1 a729 1
    A.1.3. d732 1 a732 1
    A.1.4. d738 1 a738 1
    A.2. Steps d764 1 a764 1
    D.1. d767 1 a767 1
    D.2. d4672 1 a4672 1
    9.1. d4675 1 a4675 1
    9.2. d4682 1 a4682 1 "#id2590582">9.2.1. Anatomy of a buildlink3.mk d4686 1 a4686 1 "#id2591022">9.2.2. Updating 9.3. d4701 1 a4701 1 "#id2591387">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4717 1 a4717 1
    10.1. d4720 1 a4720 1
    10.2. d4734 1 a4734 1
    11.2. d4748 1 a4748 1
    12.1. d4754 1 a4754 1 "#id2593714">12.1.1. How to pull in variables d4758 1 a4758 1 "#id2593865">12.1.2. Restricted d4766 1 a4766 1 "#id2594380">12.1.4. Handling conflicts with d4770 1 a4770 1 "#id2594430">12.1.5. Packages that cannot or d4774 1 a4774 1 "#id2594456">12.1.6. Packages which should not be d4782 1 a4782 1 "#id2594616">12.1.8. How to handle compiler d4786 1 a4786 1 "#id2594638">12.1.9. How to handle incrementing d4791 1 a4791 1 "#id2594688">12.1.10. Portability of d4796 1 a4796 1
    12.2. d4802 1 a4802 1 "#id2594715">12.2.1. Packages whose distfiles d4807 1 a4807 1 "#id2594778">12.2.2. How to handle modified d4812 1 a4812 1
    12.3. d4822 1 a4822 1 "#id2595237">12.3.2. Using libtool on GNU d4827 1 a4827 1 "#id2595321">12.3.3. GNU d4832 1 a4832 1
    12.4. d4838 1 a4838 1 "#id2595437">12.4.1. CPP defines
    d4842 1 a4842 1
    12.5. d4848 1 a4848 1 "#id2595470">12.5.1. Package configuration d4852 1 a4852 1 "#id2595709">12.5.2. User d4856 1 a4856 1 "#id2595754">12.5.3. Handling d4860 1 a4860 1 "#id2595906">12.5.4. Creating an account from a d4864 1 a4864 1 "#id2595968">12.5.5. Installing score d4868 1 a4868 1 "#id2596011">12.5.6. Packages providing login d4872 1 a4872 1 "#id2596069">12.5.7. Packages containing perl d4876 1 a4876 1 "#id2596087">12.5.8. Packages with hardcoded d4880 1 a4880 1 "#id2596108">12.5.9. Packages installing perl d4888 1 a4888 1 "#id2596328">12.5.11. Packages installing GConf2 d4892 1 a4892 1 "#id2596428">12.5.12. Packages installing d4896 1 a4896 1 "#id2596548">12.5.13. Packages installing X11 d4900 1 a4900 1 "#id2596595">12.5.14. Packages installing GTK2 d4904 1 a4904 1 "#id2596732">12.5.15. Packages installing SGML or d4908 1 a4908 1 "#id2596785">12.5.16. Packages installing d4912 1 a4912 1 "#id2596923">12.5.17. Packages using d4916 1 a4916 1 "#id2597005">12.5.18. Packages installing startup d4921 1 a4921 1
    12.6. d4934 1 a4934 1
    14.1. d4937 1 a4937 1
    14.2. d4941 1 a4941 1
    14.3. d4944 1 a4944 1
    14.4. d5868 10 d5990 1 a5990 1
    9.1. d5993 1 a5993 1
    9.2. d5999 1 a5999 1
    9.2.1. d6002 1 a6002 1
    9.2.2. d6011 1 a6011 1
    9.3. d6017 1 a6017 1
    9.3.1. d6021 1 a6021 1
    9.3.2. d6072 1 a6072 1 "id2590322" id="id2590322">9.1. Converting d6223 1 a6223 1 "id2590513" id="id2590513">9.2. Writing d6263 2 a6264 2

    9.2.1. Anatomy of a buildlink3.mk d6494 2 a6495 2

    9.2.2. Updating 9.3. Writing d6616 2 a6617 2

    9.3.1. Anatomy of a d6742 2 a6743 2

    9.3.2. Global preferences d6801 1 a6801 1
    10.1. d6804 1 a6804 1
    10.2. d6824 1 a6824 1 "id2591687" id="id2591687">10.1. Global d6842 2 a6843 2 "id2591702" id= "id2591702">10.2. Converting packages to d7006 1 a7006 1
    11.2. Main d7203 1 a7203 1 "id2592310" id="id2592310">11.2. Main d7969 1 a7969 1
    12.1. d7975 1 a7975 1 "#id2593714">12.1.1. How to pull in variables from d7979 1 a7979 1 "#id2593865">12.1.2. Restricted d7987 1 a7987 1 "#id2594380">12.1.4. Handling conflicts with other d7991 1 a7991 1 "#id2594430">12.1.5. Packages that cannot or should d7995 1 a7995 1 "#id2594456">12.1.6. Packages which should not be d8003 1 a8003 1 "#id2594616">12.1.8. How to handle compiler d8007 1 a8007 1 "#id2594638">12.1.9. How to handle incrementing d8012 1 a8012 1 "#id2594688">12.1.10. Portability of d8017 1 a8017 1
    12.2. d8023 1 a8023 1 "#id2594715">12.2.1. Packages whose distfiles d8028 1 a8028 1 "#id2594778">12.2.2. How to handle modified d8033 1 a8033 1
    12.3. d8043 1 a8043 1 "#id2595237">12.3.2. Using libtool on GNU packages d8047 1 a8047 1 "#id2595321">12.3.3. GNU d8052 1 a8052 1
    12.4. d8058 1 a8058 1 "#id2595437">12.4.1. CPP defines
    d8062 1 a8062 1
    12.5. d8068 1 a8068 1 "#id2595470">12.5.1. Package configuration d8072 1 a8072 1 "#id2595709">12.5.2. User d8076 1 a8076 1 "#id2595754">12.5.3. Handling d8080 1 a8080 1 "#id2595906">12.5.4. Creating an account from a d8084 1 a8084 1 "#id2595968">12.5.5. Installing score d8088 1 a8088 1 "#id2596011">12.5.6. Packages providing login d8092 1 a8092 1 "#id2596069">12.5.7. Packages containing perl d8096 1 a8096 1 "#id2596087">12.5.8. Packages with hardcoded paths d8100 1 a8100 1 "#id2596108">12.5.9. Packages installing perl d8108 1 a8108 1 "#id2596328">12.5.11. Packages installing GConf2 d8112 1 a8112 1 "#id2596428">12.5.12. Packages installing d8116 1 a8116 1 "#id2596548">12.5.13. Packages installing X11 d8120 1 a8120 1 "#id2596595">12.5.14. Packages installing GTK2 d8124 1 a8124 1 "#id2596732">12.5.15. Packages installing SGML or d8128 1 a8128 1 "#id2596785">12.5.16. Packages installing d8132 1 a8132 1 "#id2596923">12.5.17. Packages using d8136 1 a8136 1 "#id2597005">12.5.18. Packages installing startup d8141 1 a8141 1
    12.6. d8151 1 a8151 1 "id2593710" id="id2593710">12.1. General d8161 2 a8162 2

    12.1.1. How to pull in d8222 2 a8223 2

    12.1.2. Restricted d8526 2 a8527 2

    12.1.4. Handling conflicts d8574 2 a8575 2

    12.1.5. Packages that cannot d8606 2 a8607 2

    12.1.6. Packages which d8670 2 a8671 2

    12.1.8. How to handle d8696 2 a8697 2

    12.1.9. How to handle d8737 2 a8738 2

    12.1.10. Portability of d8754 2 a8755 2

    12.1.10.1. ${INSTALL}, d8780 1 a8780 1 "id2594712" id="id2594712">12.2. Possible d8790 2 a8791 2

    12.2.1. Packages whose d8852 2 a8853 2

    12.2.2. How to handle d8882 2 a8883 2 "id2594790" id= "id2594790">12.3. Configuration d9104 2 a9105 2

    12.3.2. Using libtool on GNU d9184 2 a9185 2

    12.3.3. GNU d9251 1 a9251 1 "id2595434" id="id2595434">12.4. Building d9261 2 a9262 2

    12.4.1. CPP defines

    d9301 1 a9301 1 "id2595467" id="id2595467">12.5. Package d9311 2 a9312 2

    12.5.1. Package d9384 2 a9385 2

    12.5.2. User d9434 2 a9435 2

    12.5.3. Handling d9509 2 a9510 2

    12.5.4. Creating an account d9564 2 a9565 2

    12.5.5. Installing score d9602 2 a9603 2

    12.5.6. Packages providing d9638 2 a9639 2

    12.5.7. Packages containing d9657 2 a9658 2

    12.5.8. Packages with d9684 2 a9685 2

    12.5.9. Packages installing d9824 2 a9825 2

    12.5.11. Packages installing d9899 2 a9900 2

    12.5.12. Packages installing d9944 2 a9945 2

    12.5.13. Packages installing d9982 2 a9983 2

    12.5.14. Packages installing d10049 2 a10050 2

    12.5.15. Packages installing d10111 2 a10112 2

    12.5.16. Packages installing d10170 2 a10171 2

    12.5.17. Packages using d10194 2 a10195 2

    12.5.18. Packages installing d10218 1 a10218 1 "id2597027" id="id2597027">12.6. Feedback d10454 1 a10454 1
    14.1. d10457 1 a10457 1
    14.2. d10461 1 a10461 1
    14.3. d10464 1 a10464 1
    14.4. d10474 2 a10475 2 "id2597557" id= "id2597557">14.1. Submitting your d10541 2 a10542 2 "id2597608" id= "id2597608">14.2. Committing: Importing a d10598 1 a10598 1 "id2597671" id="id2597671">14.3. Updating d10649 1 a10649 1 "id2597758" id="id2597758">14.4. Moving a d10750 1 a10750 1
    A.1. d10755 1 a10755 1
    A.1.1. d10758 1 a10758 1
    A.1.2. d10761 1 a10761 1
    A.1.3. d10764 1 a10764 1
    A.1.4. d10770 1 a10770 1
    A.2. Steps d10788 1 a10788 1 "id2597985" id="id2597985">A.1. files

    d10797 2 a10798 2

    A.1.1. Makefile

    d10825 2 a10826 2

    A.1.2. DESCR

    d10842 2 a10843 2

    A.1.3. PLIST

    d10860 2 a10861 2

    A.1.4. Checking a package with d10899 1 a10899 1 "id2598058" id="id2598058">A.2. Steps for d11317 1 a11317 1
    D.1. d11320 1 a11320 1
    D.2. d11333 1 a11333 1 "id2598909" id="id2598909">D.1. Targets

    d11386 2 a11387 2 "id2599116" id= "id2599116">D.2. Procedure

    @ 1.19 log @Re-generate, requested by wiz@@. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st October 2003), see www.w3.org" /> d11 1 a11 1 "DocBook XSL Stylesheets V1.67.0" /> d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515136">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515366">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515878">3.2.3. Interix

    d155 1 a155 1 "#id2515976">3.2.4. IRIX

  • d158 1 a158 1 "#id2516025">3.2.5. OpenBSD

    d161 1 a161 1 "#id2516274">3.2.6. Solaris

    d179 1 a179 1 "#id2516410">4.1.1. Where to get binary d183 1 a183 1 "#id2516519">4.1.2. How to use binary d187 1 a187 1 "#id2516585">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516606">4.2.1. d202 1 a202 1 "#id2516627">4.2.2. Fetching d206 1 a206 1 "#id2516747">4.2.3. How to build and d210 1 a210 1 "#id2517542">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2582972">5.3.2. Other environmental d243 1 a243 1 "#id2583081">5.3.3. Operation
    d246 1 a246 1 "#id2583219">5.3.4. What it d250 1 a250 1 "#id2583275">5.3.5. Disk space d254 1 a254 1 "#id2583302">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583763">5.3.7. Building a partial set of d267 1 a267 1
    5.4. d274 1 a274 1 "#id2584215">5.4.1. Example of d286 1 a286 1
    6.1. d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 1 a300 1
    6.5. d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 1 a312 1
    6.8. d316 1 a316 1
    6.9. d321 1 a321 1
    6.10. d324 1 a324 1
    6.11. d329 1 a329 1
    6.12. d333 1 a333 1
    6.13. d371 1 a371 1
    7.4. d378 1 a378 1
    7.6. d381 1 a381 1
    7.7. d392 1 a392 1
    8.1. d395 1 a395 1
    8.2. d407 1 a407 1
    8.5. d410 1 a410 1
    8.6. d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2587854">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2588295">9.2.2. Updating 9.3. d459 1 a459 1 "#id2588523">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2590986">12.1.1. How to pull in variables d518 1 a518 1 "#id2591138">12.1.2. Restricted d526 1 a526 1 "#id2591585">12.1.4. Handling conflicts with d530 1 a530 1 "#id2591703">12.1.5. Packages that cannot or d534 1 a534 1 "#id2591729">12.1.6. Packages which should not d542 1 a542 1 "#id2591889">12.1.8. How to handle compiler d546 1 a546 1 "#id2591911">12.1.9. How to handle incrementing d551 1 a551 1 "#id2591960">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2591988">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2592051">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2592441">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2592594">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2592778">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2592811">12.5.1. Package configuration d613 1 a613 1 "#id2592982">12.5.2. User d617 1 a617 1 "#id2593027">12.5.3. Handling d621 1 a621 1 "#id2593178">12.5.4. Creating an account from a d625 1 a625 1 "#id2593240">12.5.5. Installing score d629 1 a629 1 "#id2593284">12.5.6. Packages providing login d633 1 a633 1 "#id2593341">12.5.7. Packages containing perl d637 1 a637 1 "#id2593360">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2593381">12.5.9. Packages installing perl d649 1 a649 1 "#id2593601">12.5.11. Packages installing d653 1 a653 1 "#id2593769">12.5.12. Packages installing d657 1 a657 1 "#id2593889">12.5.13. Packages installing X11 d661 1 a661 1 "#id2593936">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2594005">12.5.15. Packages installing SGML d669 1 a669 1 "#id2594057">12.5.16. Packages installing d673 1 a673 1 "#id2594332">12.5.17. Packages using d677 1 a677 1 "#id2594346">12.5.18. Packages installing d682 1 a682 1
    12.6. d695 1 a695 1
    14.1. d698 1 a698 1
    14.2. d702 1 a702 1
    14.3. d706 1 a706 1
    14.4. d718 1 a718 1
    A.1. d723 1 a723 1
    A.1.1. d726 1 a726 1
    A.1.2. d729 1 a729 1
    A.1.3. d732 1 a732 1
    A.1.4. d738 1 a738 1
    A.2. Steps d764 1 a764 1
    D.1. d767 1 a767 1
    D.2. d788 1 a788 1
    1.1. d807 2 a808 2 "id2514136" id= "id2514136">1.1. Introduction

    d838 2 a839 2 class="pkgname">www/apache - The Apache web server

    d846 2 a847 2 class="pkgname">www/mozilla - The Mozilla web browser

    d854 2 a855 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d862 2 a863 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d1118 1 a1118 1
    2.1. As d1121 1 a1121 1
    2.2. Via d1124 1 a1124 1
    2.3. Via d1134 1 a1134 1
    3.1. d1137 1 a1137 1
    3.2. d1143 1 a1143 1 "#id2515136">3.2.1. Darwin (Mac OS d1147 1 a1147 1 "#id2515366">3.2.2. FreeBSD
    d1150 1 a1150 1 "#id2515878">3.2.3. Interix d1153 1 a1153 1 "#id2515976">3.2.4. IRIX d1156 1 a1156 1 "#id2516025">3.2.5. OpenBSD d1159 1 a1159 1 "#id2516274">3.2.6. Solaris d1177 1 a1177 1 "#id2516410">4.1.1. Where to get binary d1181 1 a1181 1 "#id2516519">4.1.2. How to use binary d1185 1 a1185 1 "#id2516585">4.1.3. A word of d1190 1 a1190 1
    4.2. d1196 1 a1196 1 "#id2516606">4.2.1. Requirements
    d1199 1 a1199 1 "#id2516627">4.2.2. Fetching d1203 1 a1203 1 "#id2516747">4.2.3. How to build and d1207 1 a1207 1 "#id2517542">4.2.4. Selecting the d1219 1 a1219 1
    5.1. d1222 1 a1222 1
    5.2. d1236 1 a1236 1 "#id2582972">5.3.2. Other environmental d1240 1 a1240 1 "#id2583081">5.3.3. Operation
    d1243 1 a1243 1 "#id2583219">5.3.4. What it does d1246 1 a1246 1 "#id2583275">5.3.5. Disk space d1250 1 a1250 1 "#id2583302">5.3.6. Setting up a sandbox for d1254 1 a1254 1 "#id2583763">5.3.7. Building a partial set of d1263 1 a1263 1
    5.4. d1270 1 a1270 1 "#id2584215">5.4.1. Example of d1282 1 a1282 1
    6.1. Are d1286 1 a1286 1
    6.2. d1293 1 a1293 1
    6.4. How d1296 1 a1296 1
    6.5. How d1300 1 a1300 1
    6.6. How d1304 1 a1304 1
    6.7. How d1307 1 a1307 1
    6.8. How d1310 1 a1310 1
    6.9. How d1315 1 a1315 1
    6.10. d1318 1 a1318 1
    6.11. d1323 1 a1323 1
    6.12. d1327 1 a1327 1
    6.13. d1357 1 a1357 1
    2.1. As d1360 1 a1360 1
    2.2. Via d1363 1 a1363 1
    2.3. Via d1377 1 a1377 1 "id2514722" id="id2514722">2.1. As tar d1386 2 a1387 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1395 1 a1395 1 "id2514738" id="id2514738">2.2. Via d1421 1 a1421 1 "id2514838" id="id2514838">2.3. Via d1478 1 a1478 1
    3.1. d1481 1 a1481 1
    3.2. d1486 1 a1486 1
    3.2.1. d1489 1 a1489 1
    3.2.2. d1492 1 a1492 1
    3.2.3. d1495 1 a1495 1
    3.2.4. d1498 1 a1498 1
    3.2.5. d1501 1 a1501 1
    3.2.6. d1513 2 a1514 2 "id2514948" id= "id2514948">3.1. Bootstrapping pkgsrc

    d1604 1 a1604 1 "id2515129" id="id2515129">3.2. Platform d1617 2 a1618 2

    3.2.1. Darwin (Mac OS d1750 2 a1751 2

    3.2.2. FreeBSD

    d1807 2 a1808 2

    3.2.3. Interix

    d1818 2 a1819 3 Windows 2000, XP (not including XP Home), or 2003. SFU can be downloaded from The TERM setting used for DOS-type console windows (including those invoked by the csh and ksh startup shortcuts) is "interix". Most systems don't have a termcap/terminfo entry for it, but the following .termcap entry provides adequate emulation in most cases:

    interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@@:DC@@:tc=pcansi:
    
    d1978 2 a1979 2

    3.2.4. IRIX

    d2031 2 a2032 2

    3.2.5. OpenBSD

    d2098 2 a2099 2

    3.2.6. Solaris

    d2143 2 a2144 2

    3.2.6.1. If you are using d2158 3 a2160 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2165 2 a2166 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2173 2 a2174 2

    3.2.6.2. If you are using d2251 1 a2251 1
    4.1.1. d2254 1 a2254 1
    4.1.2. d2257 1 a2257 1
    4.1.3. d2262 1 a2262 1
    4.2. d2267 1 a2267 1
    4.2.1. d2270 1 a2270 1
    4.2.2. d2273 1 a2273 1
    4.2.3. d2276 1 a2276 1
    4.2.4. d2303 2 a2304 2

    4.1.1. Where to get binary d2335 2 a2336 2

    4.1.2. How to use binary d2380 2 a2381 2

    4.1.3. A word of d2404 1 a2404 1 "id2516597" id="id2516597">4.2. Building d2419 2 a2420 2

    4.2.1. Requirements

    d2439 2 a2440 2

    4.2.2. Fetching d2481 2 a2482 2

    4.2.3. How to build and d2646 2 a2647 2

    4.2.4. Selecting the d2747 1 a2747 1
    5.1. d2750 1 a2750 1
    5.2. d2763 1 a2763 1
    5.3.2. d2766 1 a2766 1
    5.3.3. d2769 1 a2769 1
    5.3.4. d2772 1 a2772 1
    5.3.5. d2775 1 a2775 1
    5.3.6. d2779 1 a2779 1
    5.3.7. d2788 1 a2788 1
    5.4. d2794 1 a2794 1
    5.4.1. d2806 1 a2806 1 "id2582755" id="id2582755">5.1. Building a d2847 1 a2847 1 class="pkgname">misc/figlet example.

    d2860 1 a2860 1 "id2582833" id="id2582833">5.2. Settings d2942 2 a2943 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3042 2 a3043 2

    5.3.3. Operation

    d3089 2 a3090 2

    5.3.4. What it does

    d3148 2 a3149 2

    5.3.5. Disk space d3191 2 a3192 2

    5.3.6. Setting up a sandbox d3248 1 a3248 2 class="pkgname">security/smtpd and mail):

    d3269 1 a3269 1 class="pkgname">security/smtpd):

    d3281 4 a3284 6 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3381 2 a3382 2

    5.3.7. Building a partial d3565 1 a3565 1 "id2584200" id="id2584200">5.4. Creating a d3577 6 a3582 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3588 2 a3589 2

    5.4.1. Example of d3662 1 a3662 1
    6.1. Are d3666 1 a3666 1
    6.2. d3673 1 a3673 1
    6.4. How d3676 1 a3676 1
    6.5. How d3680 1 a3680 1
    6.6. How d3683 1 a3683 1
    6.7. How d3686 1 a3686 1
    6.8. How d3689 1 a3689 1
    6.9. How d3694 1 a3694 1
    6.10. How d3697 1 a3697 1
    6.11. What d3702 1 a3702 1
    6.12. What d3706 1 a3706 1
    6.13. d3728 1 a3728 1 "id2584475" id="id2584475">6.1. Are there d3742 3 a3744 3 target="_top">pkgsrc-bugs -- a list where problem reports related to pkgsrc are sent and discussed

    d3750 3 a3752 3 target="_top">pkgsrc-bulk -- a list where the results of pkgsrc bulk builds are sent and discussed

    d3758 2 a3759 2 target="_top">pkgsrc-changes -- a list where all commit messages to pkgsrc are sent

    d3765 2 a3766 3 target="_top">tech-pkg -- a general discussion list for all things related to pkgsrc

    d3787 1 a3787 1 "id2584610" id="id2584610">6.2. Where's d3826 2 a3827 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3841 2 a3842 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3849 2 a3850 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3857 2 a3858 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3865 4 a3868 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3882 3 a3884 4 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3891 5 a3895 5 class="pkgname">pkgtools/dfdisk: adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    d3902 2 a3903 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3910 3 a3912 3 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your current CPU and compiler.

    d3926 3 a3928 4 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3935 3 a3937 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3944 2 a3945 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3952 5 a3956 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3963 2 a3964 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3978 3 a3980 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d3987 5 a3991 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d3998 2 a3999 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d4013 3 a4015 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d4022 2 a4023 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d4030 2 a4031 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d4042 1 a4042 1 "id2584794" id="id2584794">6.4. How to use d4052 1 a4052 1 target="_top">this message for more details.

    d4060 1 a4060 1 "id2584806" id="id2584806">6.5. How to d4099 1 a4099 1 "id2584849" id="id2584849">6.6. How can I d4122 1 a4122 1 "id2584876" id="id2584876">6.7. How can I d4145 1 a4145 1 "id2584904" id="id2584904">6.8. How to d4170 1 a4170 1 "id2584918" id="id2584918">6.9. How do I d4204 1 a4204 1 "id2584969" id="id2584969">6.10. How to d4273 1 a4273 1 "id2585177" id="id2585177">6.11. What does d4283 7 a4289 8 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4294 4 a4297 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d4305 1 a4305 1 "id2585216" id="id2585216">6.12. What does d4334 1 a4334 1 "id2585273" id="id2585273">6.13. Using d4348 3 a4350 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4517 2 a4518 2 class="pkgname">security/audit-packages package. It has two components:

    d4533 2 a4534 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4616 1 a4616 1
    7.4. d4623 1 a4623 1
    7.6. d4626 1 a4626 1
    7.7. d4636 1 a4636 1
    8.1. RCS d4639 1 a4639 1
    8.2. d4650 1 a4650 1
    8.5. d4653 1 a4653 1
    8.6. d4657 1 a4657 1
    8.7. d4672 1 a4672 1
    9.1. d4675 1 a4675 1
    9.2. d4682 1 a4682 1 "#id2587854">9.2.1. Anatomy of a buildlink3.mk d4686 1 a4686 1 "#id2588295">9.2.2. Updating 9.3. d4701 1 a4701 1 "#id2588523">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4717 1 a4717 1
    10.1. d4720 1 a4720 1
    10.2. d4734 1 a4734 1
    11.2. d4748 1 a4748 1
    12.1. d4754 1 a4754 1 "#id2590986">12.1.1. How to pull in variables d4758 1 a4758 1 "#id2591138">12.1.2. Restricted d4766 1 a4766 1 "#id2591585">12.1.4. Handling conflicts with d4770 1 a4770 1 "#id2591703">12.1.5. Packages that cannot or d4774 1 a4774 1 "#id2591729">12.1.6. Packages which should not be d4782 1 a4782 1 "#id2591889">12.1.8. How to handle compiler d4786 1 a4786 1 "#id2591911">12.1.9. How to handle incrementing d4791 1 a4791 1 "#id2591960">12.1.10. Portability of d4796 1 a4796 1
    12.2. d4802 1 a4802 1 "#id2591988">12.2.1. Packages whose distfiles d4807 1 a4807 1 "#id2592051">12.2.2. How to handle modified d4812 1 a4812 1
    12.3. d4822 1 a4822 1 "#id2592441">12.3.2. Using libtool on GNU d4827 1 a4827 1 "#id2592594">12.3.3. GNU d4832 1 a4832 1
    12.4. d4838 1 a4838 1 "#id2592778">12.4.1. CPP defines
    d4842 1 a4842 1
    12.5. d4848 1 a4848 1 "#id2592811">12.5.1. Package configuration d4852 1 a4852 1 "#id2592982">12.5.2. User d4856 1 a4856 1 "#id2593027">12.5.3. Handling d4860 1 a4860 1 "#id2593178">12.5.4. Creating an account from a d4864 1 a4864 1 "#id2593240">12.5.5. Installing score d4868 1 a4868 1 "#id2593284">12.5.6. Packages providing login d4872 1 a4872 1 "#id2593341">12.5.7. Packages containing perl d4876 1 a4876 1 "#id2593360">12.5.8. Packages with hardcoded d4880 1 a4880 1 "#id2593381">12.5.9. Packages installing perl d4888 1 a4888 1 "#id2593601">12.5.11. Packages installing GConf2 d4892 1 a4892 1 "#id2593769">12.5.12. Packages installing d4896 1 a4896 1 "#id2593889">12.5.13. Packages installing X11 d4900 1 a4900 1 "#id2593936">12.5.14. Packages installing GTK2 d4904 1 a4904 1 "#id2594005">12.5.15. Packages installing SGML or d4908 1 a4908 1 "#id2594057">12.5.16. Packages installing d4912 1 a4912 1 "#id2594332">12.5.17. Packages using d4916 1 a4916 1 "#id2594346">12.5.18. Packages installing startup d4921 1 a4921 1
    12.6. d4934 1 a4934 1
    14.1. d4937 1 a4937 1
    14.2. d4941 1 a4941 1
    14.3. d4944 1 a4944 1
    14.4. d4977 1 a4977 1
    7.4. Other d4984 1 a4984 1
    7.6. d4987 1 a4987 1
    7.7. d5190 10 a5199 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d5205 4 a5208 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d5271 2 a5272 2 class="pkgname">pkgtools/pkgdiff package to avoid these problems.

    d5322 1 a5322 1 "id2586455" id="id2586455">7.4. Other d5446 2 a5447 2 "id2586649" id= "id2586649">7.6. editors/sam again, but the quick answer is:

    d5483 5 a5487 5 class="pkgname">lang/tcl and x11/tk for examples, and here is another one:

    d5507 2 a5508 2 "id2586737" id= "id2586737">7.7. 8.1. RCS d5543 1 a5543 1
    8.2. d5554 1 a5554 1
    8.5. d5557 1 a5557 1
    8.6. d5561 1 a5561 1
    8.7. d5587 1 a5587 1 "id2586791" id="id2586791">8.1. RCS d5605 2 a5606 2 "id2586806" id= "id2586806">8.2. Semi-automatic d5800 2 a5801 2 "id2587127" id= "id2587127">8.5. Manpage-compression

    d5825 1 a5825 1 "id2587169" id="id2587169">8.6. Changing d5845 1 a5845 1 "id2587322" id="id2587322">8.7. Platform a5871 7

    If PLIST.${OPSYS} exists, these files are used instead of PLIST. This allows packages which behave in this way to be handled gracefully. Manually overriding PLIST_SRC for other more exotic uses is also possible.

    d5916 3 a5918 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d5980 1 a5980 1
    9.1. d5983 1 a5983 1
    9.2. d5989 1 a5989 1
    9.2.1. d5992 1 a5992 1
    9.2.2. d6001 1 a6001 1
    9.3. d6007 1 a6007 1
    9.3.1. d6011 1 a6011 1
    9.3.2. d6062 1 a6062 1 "id2587526" id="id2587526">9.1. Converting d6144 1 a6144 1 class="pkgname">devel/ncurses package.

    d6163 4 a6166 4 class="pkgname">x11/lesstif or x11/openmotif;

    d6191 1 a6191 1 class="pkgname">devel/pth as needed;

    d6213 1 a6213 1 "id2587785" id="id2587785">9.2. Writing d6236 4 a6239 5 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d6253 2 a6254 2

    9.2.1. Anatomy of a buildlink3.mk d6484 2 a6485 2

    9.2.2. Updating 9.3. Writing d6606 2 a6607 2

    9.3.1. Anatomy of a d6732 2 a6733 2

    9.3.2. Global preferences d6791 1 a6791 1
    10.1. d6794 1 a6794 1
    10.2. d6814 1 a6814 1 "id2588960" id="id2588960">10.1. Global d6832 2 a6833 2 "id2588974" id= "id2588974">10.2. Converting packages to d6996 1 a6996 1
    11.2. Main d7121 2 a7122 2 class="pkgname">pkgtools/xpkgwedge is enabled by default.

    d7193 1 a7193 1 "id2589582" id="id2589582">11.2. Main d7355 1 a7355 1 class="pkgname">sysutils/top package:

    d7733 21 a7753 22 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7959 1 a7959 1
    12.1. d7965 1 a7965 1 "#id2590986">12.1.1. How to pull in variables from d7969 1 a7969 1 "#id2591138">12.1.2. Restricted d7977 1 a7977 1 "#id2591585">12.1.4. Handling conflicts with other d7981 1 a7981 1 "#id2591703">12.1.5. Packages that cannot or should d7985 1 a7985 1 "#id2591729">12.1.6. Packages which should not be d7993 1 a7993 1 "#id2591889">12.1.8. How to handle compiler d7997 1 a7997 1 "#id2591911">12.1.9. How to handle incrementing d8002 1 a8002 1 "#id2591960">12.1.10. Portability of d8007 1 a8007 1
    12.2. d8013 1 a8013 1 "#id2591988">12.2.1. Packages whose distfiles d8018 1 a8018 1 "#id2592051">12.2.2. How to handle modified d8023 1 a8023 1
    12.3. d8033 1 a8033 1 "#id2592441">12.3.2. Using libtool on GNU packages d8037 1 a8037 1 "#id2592594">12.3.3. GNU d8042 1 a8042 1
    12.4. d8048 1 a8048 1 "#id2592778">12.4.1. CPP defines
    d8052 1 a8052 1
    12.5. d8058 1 a8058 1 "#id2592811">12.5.1. Package configuration d8062 1 a8062 1 "#id2592982">12.5.2. User d8066 1 a8066 1 "#id2593027">12.5.3. Handling d8070 1 a8070 1 "#id2593178">12.5.4. Creating an account from a d8074 1 a8074 1 "#id2593240">12.5.5. Installing score d8078 1 a8078 1 "#id2593284">12.5.6. Packages providing login d8082 1 a8082 1 "#id2593341">12.5.7. Packages containing perl d8086 1 a8086 1 "#id2593360">12.5.8. Packages with hardcoded paths d8090 1 a8090 1 "#id2593381">12.5.9. Packages installing perl d8098 1 a8098 1 "#id2593601">12.5.11. Packages installing GConf2 d8102 1 a8102 1 "#id2593769">12.5.12. Packages installing d8106 1 a8106 1 "#id2593889">12.5.13. Packages installing X11 d8110 1 a8110 1 "#id2593936">12.5.14. Packages installing GTK2 d8114 1 a8114 1 "#id2594005">12.5.15. Packages installing SGML or d8118 1 a8118 1 "#id2594057">12.5.16. Packages installing d8122 1 a8122 1 "#id2594332">12.5.17. Packages using d8126 1 a8126 1 "#id2594346">12.5.18. Packages installing startup d8131 1 a8131 1
    12.6. d8141 1 a8141 1 "id2590983" id="id2590983">12.1. General d8151 2 a8152 2

    12.1.1. How to pull in d8204 2 a8205 2 class="pkgname">devel/cpuflags package if you're interested in optimization for the current CPU.

    d8212 2 a8213 2

    12.1.2. Restricted d8373 2 a8374 3 class="pkgname">print/lyx package, which uses the xpm library, version 3.4j to build:

    d8459 3 a8461 4 class="pkgname">print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8477 3 a8479 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8503 7 a8509 7 class="pkgname">devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8516 2 a8517 2

    12.1.4. Handling conflicts d8536 6 a8541 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8564 2 a8565 2

    12.1.5. Packages that cannot d8596 2 a8597 2

    12.1.6. Packages which d8660 2 a8661 2

    12.1.8. How to handle d8686 2 a8687 2

    12.1.9. How to handle d8727 2 a8728 2

    12.1.10. Portability of d8744 2 a8745 2

    12.1.10.1. ${INSTALL}, d8770 1 a8770 1 "id2591985" id="id2591985">12.2. Possible d8780 2 a8781 2

    12.2.1. Packages whose d8798 2 a8799 2 class="pkgname">graphics/ns-cult3d is an example of this usage.

    d8813 23 a8835 25 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8842 2 a8843 2

    12.2.2. How to handle d8872 2 a8873 2 "id2592062" id= "id2592062">12.3. Configuration d8900 5 a8904 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d9094 2 a9095 2

    12.3.2. Using libtool on GNU d9174 2 a9175 2

    12.3.3. GNU d9241 1 a9241 1 "id2592775" id="id2592775">12.4. Building d9251 2 a9252 2

    12.4.1. CPP defines

    d9291 1 a9291 1 "id2592808" id="id2592808">12.5. Package d9301 2 a9302 2

    12.5.1. Package d9374 2 a9375 2

    12.5.2. User d9424 2 a9425 2

    12.5.3. Handling d9450 1 a9450 1 class="pkgname">graphics/graphviz:

    d9499 2 a9500 2

    12.5.4. Creating an account d9554 2 a9555 2

    12.5.5. Installing score d9592 2 a9593 2

    12.5.6. Packages providing d9628 2 a9629 2

    12.5.7. Packages containing d9647 2 a9648 2

    12.5.8. Packages with d9674 2 a9675 2

    12.5.9. Packages installing d9779 2 a9780 2 class="pkgname">devel/gtexinfo package will be added automatically.

    d9814 2 a9815 2

    12.5.11. Packages installing d9889 2 a9890 2

    12.5.12. Packages installing d9934 2 a9935 2

    12.5.13. Packages installing d9972 2 a9973 2

    12.5.14. Packages installing d10039 2 a10040 2

    12.5.15. Packages installing d10101 2 a10102 2

    12.5.16. Packages installing d10160 2 a10161 2

    12.5.17. Packages using d10184 2 a10185 2

    12.5.18. Packages installing d10208 1 a10208 1 "id2594368" id="id2594368">12.6. Feedback d10255 4 a10258 4 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d10324 1 a10324 1 class="pkgname">pkgtools/pkgdiff package.

    d10411 2 a10412 2 class="pkgname">pkgtools/pkglint, and fix the problems it reports:

    d10444 1 a10444 1
    14.1. d10447 1 a10447 1
    14.2. d10451 1 a10451 1
    14.3. d10454 1 a10454 1
    14.4. d10464 2 a10465 2 "id2594898" id= "id2594898">14.1. Submitting your d10531 2 a10532 2 "id2594949" id= "id2594949">14.2. Committing: Importing a d10588 1 a10588 1 "id2595012" id="id2595012">14.3. Updating d10639 1 a10639 1 "id2595031" id="id2595031">14.4. Moving a d10740 1 a10740 1
    A.1. d10745 1 a10745 1
    A.1.1. d10748 1 a10748 1
    A.1.2. d10751 1 a10751 1
    A.1.3. d10754 1 a10754 1
    A.1.4. d10760 1 a10760 1
    A.2. Steps d10778 1 a10778 1 "id2595257" id="id2595257">A.1. files

    d10787 2 a10788 2

    A.1.1. Makefile

    d10815 2 a10816 2

    A.1.2. DESCR

    d10832 2 a10833 2

    A.1.3. PLIST

    d10850 2 a10851 2

    A.1.4. Checking a package with d10861 6 a10866 6 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10889 1 a10889 1 "id2595331" id="id2595331">A.2. Steps for d11307 1 a11307 1
    D.1. d11310 1 a11310 1
    D.2. d11323 1 a11323 1 "id2596182" id="id2596182">D.1. Targets

    d11376 2 a11377 2 "id2596389" id= "id2596389">D.2. Procedure

    @ 1.18 log @Regen (typo in editing.xml and added a new section "Packages installing startup scripts). @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d11 1 a11 1 "DocBook XSL Stylesheets V1.68.1" /> d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2518162">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2518324">3.2.2. FreeBSD
    d152 1 a152 1 "#id2518494">3.2.3. Interix

    d155 1 a155 1 "#id2519063">3.2.4. IRIX

    d158 1 a158 1 "#id2519180">3.2.5. OpenBSD

    d161 1 a161 1 "#id2519292">3.2.6. Solaris d179 1 a179 1 "#id2519429">4.1.1. Where to get binary d183 1 a183 1 "#id2519469">4.1.2. How to use binary d187 1 a187 1 "#id2519604">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2519625">4.2.1. d202 1 a202 1 "#id2519645">4.2.2. Fetching d206 1 a206 1 "#id2519698">4.2.3. How to build and d210 1 a210 1 "#id2520014">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2520865">5.3.2. Other environmental d243 1 a243 1 "#id2585963">5.3.3. Operation
    d246 1 a246 1 "#id2586101">5.3.4. What it d250 1 a250 1 "#id2586157">5.3.5. Disk space d254 1 a254 1 "#id2586184">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2586645">5.3.7. Building a partial set of d267 1 a267 1
    5.4. d274 1 a274 1 "#id2587097">5.4.1. Example of d286 1 a286 1
    6.1. d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 1 a300 1
    6.5. d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 1 a312 1
    6.8. d316 1 a316 1
    6.9. d321 1 a321 1
    6.10. d324 1 a324 1
    6.11. d329 1 a329 1
    6.12. d333 1 a333 1
    6.13. d371 1 a371 1
    7.4. d378 1 a378 1
    7.6. d381 1 a381 1
    7.7. d392 1 a392 1
    8.1. d395 1 a395 1
    8.2. d407 1 a407 1
    8.5. d410 1 a410 1
    8.6. d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2590737">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2591177">9.2.2. Updating 9.3. d459 1 a459 1 "#id2591542">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2593800">12.1.1. How to pull in variables d518 1 a518 1 "#id2593952">12.1.2. Restricted d526 1 a526 1 "#id2594467">12.1.4. Handling conflicts with d530 1 a530 1 "#id2594517">12.1.5. Packages that cannot or d534 1 a534 1 "#id2594542">12.1.6. Packages which should not d542 1 a542 1 "#id2594702">12.1.8. How to handle compiler d546 1 a546 1 "#id2594725">12.1.9. How to handle incrementing d551 1 a551 1 "#id2594774">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2594802">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2594865">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2595352">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2595436">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2595484">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2595654">12.5.1. Package configuration d613 1 a613 1 "#id2595825">12.5.2. User d617 1 a617 1 "#id2595869">12.5.3. Handling d621 1 a621 1 "#id2596089">12.5.4. Creating an account from a d625 1 a625 1 "#id2596151">12.5.5. Installing score d629 1 a629 1 "#id2596195">12.5.6. Packages providing login d633 1 a633 1 "#id2596252">12.5.7. Packages containing perl d637 1 a637 1 "#id2596270">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2596292">12.5.9. Packages installing perl d649 1 a649 1 "#id2596512">12.5.11. Packages installing d653 1 a653 1 "#id2596612">12.5.12. Packages installing d657 1 a657 1 "#id2596731">12.5.13. Packages installing X11 d661 1 a661 1 "#id2596778">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2596916">12.5.15. Packages installing SGML d669 1 a669 1 "#id2596968">12.5.16. Packages installing d673 1 a673 1 "#id2597107">12.5.17. Packages using d677 1 a677 1 "#id2597121">12.5.18. Packages installing d682 1 a682 1
    12.6. d695 1 a695 1
    14.1. d698 1 a698 1
    14.2. d702 1 a702 1
    14.3. d706 1 a706 1
    14.4. d718 1 a718 1
    A.1. d723 1 a723 1
    A.1.1. d726 1 a726 1
    A.1.2. d729 1 a729 1
    A.1.3. d732 1 a732 1
    A.1.4. d738 1 a738 1
    A.2. Steps d764 1 a764 1
    D.1. d767 1 a767 1
    D.2. d788 1 a788 1
    1.1. d807 2 a808 2 "id2517094" id= "id2517094">1.1. Introduction

    d838 2 a839 2 class="pkgname">www/apache - The Apache web server

    d846 2 a847 2 class="pkgname">www/mozilla - The Mozilla web browser

    d854 2 a855 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d862 2 a863 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d1118 1 a1118 1
    2.1. As d1121 1 a1121 1
    2.2. Via d1124 1 a1124 1
    2.3. Via d1134 1 a1134 1
    3.1. d1137 1 a1137 1
    3.2. d1143 1 a1143 1 "#id2518162">3.2.1. Darwin (Mac OS d1147 1 a1147 1 "#id2518324">3.2.2. FreeBSD
    d1150 1 a1150 1 "#id2518494">3.2.3. Interix d1153 1 a1153 1 "#id2519063">3.2.4. IRIX d1156 1 a1156 1 "#id2519180">3.2.5. OpenBSD d1159 1 a1159 1 "#id2519292">3.2.6. Solaris d1177 1 a1177 1 "#id2519429">4.1.1. Where to get binary d1181 1 a1181 1 "#id2519469">4.1.2. How to use binary d1185 1 a1185 1 "#id2519604">4.1.3. A word of d1190 1 a1190 1
    4.2. d1196 1 a1196 1 "#id2519625">4.2.1. Requirements
    d1199 1 a1199 1 "#id2519645">4.2.2. Fetching d1203 1 a1203 1 "#id2519698">4.2.3. How to build and d1207 1 a1207 1 "#id2520014">4.2.4. Selecting the d1219 1 a1219 1
    5.1. d1222 1 a1222 1
    5.2. d1236 1 a1236 1 "#id2520865">5.3.2. Other environmental d1240 1 a1240 1 "#id2585963">5.3.3. Operation
    d1243 1 a1243 1 "#id2586101">5.3.4. What it does d1246 1 a1246 1 "#id2586157">5.3.5. Disk space d1250 1 a1250 1 "#id2586184">5.3.6. Setting up a sandbox for d1254 1 a1254 1 "#id2586645">5.3.7. Building a partial set of d1263 1 a1263 1
    5.4. d1270 1 a1270 1 "#id2587097">5.4.1. Example of d1282 1 a1282 1
    6.1. Are d1286 1 a1286 1
    6.2. d1293 1 a1293 1
    6.4. How d1296 1 a1296 1
    6.5. How d1300 1 a1300 1
    6.6. How d1304 1 a1304 1
    6.7. How d1307 1 a1307 1
    6.8. How d1310 1 a1310 1
    6.9. How d1315 1 a1315 1
    6.10. d1318 1 a1318 1
    6.11. d1323 1 a1323 1
    6.12. d1327 1 a1327 1
    6.13. d1357 1 a1357 1
    2.1. As d1360 1 a1360 1
    2.2. Via d1363 1 a1363 1
    2.3. Via d1377 1 a1377 1 "id2517748" id="id2517748">2.1. As tar d1386 2 a1387 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1395 1 a1395 1 "id2517764" id="id2517764">2.2. Via d1421 1 a1421 1 "id2517796" id="id2517796">2.3. Via d1478 1 a1478 1
    3.1. d1481 1 a1481 1
    3.2. d1486 1 a1486 1
    3.2.1. d1489 1 a1489 1
    3.2.2. d1492 1 a1492 1
    3.2.3. d1495 1 a1495 1
    3.2.4. d1498 1 a1498 1
    3.2.5. d1501 1 a1501 1
    3.2.6. d1513 2 a1514 2 "id2517906" id= "id2517906">3.1. Bootstrapping pkgsrc

    d1604 1 a1604 1 "id2518155" id="id2518155">3.2. Platform d1617 2 a1618 2

    3.2.1. Darwin (Mac OS d1750 2 a1751 2

    3.2.2. FreeBSD

    d1807 2 a1808 2

    3.2.3. Interix

    d1818 3 a1820 2 Windows 2000, XP, or 2003. SFU can be downloaded from 3.2.4. IRIX

    d2042 2 a2043 2

    3.2.5. OpenBSD

    d2109 2 a2110 2

    3.2.6. Solaris

    d2154 2 a2155 2

    3.2.6.1. If you are using d2169 3 a2171 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2176 2 a2177 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2184 2 a2185 2

    3.2.6.2. If you are using d2262 1 a2262 1
    4.1.1. d2265 1 a2265 1
    4.1.2. d2268 1 a2268 1
    4.1.3. d2273 1 a2273 1
    4.2. d2278 1 a2278 1
    4.2.1. d2281 1 a2281 1
    4.2.2. d2284 1 a2284 1
    4.2.3. d2287 1 a2287 1
    4.2.4. d2314 2 a2315 2

    4.1.1. Where to get binary d2346 2 a2347 2

    4.1.2. How to use binary d2391 2 a2392 2

    4.1.3. A word of d2415 1 a2415 1 "id2519616" id="id2519616">4.2. Building d2430 2 a2431 2

    4.2.1. Requirements

    d2450 2 a2451 2

    4.2.2. Fetching d2492 2 a2493 2

    4.2.3. How to build and d2657 2 a2658 2

    4.2.4. Selecting the d2758 1 a2758 1
    5.1. d2761 1 a2761 1
    5.2. d2774 1 a2774 1
    5.3.2. d2777 1 a2777 1
    5.3.3. d2780 1 a2780 1
    5.3.4. d2783 1 a2783 1
    5.3.5. d2786 1 a2786 1
    5.3.6. d2790 1 a2790 1
    5.3.7. d2799 1 a2799 1
    5.4. d2805 1 a2805 1
    5.4.1. d2817 1 a2817 1 "id2520101" id="id2520101">5.1. Building a d2858 1 a2858 1 class="pkgname">misc/figlet example.

    d2871 1 a2871 1 "id2520247" id="id2520247">5.2. Settings d2953 2 a2954 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3053 2 a3054 2

    5.3.3. Operation

    d3100 2 a3101 2

    5.3.4. What it does

    d3159 2 a3160 2

    5.3.5. Disk space d3202 2 a3203 2

    5.3.6. Setting up a sandbox d3259 2 a3260 1 class="pkgname">security/smtpd and mail):

    d3281 1 a3281 1 class="pkgname">security/smtpd):

    d3293 6 a3298 4 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3395 2 a3396 2

    5.3.7. Building a partial d3579 1 a3579 1 "id2587082" id="id2587082">5.4. Creating a d3591 6 a3596 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3602 2 a3603 2

    5.4.1. Example of d3676 1 a3676 1
    6.1. Are d3680 1 a3680 1
    6.2. d3687 1 a3687 1
    6.4. How d3690 1 a3690 1
    6.5. How d3694 1 a3694 1
    6.6. How d3697 1 a3697 1
    6.7. How d3700 1 a3700 1
    6.8. How d3703 1 a3703 1
    6.9. How d3708 1 a3708 1
    6.10. How d3711 1 a3711 1
    6.11. What d3716 1 a3716 1
    6.12. What d3720 1 a3720 1
    6.13. d3742 1 a3742 1 "id2587289" id="id2587289">6.1. Are there d3756 3 a3758 3 target="_top">pkgsrc-bugs -- a list where problem reports related to pkgsrc are sent and discussed

    d3764 3 a3766 3 target="_top">pkgsrc-bulk -- a list where the results of pkgsrc bulk builds are sent and discussed

    d3772 2 a3773 2 target="_top">pkgsrc-changes -- a list where all commit messages to pkgsrc are sent

    d3779 3 a3781 2 target="_top">tech-pkg -- a general discussion list for all things related to pkgsrc

    d3802 1 a3802 1 "id2587492" id="id2587492">6.2. Where's d3841 2 a3842 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3856 2 a3857 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3864 2 a3865 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3872 2 a3873 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3880 4 a3883 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3897 4 a3900 3 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3907 5 a3911 5 class="pkgname">pkgtools/dfdisk: adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    d3918 2 a3919 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3926 3 a3928 3 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your current CPU and compiler.

    d3942 4 a3945 3 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3952 3 a3954 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3961 2 a3962 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3969 5 a3973 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3980 2 a3981 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3995 3 a3997 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d4004 5 a4008 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d4015 2 a4016 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d4030 3 a4032 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d4039 2 a4040 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d4047 2 a4048 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d4059 1 a4059 1 "id2587676" id="id2587676">6.4. How to use d4069 1 a4069 1 target="_top">this message for more details.

    d4077 1 a4077 1 "id2587688" id="id2587688">6.5. How to d4116 1 a4116 1 "id2587731" id="id2587731">6.6. How can I d4139 1 a4139 1 "id2587758" id="id2587758">6.7. How can I d4162 1 a4162 1 "id2587786" id="id2587786">6.8. How to d4187 1 a4187 1 "id2587800" id="id2587800">6.9. How do I d4221 1 a4221 1 "id2587851" id="id2587851">6.10. How to d4290 1 a4290 1 "id2588059" id="id2588059">6.11. What does d4300 8 a4307 7 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4312 4 a4315 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d4323 1 a4323 1 "id2588098" id="id2588098">6.12. What does d4352 1 a4352 1 "id2588224" id="id2588224">6.13. Using d4366 3 a4368 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4535 2 a4536 2 class="pkgname">security/audit-packages package. It has two components:

    d4551 2 a4552 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4634 1 a4634 1
    7.4. d4641 1 a4641 1
    7.6. d4644 1 a4644 1
    7.7. d4654 1 a4654 1
    8.1. RCS d4657 1 a4657 1
    8.2. d4668 1 a4668 1
    8.5. d4671 1 a4671 1
    8.6. d4675 1 a4675 1
    8.7. d4690 1 a4690 1
    9.1. d4693 1 a4693 1
    9.2. d4700 1 a4700 1 "#id2590737">9.2.1. Anatomy of a buildlink3.mk d4704 1 a4704 1 "#id2591177">9.2.2. Updating 9.3. d4719 1 a4719 1 "#id2591542">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4735 1 a4735 1
    10.1. d4738 1 a4738 1
    10.2. d4752 1 a4752 1
    11.2. d4766 1 a4766 1
    12.1. d4772 1 a4772 1 "#id2593800">12.1.1. How to pull in variables d4776 1 a4776 1 "#id2593952">12.1.2. Restricted d4784 1 a4784 1 "#id2594467">12.1.4. Handling conflicts with d4788 1 a4788 1 "#id2594517">12.1.5. Packages that cannot or d4792 1 a4792 1 "#id2594542">12.1.6. Packages which should not be d4800 1 a4800 1 "#id2594702">12.1.8. How to handle compiler d4804 1 a4804 1 "#id2594725">12.1.9. How to handle incrementing d4809 1 a4809 1 "#id2594774">12.1.10. Portability of d4814 1 a4814 1
    12.2. d4820 1 a4820 1 "#id2594802">12.2.1. Packages whose distfiles d4825 1 a4825 1 "#id2594865">12.2.2. How to handle modified d4830 1 a4830 1
    12.3. d4840 1 a4840 1 "#id2595352">12.3.2. Using libtool on GNU d4845 1 a4845 1 "#id2595436">12.3.3. GNU d4850 1 a4850 1
    12.4. d4856 1 a4856 1 "#id2595484">12.4.1. CPP defines
    d4860 1 a4860 1
    12.5. d4866 1 a4866 1 "#id2595654">12.5.1. Package configuration d4870 1 a4870 1 "#id2595825">12.5.2. User d4874 1 a4874 1 "#id2595869">12.5.3. Handling d4878 1 a4878 1 "#id2596089">12.5.4. Creating an account from a d4882 1 a4882 1 "#id2596151">12.5.5. Installing score d4886 1 a4886 1 "#id2596195">12.5.6. Packages providing login d4890 1 a4890 1 "#id2596252">12.5.7. Packages containing perl d4894 1 a4894 1 "#id2596270">12.5.8. Packages with hardcoded d4898 1 a4898 1 "#id2596292">12.5.9. Packages installing perl d4906 1 a4906 1 "#id2596512">12.5.11. Packages installing GConf2 d4910 1 a4910 1 "#id2596612">12.5.12. Packages installing d4914 1 a4914 1 "#id2596731">12.5.13. Packages installing X11 d4918 1 a4918 1 "#id2596778">12.5.14. Packages installing GTK2 d4922 1 a4922 1 "#id2596916">12.5.15. Packages installing SGML or d4926 1 a4926 1 "#id2596968">12.5.16. Packages installing d4930 1 a4930 1 "#id2597107">12.5.17. Packages using d4934 1 a4934 1 "#id2597121">12.5.18. Packages installing startup d4939 1 a4939 1
    12.6. d4952 1 a4952 1
    14.1. d4955 1 a4955 1
    14.2. d4959 1 a4959 1
    14.3. d4962 1 a4962 1
    14.4. d4995 1 a4995 1
    7.4. Other d5002 1 a5002 1
    7.6. d5005 1 a5005 1
    7.7. d5208 10 a5217 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d5223 4 a5226 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d5289 2 a5290 2 class="pkgname">pkgtools/pkgdiff package to avoid these problems.

    d5340 1 a5340 1 "id2589337" id="id2589337">7.4. Other d5464 2 a5465 2 "id2589463" id= "id2589463">7.6. editors/sam again, but the quick answer is:

    d5501 5 a5505 5 class="pkgname">lang/tcl and x11/tk for examples, and here is another one:

    d5525 2 a5526 2 "id2589619" id= "id2589619">7.7. 8.1. RCS d5561 1 a5561 1
    8.2. d5572 1 a5572 1
    8.5. d5575 1 a5575 1
    8.6. d5579 1 a5579 1
    8.7. d5605 1 a5605 1 "id2589673" id="id2589673">8.1. RCS d5623 2 a5624 2 "id2589688" id= "id2589688">8.2. Semi-automatic d5818 2 a5819 2 "id2590077" id= "id2590077">8.5. Manpage-compression

    d5843 1 a5843 1 "id2590119" id="id2590119">8.6. Changing d5863 1 a5863 1 "id2590136" id="id2590136">8.7. Platform d5941 3 a5943 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d6005 1 a6005 1
    9.1. d6008 1 a6008 1
    9.2. d6014 1 a6014 1
    9.2.1. d6017 1 a6017 1
    9.2.2. d6026 1 a6026 1
    9.3. d6032 1 a6032 1
    9.3.1. d6036 1 a6036 1
    9.3.2. d6087 1 a6087 1 "id2590476" id="id2590476">9.1. Converting d6169 1 a6169 1 class="pkgname">devel/ncurses package.

    d6188 4 a6191 4 class="pkgname">x11/lesstif or x11/openmotif;

    d6216 1 a6216 1 class="pkgname">devel/pth as needed;

    d6238 1 a6238 1 "id2590667" id="id2590667">9.2. Writing d6261 5 a6265 4 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d6279 2 a6280 2

    9.2.1. Anatomy of a buildlink3.mk d6510 2 a6511 2

    9.2.2. Updating 9.3. Writing d6632 2 a6633 2

    9.3.1. Anatomy of a d6758 2 a6759 2

    9.3.2. Global preferences d6817 1 a6817 1
    10.1. d6820 1 a6820 1
    10.2. d6840 1 a6840 1 "id2591842" id="id2591842">10.1. Global d6858 2 a6859 2 "id2591857" id= "id2591857">10.2. Converting packages to d7022 1 a7022 1
    11.2. Main d7147 2 a7148 2 class="pkgname">pkgtools/xpkgwedge is enabled by default.

    d7219 1 a7219 1 "id2592396" id="id2592396">11.2. Main d7381 1 a7381 1 class="pkgname">sysutils/top package:

    d7759 22 a7780 21 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7986 1 a7986 1
    12.1. d7992 1 a7992 1 "#id2593800">12.1.1. How to pull in variables from d7996 1 a7996 1 "#id2593952">12.1.2. Restricted d8004 1 a8004 1 "#id2594467">12.1.4. Handling conflicts with other d8008 1 a8008 1 "#id2594517">12.1.5. Packages that cannot or should d8012 1 a8012 1 "#id2594542">12.1.6. Packages which should not be d8020 1 a8020 1 "#id2594702">12.1.8. How to handle compiler d8024 1 a8024 1 "#id2594725">12.1.9. How to handle incrementing d8029 1 a8029 1 "#id2594774">12.1.10. Portability of d8034 1 a8034 1
    12.2. d8040 1 a8040 1 "#id2594802">12.2.1. Packages whose distfiles d8045 1 a8045 1 "#id2594865">12.2.2. How to handle modified d8050 1 a8050 1
    12.3. d8060 1 a8060 1 "#id2595352">12.3.2. Using libtool on GNU packages d8064 1 a8064 1 "#id2595436">12.3.3. GNU d8069 1 a8069 1
    12.4. d8075 1 a8075 1 "#id2595484">12.4.1. CPP defines
    d8079 1 a8079 1
    12.5. d8085 1 a8085 1 "#id2595654">12.5.1. Package configuration d8089 1 a8089 1 "#id2595825">12.5.2. User d8093 1 a8093 1 "#id2595869">12.5.3. Handling d8097 1 a8097 1 "#id2596089">12.5.4. Creating an account from a d8101 1 a8101 1 "#id2596151">12.5.5. Installing score d8105 1 a8105 1 "#id2596195">12.5.6. Packages providing login d8109 1 a8109 1 "#id2596252">12.5.7. Packages containing perl d8113 1 a8113 1 "#id2596270">12.5.8. Packages with hardcoded paths d8117 1 a8117 1 "#id2596292">12.5.9. Packages installing perl d8125 1 a8125 1 "#id2596512">12.5.11. Packages installing GConf2 d8129 1 a8129 1 "#id2596612">12.5.12. Packages installing d8133 1 a8133 1 "#id2596731">12.5.13. Packages installing X11 d8137 1 a8137 1 "#id2596778">12.5.14. Packages installing GTK2 d8141 1 a8141 1 "#id2596916">12.5.15. Packages installing SGML or d8145 1 a8145 1 "#id2596968">12.5.16. Packages installing d8149 1 a8149 1 "#id2597107">12.5.17. Packages using d8153 1 a8153 1 "#id2597121">12.5.18. Packages installing startup d8158 1 a8158 1
    12.6. d8168 1 a8168 1 "id2593797" id="id2593797">12.1. General d8178 2 a8179 2

    12.1.1. How to pull in d8231 2 a8232 2 class="pkgname">devel/cpuflags package if you're interested in optimization for the current CPU.

    d8239 2 a8240 2

    12.1.2. Restricted d8400 3 a8402 2 class="pkgname">print/lyx package, which uses the xpm library, version 3.4j to build:

    d8487 4 a8490 3 class="pkgname">print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8506 3 a8508 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8532 7 a8538 7 class="pkgname">devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8545 2 a8546 2

    12.1.4. Handling conflicts d8565 6 a8570 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8593 2 a8594 2

    12.1.5. Packages that cannot d8625 2 a8626 2

    12.1.6. Packages which d8689 2 a8690 2

    12.1.8. How to handle d8715 2 a8716 2

    12.1.9. How to handle d8756 2 a8757 2

    12.1.10. Portability of d8773 2 a8774 2

    12.1.10.1. ${INSTALL}, d8799 1 a8799 1 "id2594798" id="id2594798">12.2. Possible d8809 2 a8810 2

    12.2.1. Packages whose d8827 2 a8828 2 class="pkgname">graphics/ns-cult3d is an example of this usage.

    d8842 25 a8866 23 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8873 2 a8874 2

    12.2.2. How to handle d8903 2 a8904 2 "id2594876" id= "id2594876">12.3. Configuration d8931 5 a8935 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d9027 3 a9029 10 include all of the .a, .la, and .so, .so.major and .so.major.minor files.

    d9125 2 a9126 2

    12.3.2. Using libtool on GNU d9205 2 a9206 2

    12.3.3. GNU d9272 1 a9272 1 "id2595481" id="id2595481">12.4. Building d9282 2 a9283 2

    12.4.1. CPP defines

    d9322 1 a9322 1 "id2595651" id="id2595651">12.5. Package d9332 2 a9333 2

    12.5.1. Package d9405 2 a9406 2

    12.5.2. User d9455 2 a9456 2

    12.5.3. Handling d9481 1 a9481 1 class="pkgname">graphics/graphviz:

    d9530 2 a9531 2

    12.5.4. Creating an account d9585 2 a9586 2

    12.5.5. Installing score d9623 2 a9624 2

    12.5.6. Packages providing d9659 2 a9660 2

    12.5.7. Packages containing d9678 2 a9679 2

    12.5.8. Packages with d9705 2 a9706 2

    12.5.9. Packages installing d9810 2 a9811 2 class="pkgname">devel/gtexinfo package will be added automatically.

    d9845 2 a9846 2

    12.5.11. Packages installing d9920 2 a9921 2

    12.5.12. Packages installing d9965 2 a9966 2

    12.5.13. Packages installing d10003 2 a10004 2

    12.5.14. Packages installing d10070 2 a10071 2

    12.5.15. Packages installing d10132 2 a10133 2

    12.5.16. Packages installing d10191 2 a10192 2

    12.5.17. Packages using d10215 2 a10216 2

    12.5.18. Packages installing d10239 1 a10239 1 "id2597210" id="id2597210">12.6. Feedback d10286 4 a10289 4 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d10355 1 a10355 1 class="pkgname">pkgtools/pkgdiff package.

    d10442 2 a10443 2 class="pkgname">pkgtools/pkglint, and fix the problems it reports:

    d10475 1 a10475 1
    14.1. d10478 1 a10478 1
    14.2. d10482 1 a10482 1
    14.3. d10485 1 a10485 1
    14.4. d10495 2 a10496 2 "id2597672" id= "id2597672">14.1. Submitting your d10562 2 a10563 2 "id2597723" id= "id2597723">14.2. Committing: Importing a d10619 1 a10619 1 "id2597854" id="id2597854">14.3. Updating d10670 1 a10670 1 "id2597874" id="id2597874">14.4. Moving a d10771 1 a10771 1
    A.1. d10776 1 a10776 1
    A.1.1. d10779 1 a10779 1
    A.1.2. d10782 1 a10782 1
    A.1.3. d10785 1 a10785 1
    A.1.4. d10791 1 a10791 1
    A.2. Steps d10809 1 a10809 1 "id2598100" id="id2598100">A.1. files

    d10818 2 a10819 2

    A.1.1. Makefile

    d10846 2 a10847 2

    A.1.2. DESCR

    d10863 2 a10864 2

    A.1.3. PLIST

    d10881 2 a10882 2

    A.1.4. Checking a package with d10892 6 a10897 6 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10920 1 a10920 1 "id2598173" id="id2598173">A.2. Steps for d11338 1 a11338 1
    D.1. d11341 1 a11341 1
    D.2. d11354 1 a11354 1 "id2599093" id="id2599093">D.1. Targets

    d11407 2 a11408 2 "id2599163" id= "id2599163">D.2. Procedure

    @ 1.17 log @Regenerate for fixes.xml rev 1.7 (typo fix), but appears to have pulled in some other changes as well. @ text @d11 1 a11 1 "DocBook XSL Stylesheets V1.67.0" /> d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515133">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515432">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515876">3.2.3. Interix

    d155 1 a155 1 "#id2515966">3.2.4. IRIX

    d158 1 a158 1 "#id2516084">3.2.5. OpenBSD

    d161 1 a161 1 "#id2516264">3.2.6. Solaris d179 1 a179 1 "#id2516401">4.1.1. Where to get binary d183 1 a183 1 "#id2516441">4.1.2. How to use binary d187 1 a187 1 "#id2516576">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516597">4.2.1. d202 1 a202 1 "#id2516617">4.2.2. Fetching d206 1 a206 1 "#id2516806">4.2.3. How to build and d210 1 a210 1 "#id2517464">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2582963">5.3.2. Other environmental d243 1 a243 1 "#id2583003">5.3.3. Operation
    d246 1 a246 1 "#id2583141">5.3.4. What it d250 1 a250 1 "#id2583266">5.3.5. Disk space d254 1 a254 1 "#id2583292">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583685">5.3.7. Building a partial set of d267 1 a267 1
    5.4. d274 1 a274 1 "#id2584205">5.4.1. Example of d286 2 a287 2
    6.1. Is there a mailing list for pkg-related d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 1 a300 1
    6.5. d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 1 a312 1
    6.8. d316 1 a316 1
    6.9. d321 1 a321 1
    6.10. d324 1 a324 1
    6.11. d329 1 a329 1
    6.12. d333 1 a333 1
    6.13. d371 1 a371 1
    7.4. d378 1 a378 1
    7.6. d381 1 a381 1
    7.7. d392 1 a392 1
    8.1. d395 1 a395 1
    8.2. d407 1 a407 1
    8.5. d410 1 a410 1
    8.6. d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2587809">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2588249">9.2.2. Updating 9.3. d459 1 a459 1 "#id2588546">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2590940">12.1.1. How to pull in variables d518 1 a518 1 "#id2591092">12.1.2. Restricted d526 1 a526 1 "#id2591607">12.1.4. Handling conflicts with d530 1 a530 1 "#id2591657">12.1.5. Packages that cannot or d534 1 a534 1 "#id2591683">12.1.6. Packages which should not d542 1 a542 1 "#id2591774">12.1.8. How to handle compiler d546 1 a546 1 "#id2591797">12.1.9. How to handle incrementing d551 1 a551 1 "#id2591914">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2591942">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2592005">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2592424">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2592577">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2592625">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2592794">12.5.1. Package configuration d613 1 a613 1 "#id2592897">12.5.2. User d617 1 a617 1 "#id2593010">12.5.3. Handling d621 1 a621 1 "#id2593093">12.5.4. Creating an account from a d625 1 a625 1 "#id2593223">12.5.5. Installing score d629 1 a629 1 "#id2593335">12.5.6. Packages providing login d633 1 a633 1 "#id2593393">12.5.7. Packages containing perl d637 1 a637 1 "#id2593411">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2593432">12.5.9. Packages installing perl d649 1 a649 1 "#id2593652">12.5.11. Packages installing d653 1 a653 1 "#id2593752">12.5.12. Packages installing d657 1 a657 1 "#id2593803">12.5.13. Packages installing X11 d661 1 a661 1 "#id2593850">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2593988">12.5.15. Packages installing SGML d669 1 a669 1 "#id2594108">12.5.16. Packages installing d673 1 a673 1 "#id2594247">12.5.17. Packages using d675 4 d682 1 a682 1
    12.6. d695 1 a695 1
    14.1. d698 1 a698 1
    14.2. d702 1 a702 1
    14.3. d706 1 a706 1
    14.4. d718 1 a718 1
    A.1. d723 1 a723 1
    A.1.1. d726 1 a726 1
    A.1.2. d729 1 a729 1
    A.1.3. d732 1 a732 1
    A.1.4. d738 1 a738 1
    A.2. Steps d764 1 a764 1
    D.1. d767 1 a767 1
    D.2. d788 1 a788 1
    1.1. d807 2 a808 2 "id2514134" id= "id2514134">1.1. Introduction

    d1118 1 a1118 1
    2.1. As d1121 1 a1121 1
    2.2. Via d1124 1 a1124 1
    2.3. Via d1134 1 a1134 1
    3.1. d1137 1 a1137 1
    3.2. d1143 1 a1143 1 "#id2515133">3.2.1. Darwin (Mac OS d1147 1 a1147 1 "#id2515432">3.2.2. FreeBSD
    d1150 1 a1150 1 "#id2515876">3.2.3. Interix d1153 1 a1153 1 "#id2515966">3.2.4. IRIX d1156 1 a1156 1 "#id2516084">3.2.5. OpenBSD d1159 1 a1159 1 "#id2516264">3.2.6. Solaris d1177 1 a1177 1 "#id2516401">4.1.1. Where to get binary d1181 1 a1181 1 "#id2516441">4.1.2. How to use binary d1185 1 a1185 1 "#id2516576">4.1.3. A word of d1190 1 a1190 1
    4.2. d1196 1 a1196 1 "#id2516597">4.2.1. Requirements
    d1199 1 a1199 1 "#id2516617">4.2.2. Fetching d1203 1 a1203 1 "#id2516806">4.2.3. How to build and d1207 1 a1207 1 "#id2517464">4.2.4. Selecting the d1219 1 a1219 1
    5.1. d1222 1 a1222 1
    5.2. d1236 1 a1236 1 "#id2582963">5.3.2. Other environmental d1240 1 a1240 1 "#id2583003">5.3.3. Operation
    d1243 1 a1243 1 "#id2583141">5.3.4. What it does d1246 1 a1246 1 "#id2583266">5.3.5. Disk space d1250 1 a1250 1 "#id2583292">5.3.6. Setting up a sandbox for d1254 1 a1254 1 "#id2583685">5.3.7. Building a partial set of d1263 1 a1263 1
    5.4. d1270 1 a1270 1 "#id2584205">5.4.1. Example of d1282 2 a1283 2
    6.1. Is there a mailing list for pkg-related d1286 1 a1286 1
    6.2. d1293 1 a1293 1
    6.4. How d1296 1 a1296 1
    6.5. How d1300 1 a1300 1
    6.6. How d1304 1 a1304 1
    6.7. How d1307 1 a1307 1
    6.8. How d1310 1 a1310 1
    6.9. How d1315 1 a1315 1
    6.10. d1318 1 a1318 1
    6.11. d1323 1 a1323 1
    6.12. d1327 1 a1327 1
    6.13. d1357 1 a1357 1
    2.1. As d1360 1 a1360 1
    2.2. Via d1363 1 a1363 1
    2.3. Via d1377 1 a1377 1 "id2514720" id="id2514720">2.1. As tar d1395 1 a1395 1 "id2514736" id="id2514736">2.2. Via d1421 1 a1421 1 "id2514836" id="id2514836">2.3. Via d1478 1 a1478 1
    3.1. d1481 1 a1481 1
    3.2. d1486 1 a1486 1
    3.2.1. d1489 1 a1489 1
    3.2.2. d1492 1 a1492 1
    3.2.3. d1495 1 a1495 1
    3.2.4. d1498 1 a1498 1
    3.2.5. d1501 1 a1501 1
    3.2.6. d1513 2 a1514 2 "id2515014" id= "id2515014">3.1. Bootstrapping pkgsrc

    d1604 1 a1604 1 "id2515127" id="id2515127">3.2. Platform d1617 2 a1618 2

    3.2.1. Darwin (Mac OS d1750 2 a1751 2

    3.2.2. FreeBSD

    d1807 2 a1808 2

    3.2.3. Interix

    d1978 2 a1979 2

    3.2.4. IRIX

    d2031 2 a2032 2

    3.2.5. OpenBSD

    d2098 2 a2099 2

    3.2.6. Solaris

    d2143 2 a2144 2

    3.2.6.1. If you are using d2173 2 a2174 2

    3.2.6.2. If you are using d2251 1 a2251 1
    4.1.1. d2254 1 a2254 1
    4.1.2. d2257 1 a2257 1
    4.1.3. d2262 1 a2262 1
    4.2. d2267 1 a2267 1
    4.2.1. d2270 1 a2270 1
    4.2.2. d2273 1 a2273 1
    4.2.3. d2276 1 a2276 1
    4.2.4. d2303 2 a2304 2

    4.1.1. Where to get binary d2335 2 a2336 2

    4.1.2. How to use binary d2380 2 a2381 2

    4.1.3. A word of d2404 1 a2404 1 "id2516587" id="id2516587">4.2. Building d2419 2 a2420 2

    4.2.1. Requirements

    d2439 2 a2440 2

    4.2.2. Fetching d2481 2 a2482 2

    4.2.3. How to build and d2646 2 a2647 2

    4.2.4. Selecting the d2747 1 a2747 1
    5.1. d2750 1 a2750 1
    5.2. d2763 1 a2763 1
    5.3.2. d2766 1 a2766 1
    5.3.3. d2769 1 a2769 1
    5.3.4. d2772 1 a2772 1
    5.3.5. d2775 1 a2775 1
    5.3.6. d2779 1 a2779 1
    5.3.7. d2788 1 a2788 1
    5.4. d2794 1 a2794 1
    5.4.1. d2806 1 a2806 1 "id2582745" id="id2582745">5.1. Building a d2860 1 a2860 1 "id2582823" id="id2582823">5.2. Settings d2942 2 a2943 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3042 2 a3043 2

    5.3.3. Operation

    d3089 2 a3090 2

    5.3.4. What it does

    d3148 2 a3149 2

    5.3.5. Disk space d3191 2 a3192 2

    5.3.6. Setting up a sandbox d3381 2 a3382 2

    5.3.7. Building a partial d3565 1 a3565 1 "id2584190" id="id2584190">5.4. Creating a d3588 2 a3589 2

    5.4.1. Example of d3662 2 a3663 2
    6.1. Is there a mailing list for pkg-related d3666 1 a3666 1
    6.2. d3673 1 a3673 1
    6.4. How d3676 1 a3676 1
    6.5. How d3680 1 a3680 1
    6.6. How d3683 1 a3683 1
    6.7. How d3686 1 a3686 1
    6.8. How d3689 1 a3689 1
    6.9. How d3694 1 a3694 1
    6.10. How d3697 1 a3697 1
    6.11. What d3702 1 a3702 1
    6.12. What d3706 1 a3706 1
    6.13. d3728 2 a3729 2 "id2584466" id="id2584466">6.1. Is there a mailing list for pkg-related discussion?

    d3734 38 a3771 4

    Yes, is the list for discussing package related issues. To subscribe do:

    d3773 2 a3774 2 % echo subscribe tech-pkg | mail majordomo@@NetBSD.org d3777 3 a3779 3

    An archive of the list is available at http://mail-index.NetBSD.org/tech-pkg/.

    d3787 1 a3787 1 "id2584496" id="id2584496">6.2. Where's d4042 1 a4042 1 "id2584748" id="id2584748">6.4. How to use d4060 1 a4060 1 "id2584760" id="id2584760">6.5. How to d4099 1 a4099 1 "id2584803" id="id2584803">6.6. How can I d4122 1 a4122 1 "id2584830" id="id2584830">6.7. How can I d4145 1 a4145 1 "id2584858" id="id2584858">6.8. How to d4170 1 a4170 1 "id2584872" id="id2584872">6.9. How do I d4204 1 a4204 1 "id2584923" id="id2584923">6.10. How to d4273 1 a4273 1 "id2585063" id="id2585063">6.11. What does d4305 1 a4305 1 "id2585101" id="id2585101">6.12. What does d4334 1 a4334 1 "id2585227" id="id2585227">6.13. Using d4557 1 a4557 1 $NetBSD: faq.xml,v 1.4 2005/01/11 16:05:20 wiz Exp $ d4616 1 a4616 1
    7.4. d4623 1 a4623 1
    7.6. d4626 1 a4626 1
    7.7. d4636 1 a4636 1
    8.1. RCS d4639 1 a4639 1
    8.2. d4650 1 a4650 1
    8.5. d4653 1 a4653 1
    8.6. d4657 1 a4657 1
    8.7. d4672 1 a4672 1
    9.1. d4675 1 a4675 1
    9.2. d4682 1 a4682 1 "#id2587809">9.2.1. Anatomy of a buildlink3.mk d4686 1 a4686 1 "#id2588249">9.2.2. Updating 9.3. d4701 1 a4701 1 "#id2588546">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4717 1 a4717 1
    10.1. d4720 1 a4720 1
    10.2. d4734 1 a4734 1
    11.2. d4748 1 a4748 1
    12.1. d4754 1 a4754 1 "#id2590940">12.1.1. How to pull in variables d4758 1 a4758 1 "#id2591092">12.1.2. Restricted d4766 1 a4766 1 "#id2591607">12.1.4. Handling conflicts with d4770 1 a4770 1 "#id2591657">12.1.5. Packages that cannot or d4774 1 a4774 1 "#id2591683">12.1.6. Packages which should not be d4782 1 a4782 1 "#id2591774">12.1.8. How to handle compiler d4786 1 a4786 1 "#id2591797">12.1.9. How to handle incrementing d4791 1 a4791 1 "#id2591914">12.1.10. Portability of d4796 1 a4796 1
    12.2. d4802 1 a4802 1 "#id2591942">12.2.1. Packages whose distfiles d4807 1 a4807 1 "#id2592005">12.2.2. How to handle modified d4812 1 a4812 1
    12.3. d4822 1 a4822 1 "#id2592424">12.3.2. Using libtool on GNU d4827 1 a4827 1 "#id2592577">12.3.3. GNU d4832 1 a4832 1
    12.4. d4838 1 a4838 1 "#id2592625">12.4.1. CPP defines
    d4842 1 a4842 1
    12.5. d4848 1 a4848 1 "#id2592794">12.5.1. Package configuration d4852 1 a4852 1 "#id2592897">12.5.2. User d4856 1 a4856 1 "#id2593010">12.5.3. Handling d4860 1 a4860 1 "#id2593093">12.5.4. Creating an account from a d4864 1 a4864 1 "#id2593223">12.5.5. Installing score d4868 1 a4868 1 "#id2593335">12.5.6. Packages providing login d4872 1 a4872 1 "#id2593393">12.5.7. Packages containing perl d4876 1 a4876 1 "#id2593411">12.5.8. Packages with hardcoded d4880 1 a4880 1 "#id2593432">12.5.9. Packages installing perl d4888 1 a4888 1 "#id2593652">12.5.11. Packages installing GConf2 d4892 1 a4892 1 "#id2593752">12.5.12. Packages installing d4896 1 a4896 1 "#id2593803">12.5.13. Packages installing X11 d4900 1 a4900 1 "#id2593850">12.5.14. Packages installing GTK2 d4904 1 a4904 1 "#id2593988">12.5.15. Packages installing SGML or d4908 1 a4908 1 "#id2594108">12.5.16. Packages installing d4912 1 a4912 1 "#id2594247">12.5.17. Packages using d4914 4 d4921 1 a4921 1
    12.6. d4934 1 a4934 1
    14.1. d4937 1 a4937 1
    14.2. d4941 1 a4941 1
    14.3. d4944 1 a4944 1
    14.4. d4977 1 a4977 1
    7.4. Other d4984 1 a4984 1
    7.6. d4987 1 a4987 1
    7.7. d5322 1 a5322 1 "id2586341" id="id2586341">7.4. Other d5446 2 a5447 2 "id2586535" id= "id2586535">7.6. 7.7. 8.1. RCS d5543 1 a5543 1
    8.2. d5554 1 a5554 1
    8.5. d5557 1 a5557 1
    8.6. d5561 1 a5561 1
    8.7. d5587 1 a5587 1 "id2586677" id="id2586677">8.1. RCS d5605 2 a5606 2 "id2586692" id= "id2586692">8.2. Semi-automatic d5800 2 a5801 2 "id2587081" id= "id2587081">8.5. Manpage-compression

    d5825 1 a5825 1 "id2587123" id="id2587123">8.6. Changing d5845 1 a5845 1 "id2587140" id="id2587140">8.7. Platform d5987 1 a5987 1
    9.1. d5990 1 a5990 1
    9.2. d5996 1 a5996 1
    9.2.1. d5999 1 a5999 1
    9.2.2. d6008 1 a6008 1
    9.3. d6014 1 a6014 1
    9.3.1. d6018 1 a6018 1
    9.3.2. d6069 1 a6069 1 "id2587480" id="id2587480">9.1. Converting d6220 1 a6220 1 "id2587739" id="id2587739">9.2. Writing d6260 2 a6261 2

    9.2.1. Anatomy of a buildlink3.mk d6491 2 a6492 2

    9.2.2. Updating 9.3. Writing d6613 2 a6614 2

    9.3.1. Anatomy of a d6739 2 a6740 2

    9.3.2. Global preferences d6798 1 a6798 1
    10.1. d6801 1 a6801 1
    10.2. d6821 1 a6821 1 "id2588845" id="id2588845">10.1. Global d6839 2 a6840 2 "id2588860" id= "id2588860">10.2. Converting packages to d7003 1 a7003 1
    11.2. Main d7200 1 a7200 1 "id2589468" id="id2589468">11.2. Main d7966 1 a7966 1
    12.1. d7972 1 a7972 1 "#id2590940">12.1.1. How to pull in variables from d7976 1 a7976 1 "#id2591092">12.1.2. Restricted d7984 1 a7984 1 "#id2591607">12.1.4. Handling conflicts with other d7988 1 a7988 1 "#id2591657">12.1.5. Packages that cannot or should d7992 1 a7992 1 "#id2591683">12.1.6. Packages which should not be d8000 1 a8000 1 "#id2591774">12.1.8. How to handle compiler d8004 1 a8004 1 "#id2591797">12.1.9. How to handle incrementing d8009 1 a8009 1 "#id2591914">12.1.10. Portability of d8014 1 a8014 1
    12.2. d8020 1 a8020 1 "#id2591942">12.2.1. Packages whose distfiles d8025 1 a8025 1 "#id2592005">12.2.2. How to handle modified d8030 1 a8030 1
    12.3. d8040 1 a8040 1 "#id2592424">12.3.2. Using libtool on GNU packages d8044 1 a8044 1 "#id2592577">12.3.3. GNU d8049 1 a8049 1
    12.4. d8055 1 a8055 1 "#id2592625">12.4.1. CPP defines
    d8059 1 a8059 1
    12.5. d8065 1 a8065 1 "#id2592794">12.5.1. Package configuration d8069 1 a8069 1 "#id2592897">12.5.2. User d8073 1 a8073 1 "#id2593010">12.5.3. Handling d8077 1 a8077 1 "#id2593093">12.5.4. Creating an account from a d8081 1 a8081 1 "#id2593223">12.5.5. Installing score d8085 1 a8085 1 "#id2593335">12.5.6. Packages providing login d8089 1 a8089 1 "#id2593393">12.5.7. Packages containing perl d8093 1 a8093 1 "#id2593411">12.5.8. Packages with hardcoded paths d8097 1 a8097 1 "#id2593432">12.5.9. Packages installing perl d8105 1 a8105 1 "#id2593652">12.5.11. Packages installing GConf2 d8109 1 a8109 1 "#id2593752">12.5.12. Packages installing d8113 1 a8113 1 "#id2593803">12.5.13. Packages installing X11 d8117 1 a8117 1 "#id2593850">12.5.14. Packages installing GTK2 d8121 1 a8121 1 "#id2593988">12.5.15. Packages installing SGML or d8125 1 a8125 1 "#id2594108">12.5.16. Packages installing d8129 1 a8129 1 "#id2594247">12.5.17. Packages using d8131 4 d8138 1 a8138 1
    12.6. d8148 1 a8148 1 "id2590937" id="id2590937">12.1. General d8158 2 a8159 2

    12.1.1. How to pull in d8219 2 a8220 2

    12.1.2. Restricted d8340 1 a8340 1 any of the wildcard version numbers recognised by d8523 2 a8524 2

    12.1.4. Handling conflicts d8571 2 a8572 2

    12.1.5. Packages that cannot d8603 2 a8604 2

    12.1.6. Packages which d8667 2 a8668 2

    12.1.8. How to handle d8693 2 a8694 2

    12.1.9. How to handle d8734 2 a8735 2

    12.1.10. Portability of d8751 2 a8752 2

    12.1.10.1. ${INSTALL}, d8777 1 a8777 1 "id2591939" id="id2591939">12.2. Possible d8787 2 a8788 2

    12.2.1. Packages whose d8849 2 a8850 2

    12.2.2. How to handle d8879 2 a8880 2 "id2592017" id= "id2592017">12.3. Configuration d9108 2 a9109 2

    12.3.2. Using libtool on GNU d9188 2 a9189 2

    12.3.3. GNU d9255 1 a9255 1 "id2592621" id="id2592621">12.4. Building d9265 2 a9266 2

    12.4.1. CPP defines

    d9305 1 a9305 1 "id2592791" id="id2592791">12.5. Package d9315 2 a9316 2

    12.5.1. Package d9388 2 a9389 2

    12.5.2. User d9438 2 a9439 2

    12.5.3. Handling d9513 2 a9514 2

    12.5.4. Creating an account d9568 2 a9569 2

    12.5.5. Installing score d9606 2 a9607 2

    12.5.6. Packages providing d9642 2 a9643 2

    12.5.7. Packages containing d9661 2 a9662 2

    12.5.8. Packages with d9688 2 a9689 2

    12.5.9. Packages installing d9828 2 a9829 2

    12.5.11. Packages installing d9903 2 a9904 2

    12.5.12. Packages installing d9948 2 a9949 2

    12.5.13. Packages installing d9986 2 a9987 2

    12.5.14. Packages installing d10053 2 a10054 2

    12.5.15. Packages installing d10115 2 a10116 2

    12.5.16. Packages installing d10174 2 a10175 2

    12.5.17. Packages using d10193 22 d10222 1 a10222 1 "id2594261" id="id2594261">12.6. Feedback d10458 1 a10458 1
    14.1. d10461 1 a10461 1
    14.2. d10465 1 a10465 1
    14.3. d10468 1 a10468 1
    14.4. d10478 2 a10479 2 "id2594723" id= "id2594723">14.1. Submitting your d10545 2 a10546 2 "id2594842" id= "id2594842">14.2. Committing: Importing a d10602 1 a10602 1 "id2594905" id="id2594905">14.3. Updating d10637 1 a10637 1

    Please also recognise that, just because a new version d10653 1 a10653 1 "id2594924" id="id2594924">14.4. Moving a d10754 1 a10754 1

    A.1. d10759 1 a10759 1
    A.1.1. d10762 1 a10762 1
    A.1.2. d10765 1 a10765 1
    A.1.3. d10768 1 a10768 1
    A.1.4. d10774 1 a10774 1
    A.2. Steps d10792 1 a10792 1 "id2595219" id="id2595219">A.1. files

    d10801 2 a10802 2

    A.1.1. Makefile

    d10829 2 a10830 2

    A.1.2. DESCR

    d10846 2 a10847 2

    A.1.3. PLIST

    d10864 2 a10865 2

    A.1.4. Checking a package with d10903 1 a10903 1 "id2595292" id="id2595292">A.2. Steps for d11321 1 a11321 1
    D.1. d11324 1 a11324 1
    D.2. d11337 1 a11337 1 "id2596075" id="id2596075">D.1. Targets

    d11390 2 a11391 2 "id2596282" id= "id2596282">D.2. Procedure

    d11458 1 a11458 1 make install-htdoc @ 1.16 log @update for Tru64 and DragonFly (hand patched, a regen resulted in some bad quoting and whitespace changes) @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515259">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515558">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515660">3.2.3. Interix

    d155 1 a155 1 "#id2515751">3.2.4. IRIX

    d158 1 a158 1 "#id2516278">3.2.5. OpenBSD d161 1 a161 1 "#id2516390">3.2.6. Solaris d179 1 a179 1 "#id2516526">4.1.1. Where to get binary d183 1 a183 1 "#id2516567">4.1.2. How to use binary d187 1 a187 1 "#id2516633">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516723">4.2.1. d202 1 a202 1 "#id2516743">4.2.2. Fetching d206 1 a206 1 "#id2516864">4.2.3. How to build and d210 1 a210 1 "#id2517180">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2517962">5.3.2. Other environmental d243 1 a243 1 "#id2518003">5.3.3. Operation
    d246 1 a246 1 "#id2583267">5.3.4. What it d250 1 a250 1 "#id2583392">5.3.5. Disk space d254 1 a254 1 "#id2583418">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583811">5.3.7. Building a partial set of d267 1 a267 1
    5.4. d274 1 a274 1 "#id2584310">5.4.1. Example of d286 1 a286 1
    6.1. d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 1 a300 1
    6.5. d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 1 a312 1
    6.8. d316 1 a316 1
    6.9. d321 1 a321 1
    6.10. d324 1 a324 1
    6.11. d329 1 a329 1
    6.12. d333 1 a333 1
    6.13. d371 1 a371 1
    7.4. d378 1 a378 1
    7.6. d381 1 a381 1
    7.7. d392 1 a392 1
    8.1. d395 1 a395 1
    8.2. d407 1 a407 1
    8.5. d410 1 a410 1
    8.6. d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2587913">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2588354">9.2.2. Updating 9.3. d459 1 a459 1 "#id2588582">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2590977">12.1.1. How to pull in variables d518 1 a518 1 "#id2591128">12.1.2. Restricted d526 1 a526 1 "#id2591643">12.1.4. Handling conflicts with d530 1 a530 1 "#id2591762">12.1.5. Packages that cannot or d534 1 a534 1 "#id2591787">12.1.6. Packages which should not d542 1 a542 1 "#id2591879">12.1.8. How to handle compiler d546 1 a546 1 "#id2591901">12.1.9. How to handle incrementing d551 1 a551 1 "#id2591950">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2591978">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2592109">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2592529">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2592613">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2592729">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2592762">12.5.1. Package configuration d613 1 a613 1 "#id2592933">12.5.2. User d617 1 a617 1 "#id2593046">12.5.3. Handling d621 1 a621 1 "#id2593197">12.5.4. Creating an account from a d625 1 a625 1 "#id2593328">12.5.5. Installing score d629 1 a629 1 "#id2593371">12.5.6. Packages providing login d633 1 a633 1 "#id2593429">12.5.7. Packages containing perl d637 1 a637 1 "#id2593447">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2593468">12.5.9. Packages installing perl d649 1 a649 1 "#id2593688">12.5.11. Packages installing d653 1 a653 1 "#id2593788">12.5.12. Packages installing d657 1 a657 1 "#id2593840">12.5.13. Packages installing X11 d661 1 a661 1 "#id2593886">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2593956">12.5.15. Packages installing SGML d669 1 a669 1 "#id2594076">12.5.16. Packages installing d673 1 a673 1 "#id2594283">12.5.17. Packages using d678 1 a678 1
    12.6. d691 1 a691 1
    14.1. d694 1 a694 1
    14.2. d698 1 a698 1
    14.3. d702 1 a702 1
    14.4. d714 1 a714 1
    A.1. d719 1 a719 1
    A.1.1. d722 1 a722 1
    A.1.2. d725 1 a725 1
    A.1.3. d728 1 a728 1
    A.1.4. d734 1 a734 1
    A.2. Steps d760 1 a760 1
    D.1. d763 1 a763 1
    D.2. d784 1 a784 1
    1.1. d803 2 a804 2 "id2514274" id= "id2514274">1.1. Introduction

    d915 5 a927 5
  • Tru64 (Digital UNIX/OSF1)

  • d1114 1 a1114 1
    2.1. As d1117 1 a1117 1
    2.2. Via d1120 1 a1120 1
    2.3. Via d1130 1 a1130 1
    3.1. d1133 1 a1133 1
    3.2. d1139 1 a1139 1 "#id2515259">3.2.1. Darwin (Mac OS d1143 1 a1143 1 "#id2515558">3.2.2. FreeBSD
    d1146 1 a1146 1 "#id2515660">3.2.3. Interix d1149 1 a1149 1 "#id2515751">3.2.4. IRIX d1152 1 a1152 1 "#id2516278">3.2.5. OpenBSD d1155 1 a1155 1 "#id2516390">3.2.6. Solaris d1173 1 a1173 1 "#id2516526">4.1.1. Where to get binary d1177 1 a1177 1 "#id2516567">4.1.2. How to use binary d1181 1 a1181 1 "#id2516633">4.1.3. A word of d1186 1 a1186 1
    4.2. d1192 1 a1192 1 "#id2516723">4.2.1. Requirements
    d1195 1 a1195 1 "#id2516743">4.2.2. Fetching d1199 1 a1199 1 "#id2516864">4.2.3. How to build and d1203 1 a1203 1 "#id2517180">4.2.4. Selecting the d1215 1 a1215 1
    5.1. d1218 1 a1218 1
    5.2. d1232 1 a1232 1 "#id2517962">5.3.2. Other environmental d1236 1 a1236 1 "#id2518003">5.3.3. Operation
    d1239 1 a1239 1 "#id2583267">5.3.4. What it does d1242 1 a1242 1 "#id2583392">5.3.5. Disk space d1246 1 a1246 1 "#id2583418">5.3.6. Setting up a sandbox for d1250 1 a1250 1 "#id2583811">5.3.7. Building a partial set of d1259 1 a1259 1
    5.4. d1266 1 a1266 1 "#id2584310">5.4.1. Example of d1278 1 a1278 1
    6.1. Is d1282 1 a1282 1
    6.2. d1289 1 a1289 1
    6.4. How d1292 1 a1292 1
    6.5. How d1296 1 a1296 1
    6.6. How d1300 1 a1300 1
    6.7. How d1303 1 a1303 1
    6.8. How d1306 1 a1306 1
    6.9. How d1311 1 a1311 1
    6.10. d1314 1 a1314 1
    6.11. d1319 1 a1319 1
    6.12. d1323 1 a1323 1
    6.13. d1353 1 a1353 1
    2.1. As d1356 1 a1356 1
    2.2. Via d1359 1 a1359 1
    2.3. Via d1373 1 a1373 1 "id2514852" id="id2514852">2.1. As tar d1391 1 a1391 1 "id2514868" id="id2514868">2.2. Via d1417 1 a1417 1 "id2514968" id="id2514968">2.3. Via d1474 1 a1474 1
    3.1. d1477 1 a1477 1
    3.2. d1482 1 a1482 1
    3.2.1. d1485 1 a1485 1
    3.2.2. d1488 1 a1488 1
    3.2.3. d1491 1 a1491 1
    3.2.4. d1494 1 a1494 1
    3.2.5. d1497 1 a1497 1
    3.2.6. d1509 2 a1510 2 "id2515078" id= "id2515078">3.1. Bootstrapping pkgsrc

    d1600 1 a1600 1 "id2515253" id="id2515253">3.2. Platform d1613 2 a1614 2

    3.2.1. Darwin (Mac OS d1746 2 a1747 2

    3.2.2. FreeBSD

    d1803 2 a1804 2

    3.2.3. Interix

    d1974 2 a1975 2

    3.2.4. IRIX

    d2027 2 a2028 2

    3.2.5. OpenBSD

    d2094 2 a2095 2

    3.2.6. Solaris

    d2139 2 a2140 2

    3.2.6.1. If you are using d2169 2 a2170 2

    3.2.6.2. If you are using d2247 1 a2247 1
    4.1.1. d2250 1 a2250 1
    4.1.2. d2253 1 a2253 1
    4.1.3. d2258 1 a2258 1
    4.2. d2263 1 a2263 1
    4.2.1. d2266 1 a2266 1
    4.2.2. d2269 1 a2269 1
    4.2.3. d2272 1 a2272 1
    4.2.4. d2299 2 a2300 2

    4.1.1. Where to get binary d2331 2 a2332 2

    4.1.2. How to use binary d2376 2 a2377 2

    4.1.3. A word of d2400 1 a2400 1 "id2516645" id="id2516645">4.2. Building d2415 2 a2416 2

    4.2.1. Requirements

    d2435 2 a2436 2

    4.2.2. Fetching d2477 2 a2478 2

    4.2.3. How to build and d2642 2 a2643 2

    4.2.4. Selecting the d2743 1 a2743 1
    5.1. d2746 1 a2746 1
    5.2. d2759 1 a2759 1
    5.3.2. d2762 1 a2762 1
    5.3.3. d2765 1 a2765 1
    5.3.4. d2768 1 a2768 1
    5.3.5. d2771 1 a2771 1
    5.3.6. d2775 1 a2775 1
    5.3.7. d2784 1 a2784 1
    5.4. d2790 1 a2790 1
    5.4.1. d2802 1 a2802 1 "id2517335" id="id2517335">5.1. Building a d2856 1 a2856 1 "id2517822" id="id2517822">5.2. Settings d2938 2 a2939 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3038 2 a3039 2

    5.3.3. Operation

    d3085 2 a3086 2

    5.3.4. What it does

    d3144 2 a3145 2

    5.3.5. Disk space d3187 2 a3188 2

    5.3.6. Setting up a sandbox d3377 2 a3378 2

    5.3.7. Building a partial d3440 14 a3453 1

    First, make sure that you have 5.4. Creating a d3584 2 a3585 2

    5.4.1. Example of d3658 1 a3658 1
    6.1. Is d3662 1 a3662 1
    6.2. d3669 1 a3669 1
    6.4. How d3672 1 a3672 1
    6.5. How d3676 1 a3676 1
    6.6. How d3679 1 a3679 1
    6.7. How d3682 1 a3682 1
    6.8. How d3685 1 a3685 1
    6.9. How d3690 1 a3690 1
    6.10. How d3693 1 a3693 1
    6.11. What d3698 1 a3698 1
    6.12. What d3702 1 a3702 1
    6.13. d3724 1 a3724 1 "id2584502" id="id2584502">6.1. Is there a d3749 1 a3749 1 "id2584600" id="id2584600">6.2. Where's d4004 1 a4004 1 "id2584853" id="id2584853">6.4. How to use d4022 1 a4022 1 "id2584865" id="id2584865">6.5. How to d4061 1 a4061 1 "id2584907" id="id2584907">6.6. How can I d4084 1 a4084 1 "id2584935" id="id2584935">6.7. How can I d4107 1 a4107 1 "id2584963" id="id2584963">6.8. How to d4132 1 a4132 1 "id2584977" id="id2584977">6.9. How do I d4166 1 a4166 1 "id2585028" id="id2585028">6.10. How to d4235 1 a4235 1 "id2585168" id="id2585168">6.11. What does d4267 1 a4267 1 "id2585206" id="id2585206">6.12. What does d4296 1 a4296 1 "id2585264" id="id2585264">6.13. Using d4519 1 a4519 1 $NetBSD: pkgsrc.html,v 1.15 2005/01/11 16:34:44 xtraeme Exp $ d4578 1 a4578 1
    7.4. d4585 1 a4585 1
    7.6. d4588 1 a4588 1
    7.7. d4598 1 a4598 1
    8.1. RCS d4601 1 a4601 1
    8.2. d4612 1 a4612 1
    8.5. d4615 1 a4615 1
    8.6. d4619 1 a4619 1
    8.7. d4634 1 a4634 1
    9.1. d4637 1 a4637 1
    9.2. d4644 1 a4644 1 "#id2587913">9.2.1. Anatomy of a buildlink3.mk d4648 1 a4648 1 "#id2588354">9.2.2. Updating 9.3. d4663 1 a4663 1 "#id2588582">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4679 1 a4679 1
    10.1. d4682 1 a4682 1
    10.2. d4696 1 a4696 1
    11.2. d4710 1 a4710 1
    12.1. d4716 1 a4716 1 "#id2590977">12.1.1. How to pull in variables d4720 1 a4720 1 "#id2591128">12.1.2. Restricted d4728 1 a4728 1 "#id2591643">12.1.4. Handling conflicts with d4732 1 a4732 1 "#id2591762">12.1.5. Packages that cannot or d4736 1 a4736 1 "#id2591787">12.1.6. Packages which should not be d4744 1 a4744 1 "#id2591879">12.1.8. How to handle compiler d4748 1 a4748 1 "#id2591901">12.1.9. How to handle incrementing d4753 1 a4753 1 "#id2591950">12.1.10. Portability of d4758 1 a4758 1
    12.2. d4764 1 a4764 1 "#id2591978">12.2.1. Packages whose distfiles d4769 1 a4769 1 "#id2592109">12.2.2. How to handle modified d4774 1 a4774 1
    12.3. d4784 1 a4784 1 "#id2592529">12.3.2. Using libtool on GNU d4789 1 a4789 1 "#id2592613">12.3.3. GNU d4794 1 a4794 1
    12.4. d4800 1 a4800 1 "#id2592729">12.4.1. CPP defines
    d4804 1 a4804 1
    12.5. d4810 1 a4810 1 "#id2592762">12.5.1. Package configuration d4814 1 a4814 1 "#id2592933">12.5.2. User d4818 1 a4818 1 "#id2593046">12.5.3. Handling d4822 1 a4822 1 "#id2593197">12.5.4. Creating an account from a d4826 1 a4826 1 "#id2593328">12.5.5. Installing score d4830 1 a4830 1 "#id2593371">12.5.6. Packages providing login d4834 1 a4834 1 "#id2593429">12.5.7. Packages containing perl d4838 1 a4838 1 "#id2593447">12.5.8. Packages with hardcoded d4842 1 a4842 1 "#id2593468">12.5.9. Packages installing perl d4850 1 a4850 1 "#id2593688">12.5.11. Packages installing GConf2 d4854 1 a4854 1 "#id2593788">12.5.12. Packages installing d4858 1 a4858 1 "#id2593840">12.5.13. Packages installing X11 d4862 1 a4862 1 "#id2593886">12.5.14. Packages installing GTK2 d4866 1 a4866 1 "#id2593956">12.5.15. Packages installing SGML or d4870 1 a4870 1 "#id2594076">12.5.16. Packages installing d4874 1 a4874 1 "#id2594283">12.5.17. Packages using d4879 1 a4879 1
    12.6. d4892 1 a4892 1
    14.1. d4895 1 a4895 1
    14.2. d4899 1 a4899 1
    14.3. d4902 1 a4902 1
    14.4. d4935 1 a4935 1
    7.4. Other d4942 1 a4942 1
    7.6. d4945 1 a4945 1
    7.7. d5280 1 a5280 1 "id2586445" id="id2586445">7.4. Other d5404 2 a5405 2 "id2586640" id= "id2586640">7.6. 7.7. 8.1. RCS d5501 1 a5501 1
    8.2. d5512 1 a5512 1
    8.5. d5515 1 a5515 1
    8.6. d5519 1 a5519 1
    8.7. d5545 1 a5545 1 "id2586781" id="id2586781">8.1. RCS d5554 1 a5554 1 @@comment $NetBSD: pkgsrc.html,v 1.15 2005/01/11 16:34:44 xtraeme Exp $ d5563 2 a5564 2 "id2586796" id= "id2586796">8.2. Semi-automatic d5758 2 a5759 2 "id2587186" id= "id2587186">8.5. Manpage-compression

    d5783 1 a5783 1 "id2587227" id="id2587227">8.6. Changing d5803 1 a5803 1 "id2587244" id="id2587244">8.7. Platform d5945 1 a5945 1
    9.1. d5948 1 a5948 1
    9.2. d5954 1 a5954 1
    9.2.1. d5957 1 a5957 1
    9.2.2. d5966 1 a5966 1
    9.3. d5972 1 a5972 1
    9.3.1. d5976 1 a5976 1
    9.3.2. d6027 1 a6027 1 "id2587653" id="id2587653">9.1. Converting d6178 1 a6178 1 "id2587844" id="id2587844">9.2. Writing d6218 2 a6219 2

    9.2.1. Anatomy of a buildlink3.mk d6229 1 a6229 1 # $NetBSD: pkgsrc.html,v 1.15 2005/01/11 16:34:44 xtraeme Exp $ d6449 2 a6450 2

    9.2.2. Updating 9.3. Writing d6571 2 a6572 2

    9.3.1. Anatomy of a d6697 2 a6698 2

    9.3.2. Global preferences d6756 1 a6756 1
    10.1. d6759 1 a6759 1
    10.2. d6779 1 a6779 1 "id2588950" id="id2588950">10.1. Global d6797 2 a6798 2 "id2588965" id= "id2588965">10.2. Converting packages to d6961 1 a6961 1
    11.2. Main d7158 1 a7158 1 "id2589573" id="id2589573">11.2. Main d7924 1 a7924 1
    12.1. d7930 1 a7930 1 "#id2590977">12.1.1. How to pull in variables from d7934 1 a7934 1 "#id2591128">12.1.2. Restricted d7942 1 a7942 1 "#id2591643">12.1.4. Handling conflicts with other d7946 1 a7946 1 "#id2591762">12.1.5. Packages that cannot or should d7950 1 a7950 1 "#id2591787">12.1.6. Packages which should not be d7958 1 a7958 1 "#id2591879">12.1.8. How to handle compiler d7962 1 a7962 1 "#id2591901">12.1.9. How to handle incrementing d7967 1 a7967 1 "#id2591950">12.1.10. Portability of d7972 1 a7972 1
    12.2. d7978 1 a7978 1 "#id2591978">12.2.1. Packages whose distfiles d7983 1 a7983 1 "#id2592109">12.2.2. How to handle modified d7988 1 a7988 1
    12.3. d7998 1 a7998 1 "#id2592529">12.3.2. Using libtool on GNU packages d8002 1 a8002 1 "#id2592613">12.3.3. GNU d8007 1 a8007 1
    12.4. d8013 1 a8013 1 "#id2592729">12.4.1. CPP defines
    d8017 1 a8017 1
    12.5. d8023 1 a8023 1 "#id2592762">12.5.1. Package configuration d8027 1 a8027 1 "#id2592933">12.5.2. User d8031 1 a8031 1 "#id2593046">12.5.3. Handling d8035 1 a8035 1 "#id2593197">12.5.4. Creating an account from a d8039 1 a8039 1 "#id2593328">12.5.5. Installing score d8043 1 a8043 1 "#id2593371">12.5.6. Packages providing login d8047 1 a8047 1 "#id2593429">12.5.7. Packages containing perl d8051 1 a8051 1 "#id2593447">12.5.8. Packages with hardcoded paths d8055 1 a8055 1 "#id2593468">12.5.9. Packages installing perl d8063 1 a8063 1 "#id2593688">12.5.11. Packages installing GConf2 d8067 1 a8067 1 "#id2593788">12.5.12. Packages installing d8071 1 a8071 1 "#id2593840">12.5.13. Packages installing X11 d8075 1 a8075 1 "#id2593886">12.5.14. Packages installing GTK2 d8079 1 a8079 1 "#id2593956">12.5.15. Packages installing SGML or d8083 1 a8083 1 "#id2594076">12.5.16. Packages installing d8087 1 a8087 1 "#id2594283">12.5.17. Packages using d8092 1 a8092 1
    12.6. d8102 1 a8102 1 "id2590973" id="id2590973">12.1. General d8112 2 a8113 2

    12.1.1. How to pull in d8173 2 a8174 2

    12.1.2. Restricted d8414 1 a8414 1 able to run correctly and if there's agail no d8477 2 a8478 2

    12.1.4. Handling conflicts d8525 2 a8526 2

    12.1.5. Packages that cannot d8557 2 a8558 2

    12.1.6. Packages which d8621 2 a8622 2

    12.1.8. How to handle d8647 2 a8648 2

    12.1.9. How to handle d8688 2 a8689 2

    12.1.10. Portability of d8705 2 a8706 2

    12.1.10.1. ${INSTALL}, d8731 1 a8731 1 "id2591975" id="id2591975">12.2. Possible d8741 2 a8742 2

    12.2.1. Packages whose d8803 2 a8804 2

    12.2.2. How to handle d8833 2 a8834 2 "id2592121" id= "id2592121">12.3. Configuration d9062 2 a9063 2

    12.3.2. Using libtool on GNU d9142 2 a9143 2

    12.3.3. GNU d9209 1 a9209 1 "id2592726" id="id2592726">12.4. Building d9219 2 a9220 2

    12.4.1. CPP defines

    d9259 1 a9259 1 "id2592759" id="id2592759">12.5. Package d9269 2 a9270 2

    12.5.1. Package d9342 2 a9343 2

    12.5.2. User d9392 2 a9393 2

    12.5.3. Handling d9454 1 a9454 1

    Is there is a 12.5.4. Creating an account d9522 2 a9523 2

    12.5.5. Installing score d9560 2 a9561 2

    12.5.6. Packages providing d9596 2 a9597 2

    12.5.7. Packages containing d9615 2 a9616 2

    12.5.8. Packages with d9642 2 a9643 2

    12.5.9. Packages installing d9782 2 a9783 2

    12.5.11. Packages installing d9857 2 a9858 2

    12.5.12. Packages installing d9902 2 a9903 2

    12.5.13. Packages installing d9940 2 a9941 2

    12.5.14. Packages installing d10007 2 a10008 2

    12.5.15. Packages installing d10069 2 a10070 2

    12.5.16. Packages installing d10128 2 a10129 2

    12.5.17. Packages using d10154 1 a10154 1 "id2594297" id="id2594297">12.6. Feedback d10390 1 a10390 1
    14.1. d10393 1 a10393 1
    14.2. d10397 1 a10397 1
    14.3. d10400 1 a10400 1
    14.4. d10410 2 a10411 2 "id2594827" id= "id2594827">14.1. Submitting your d10477 2 a10478 2 "id2594878" id= "id2594878">14.2. Committing: Importing a d10534 1 a10534 1 "id2594941" id="id2594941">14.3. Updating d10585 1 a10585 1 "id2594961" id="id2594961">14.4. Moving a d10686 1 a10686 1
    A.1. d10691 1 a10691 1
    A.1.1. d10694 1 a10694 1
    A.1.2. d10697 1 a10697 1
    A.1.3. d10700 1 a10700 1
    A.1.4. d10706 1 a10706 1
    A.2. Steps d10724 1 a10724 1 "id2595255" id="id2595255">A.1. files

    d10733 2 a10734 2

    A.1.1. Makefile

    d10739 1 a10739 1 # $NetBSD: pkgsrc.html,v 1.15 2005/01/11 16:34:44 xtraeme Exp $ d10761 2 a10762 2

    A.1.2. DESCR

    d10778 2 a10779 2

    A.1.3. PLIST

    d10784 1 a10784 1 @@comment $NetBSD: pkgsrc.html,v 1.15 2005/01/11 16:34:44 xtraeme Exp $ d10796 2 a10797 2

    A.1.4. Checking a package with d10835 1 a10835 1 "id2595329" id="id2595329">A.2. Steps for d11253 1 a11253 1
    D.1. d11256 1 a11256 1
    D.2. d11269 1 a11269 1 "id2595975" id="id2595975">D.1. Targets

    d11322 2 a11323 2 "id2596387" id= "id2596387">D.2. Procedure

    @ 1.15 log @re-generate for wiz's improvements to the resume section. @ text @d923 5 d1528 4 d1554 4 d4506 1 a4506 1 $NetBSD: faq.xml,v 1.4 2005/01/11 16:05:20 wiz Exp $ d5541 1 a5541 1 @@comment $NetBSD$ d6216 1 a6216 1 # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $ d10726 1 a10726 1 # $NetBSD$ d10771 1 a10771 1 @@comment $NetBSD$ @ 1.14 log @re-generate @ text @d301 2 a302 2 How to resume transferencies with pkgsrc?

    d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 1 a312 1
    6.8. d316 1 a316 1
    6.9. d321 1 a321 1
    6.10. d324 1 a324 1
    6.11. d329 1 a329 1
    6.12. d333 1 a333 1
    6.13. d371 1 a371 1
    7.4. d378 1 a378 1
    7.6. d381 1 a381 1
    7.7. d392 1 a392 1
    8.1. d395 1 a395 1
    8.2. d407 1 a407 1
    8.5. d410 1 a410 1
    8.6. d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 1 a433 1
    9.2. d440 1 a440 1 "#id2587977">9.2.1. Anatomy of a buildlink3.mk d444 1 a444 1 "#id2588349">9.2.2. Updating 9.3. d459 1 a459 1 "#id2588578">9.3.1. Anatomy of a 9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 1 a479 1
    10.2. d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2590972">12.1.1. How to pull in variables d518 1 a518 1 "#id2591124">12.1.2. Restricted d526 1 a526 1 "#id2591639">12.1.4. Handling conflicts with d530 1 a530 1 "#id2591757">12.1.5. Packages that cannot or d534 1 a534 1 "#id2591783">12.1.6. Packages which should not d542 1 a542 1 "#id2591875">12.1.8. How to handle compiler d546 1 a546 1 "#id2591897">12.1.9. How to handle incrementing d551 1 a551 1 "#id2591946">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2591974">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2592105">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2592593">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2592677">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2592793">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2592826">12.5.1. Package configuration d613 1 a613 1 "#id2592929">12.5.2. User d617 1 a617 1 "#id2593042">12.5.3. Handling d621 1 a621 1 "#id2593193">12.5.4. Creating an account from a d625 1 a625 1 "#id2593392">12.5.5. Installing score d629 1 a629 1 "#id2593435">12.5.6. Packages providing login d633 1 a633 1 "#id2593493">12.5.7. Packages containing perl d637 1 a637 1 "#id2593511">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2593532">12.5.9. Packages installing perl d649 1 a649 1 "#id2593752">12.5.11. Packages installing d653 1 a653 1 "#id2593852">12.5.12. Packages installing d657 1 a657 1 "#id2593904">12.5.13. Packages installing X11 d661 1 a661 1 "#id2593950">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2594020">12.5.15. Packages installing SGML d669 1 a669 1 "#id2594140">12.5.16. Packages installing d673 1 a673 1 "#id2594347">12.5.17. Packages using d678 1 a678 1
    12.6. d691 1 a691 1
    14.1. d694 1 a694 1
    14.2. d698 1 a698 1
    14.3. d702 1 a702 1
    14.4. d714 1 a714 1
    A.1. d719 1 a719 1
    A.1.1. d722 1 a722 1
    A.1.2. d725 1 a725 1
    A.1.3. d728 1 a728 1
    A.1.4. d734 1 a734 1
    A.2. Steps d760 1 a760 1
    D.1. d763 1 a763 1
    D.2. d1288 2 a1289 1 to resume transferencies with pkgsrc?
    d1291 1 a1291 1
    6.6. How d1295 1 a1295 1
    6.7. How d1298 1 a1298 1
    6.8. How d1301 1 a1301 1
    6.9. How d1306 1 a1306 1
    6.10. d1309 1 a1309 1
    6.11. d1314 1 a1314 1
    6.12. d1318 1 a1318 1
    6.13. d3647 2 a3648 1 to resume transferencies with pkgsrc?
    d3650 1 a3650 1
    6.6. How d3653 1 a3653 1
    6.7. How d3656 1 a3656 1
    6.8. How d3659 1 a3659 1
    6.9. How d3664 1 a3664 1
    6.10. How d3667 1 a3667 1
    6.11. What d3672 1 a3672 1
    6.12. What d3676 1 a3676 1
    6.13. d3997 1 a3997 1 resume transferencies with pkgsrc?

    d4002 13 a4014 7

    By default resuming transferencies in pkgsrc is disabled, but you can enable this feature adding the option PKG_RESUME_TRANSFERS=YES into mk.conf, if a previous transfer wasn't completed, it will try to resume it saving your bandwidth.

    a4027 5

    Don't forget to set FETCH_RESUME_ARGS and FETCH_OUTPUT_ARGS if you are not using default values.

    d4035 1 a4035 1 "id2584903" id="id2584903">
    6.6. How can I d4046 1 a4046 1 "filename">mk.conf
    :

    d4058 1 a4058 1 "id2584931" id="id2584931">6.7. How can I d4069 1 a4069 1 "filename">mk.conf
    :

    d4081 1 a4081 1 "id2584958" id="id2584958">6.8. How to d4106 1 a4106 1 "id2584972" id="id2584972">6.9. How do I d4140 1 a4140 1 "id2585024" id="id2585024">6.10. How to d4209 1 a4209 1 "id2585163" id="id2585163">6.11. What does d4241 1 a4241 1 "id2585202" id="id2585202">6.12. What does d4270 1 a4270 1 "id2585259" id="id2585259">6.13. Using d4493 1 a4493 1 $NetBSD: faq.xml,v 1.2 2004/11/20 13:25:22 hubertf Exp $ d4552 1 a4552 1
    7.4. d4559 1 a4559 1
    7.6. d4562 1 a4562 1
    7.7. d4572 1 a4572 1
    8.1. RCS d4575 1 a4575 1
    8.2. d4586 1 a4586 1
    8.5. d4589 1 a4589 1
    8.6. d4593 1 a4593 1
    8.7. d4608 1 a4608 1
    9.1. d4611 1 a4611 1
    9.2. d4618 1 a4618 1 "#id2587977">9.2.1. Anatomy of a buildlink3.mk d4622 1 a4622 1 "#id2588349">9.2.2. Updating 9.3. d4637 1 a4637 1 "#id2588578">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4653 1 a4653 1
    10.1. d4656 1 a4656 1
    10.2. d4670 1 a4670 1
    11.2. d4684 1 a4684 1
    12.1. d4690 1 a4690 1 "#id2590972">12.1.1. How to pull in variables d4694 1 a4694 1 "#id2591124">12.1.2. Restricted d4702 1 a4702 1 "#id2591639">12.1.4. Handling conflicts with d4706 1 a4706 1 "#id2591757">12.1.5. Packages that cannot or d4710 1 a4710 1 "#id2591783">12.1.6. Packages which should not be d4718 1 a4718 1 "#id2591875">12.1.8. How to handle compiler d4722 1 a4722 1 "#id2591897">12.1.9. How to handle incrementing d4727 1 a4727 1 "#id2591946">12.1.10. Portability of d4732 1 a4732 1
    12.2. d4738 1 a4738 1 "#id2591974">12.2.1. Packages whose distfiles d4743 1 a4743 1 "#id2592105">12.2.2. How to handle modified d4748 1 a4748 1
    12.3. d4758 1 a4758 1 "#id2592593">12.3.2. Using libtool on GNU d4763 1 a4763 1 "#id2592677">12.3.3. GNU d4768 1 a4768 1
    12.4. d4774 1 a4774 1 "#id2592793">12.4.1. CPP defines
    d4778 1 a4778 1
    12.5. d4784 1 a4784 1 "#id2592826">12.5.1. Package configuration d4788 1 a4788 1 "#id2592929">12.5.2. User d4792 1 a4792 1 "#id2593042">12.5.3. Handling d4796 1 a4796 1 "#id2593193">12.5.4. Creating an account from a d4800 1 a4800 1 "#id2593392">12.5.5. Installing score d4804 1 a4804 1 "#id2593435">12.5.6. Packages providing login d4808 1 a4808 1 "#id2593493">12.5.7. Packages containing perl d4812 1 a4812 1 "#id2593511">12.5.8. Packages with hardcoded d4816 1 a4816 1 "#id2593532">12.5.9. Packages installing perl d4824 1 a4824 1 "#id2593752">12.5.11. Packages installing GConf2 d4828 1 a4828 1 "#id2593852">12.5.12. Packages installing d4832 1 a4832 1 "#id2593904">12.5.13. Packages installing X11 d4836 1 a4836 1 "#id2593950">12.5.14. Packages installing GTK2 d4840 1 a4840 1 "#id2594020">12.5.15. Packages installing SGML or d4844 1 a4844 1 "#id2594140">12.5.16. Packages installing d4848 1 a4848 1 "#id2594347">12.5.17. Packages using d4853 1 a4853 1
    12.6. d4866 1 a4866 1
    14.1. d4869 1 a4869 1
    14.2. d4873 1 a4873 1
    14.3. d4876 1 a4876 1
    14.4. d4909 1 a4909 1
    7.4. Other d4916 1 a4916 1
    7.6. d4919 1 a4919 1
    7.7. d5254 1 a5254 1 "id2586509" id="id2586509">7.4. Other d5378 2 a5379 2 "id2586635" id= "id2586635">7.6. 7.7. 8.1. RCS d5475 1 a5475 1
    8.2. d5486 1 a5486 1
    8.5. d5489 1 a5489 1
    8.6. d5493 1 a5493 1
    8.7. d5519 1 a5519 1 "id2586845" id="id2586845">8.1. RCS d5537 2 a5538 2 "id2586860" id= "id2586860">8.2. Semi-automatic d5732 2 a5733 2 "id2587181" id= "id2587181">8.5. Manpage-compression

    d5757 1 a5757 1 "id2587223" id="id2587223">8.6. Changing d5777 1 a5777 1 "id2587240" id="id2587240">8.7. Platform d5919 1 a5919 1
    9.1. d5922 1 a5922 1
    9.2. d5928 1 a5928 1
    9.2.1. d5931 1 a5931 1
    9.2.2. d5940 1 a5940 1
    9.3. d5946 1 a5946 1
    9.3.1. d5950 1 a5950 1
    9.3.2. d6001 1 a6001 1 "id2587717" id="id2587717">9.1. Converting d6152 1 a6152 1 "id2587908" id="id2587908">9.2. Writing d6192 2 a6193 2

    9.2.1. Anatomy of a buildlink3.mk d6423 2 a6424 2

    9.2.2. Updating 9.3. Writing d6545 2 a6546 2

    9.3.1. Anatomy of a d6671 2 a6672 2

    9.3.2. Global preferences d6730 1 a6730 1
    10.1. d6733 1 a6733 1
    10.2. d6753 1 a6753 1 "id2588946" id="id2588946">10.1. Global d6771 2 a6772 2 "id2588961" id= "id2588961">10.2. Converting packages to d6935 1 a6935 1
    11.2. Main d7132 1 a7132 1 "id2589569" id="id2589569">11.2. Main d7898 1 a7898 1
    12.1. d7904 1 a7904 1 "#id2590972">12.1.1. How to pull in variables from d7908 1 a7908 1 "#id2591124">12.1.2. Restricted d7916 1 a7916 1 "#id2591639">12.1.4. Handling conflicts with other d7920 1 a7920 1 "#id2591757">12.1.5. Packages that cannot or should d7924 1 a7924 1 "#id2591783">12.1.6. Packages which should not be d7932 1 a7932 1 "#id2591875">12.1.8. How to handle compiler d7936 1 a7936 1 "#id2591897">12.1.9. How to handle incrementing d7941 1 a7941 1 "#id2591946">12.1.10. Portability of d7946 1 a7946 1
    12.2. d7952 1 a7952 1 "#id2591974">12.2.1. Packages whose distfiles d7957 1 a7957 1 "#id2592105">12.2.2. How to handle modified d7962 1 a7962 1
    12.3. d7972 1 a7972 1 "#id2592593">12.3.2. Using libtool on GNU packages d7976 1 a7976 1 "#id2592677">12.3.3. GNU d7981 1 a7981 1
    12.4. d7987 1 a7987 1 "#id2592793">12.4.1. CPP defines
    d7991 1 a7991 1
    12.5. d7997 1 a7997 1 "#id2592826">12.5.1. Package configuration d8001 1 a8001 1 "#id2592929">12.5.2. User d8005 1 a8005 1 "#id2593042">12.5.3. Handling d8009 1 a8009 1 "#id2593193">12.5.4. Creating an account from a d8013 1 a8013 1 "#id2593392">12.5.5. Installing score d8017 1 a8017 1 "#id2593435">12.5.6. Packages providing login d8021 1 a8021 1 "#id2593493">12.5.7. Packages containing perl d8025 1 a8025 1 "#id2593511">12.5.8. Packages with hardcoded paths d8029 1 a8029 1 "#id2593532">12.5.9. Packages installing perl d8037 1 a8037 1 "#id2593752">12.5.11. Packages installing GConf2 d8041 1 a8041 1 "#id2593852">12.5.12. Packages installing d8045 1 a8045 1 "#id2593904">12.5.13. Packages installing X11 d8049 1 a8049 1 "#id2593950">12.5.14. Packages installing GTK2 d8053 1 a8053 1 "#id2594020">12.5.15. Packages installing SGML or d8057 1 a8057 1 "#id2594140">12.5.16. Packages installing d8061 1 a8061 1 "#id2594347">12.5.17. Packages using d8066 1 a8066 1
    12.6. d8076 1 a8076 1 "id2590969" id="id2590969">12.1. General d8086 2 a8087 2

    12.1.1. How to pull in d8147 2 a8148 2

    12.1.2. Restricted d8451 2 a8452 2

    12.1.4. Handling conflicts d8499 2 a8500 2

    12.1.5. Packages that cannot d8531 2 a8532 2

    12.1.6. Packages which d8595 2 a8596 2

    12.1.8. How to handle d8621 2 a8622 2

    12.1.9. How to handle d8662 2 a8663 2

    12.1.10. Portability of d8679 2 a8680 2

    12.1.10.1. ${INSTALL}, d8705 1 a8705 1 "id2591971" id="id2591971">12.2. Possible d8715 2 a8716 2

    12.2.1. Packages whose d8777 2 a8778 2

    12.2.2. How to handle d8807 2 a8808 2 "id2592117" id= "id2592117">12.3. Configuration d9036 2 a9037 2

    12.3.2. Using libtool on GNU d9116 2 a9117 2

    12.3.3. GNU d9183 1 a9183 1 "id2592790" id="id2592790">12.4. Building d9193 2 a9194 2

    12.4.1. CPP defines

    d9233 1 a9233 1 "id2592823" id="id2592823">12.5. Package d9243 2 a9244 2

    12.5.1. Package d9316 2 a9317 2

    12.5.2. User d9366 2 a9367 2

    12.5.3. Handling d9441 2 a9442 2

    12.5.4. Creating an account d9496 2 a9497 2

    12.5.5. Installing score d9534 2 a9535 2

    12.5.6. Packages providing d9570 2 a9571 2

    12.5.7. Packages containing d9589 2 a9590 2

    12.5.8. Packages with d9616 2 a9617 2

    12.5.9. Packages installing d9756 2 a9757 2

    12.5.11. Packages installing d9831 2 a9832 2

    12.5.12. Packages installing d9876 2 a9877 2

    12.5.13. Packages installing d9914 2 a9915 2

    12.5.14. Packages installing d9981 2 a9982 2

    12.5.15. Packages installing d10043 2 a10044 2

    12.5.16. Packages installing d10102 2 a10103 2

    12.5.17. Packages using d10128 1 a10128 1 "id2594361" id="id2594361">12.6. Feedback d10364 1 a10364 1
    14.1. d10367 1 a10367 1
    14.2. d10371 1 a10371 1
    14.3. d10374 1 a10374 1
    14.4. d10384 2 a10385 2 "id2594823" id= "id2594823">14.1. Submitting your d10451 2 a10452 2 "id2594874" id= "id2594874">14.2. Committing: Importing a d10508 1 a10508 1 "id2595005" id="id2595005">14.3. Updating d10559 1 a10559 1 "id2595161" id="id2595161">14.4. Moving a d10660 1 a10660 1
    A.1. d10665 1 a10665 1
    A.1.1. d10668 1 a10668 1
    A.1.2. d10671 1 a10671 1
    A.1.3. d10674 1 a10674 1
    A.1.4. d10680 1 a10680 1
    A.2. Steps d10698 1 a10698 1 "id2595319" id="id2595319">A.1. files

    d10707 2 a10708 2

    A.1.1. Makefile

    d10735 2 a10736 2

    A.1.2. DESCR

    d10752 2 a10753 2

    A.1.3. PLIST

    d10770 2 a10771 2

    A.1.4. Checking a package with d10809 1 a10809 1 "id2595393" id="id2595393">A.2. Steps for d11227 1 a11227 1
    D.1. d11230 1 a11230 1
    D.2. d11243 1 a11243 1 "id2596107" id="id2596107">D.1. Targets

    d11296 2 a11297 2 "id2596178" id= "id2596178">D.2. Procedure

    @ 1.13 log @re-generate @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st October 2003), see www.w3.org" /> d11 1 a11 1 "DocBook XSL Stylesheets V1.65.0" /> d22 2 a23 2

    The pkgsrc guide

    d40 2 a41 2

    d53 2 a54 2

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2495323">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2495622">3.2.2. FreeBSD
    d152 1 a152 1 "#id2496270">3.2.3. Interix

    d155 1 a155 1 "#id2496361">3.2.4. IRIX d158 1 a158 1 "#id2496478">3.2.5. OpenBSD d161 1 a161 1 "#id2496659">3.2.6. Solaris d179 1 a179 1 "#id2496864">4.1.1. Where to get binary d183 1 a183 1 "#id2496904">4.1.2. How to use binary d187 1 a187 1 "#id2497038">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2497128">4.2.1. d202 1 a202 1 "#id2497148">4.2.2. Fetching d206 1 a206 1 "#id2497201">4.2.3. How to build and d210 1 a210 1 "#id2498132">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2563289">5.3.2. Other environmental d243 1 a243 1 "#id2563330">5.3.3. Operation
    d246 1 a246 1 "#id2563467">5.3.4. What it d250 1 a250 1 "#id2563524">5.3.5. Disk space d254 1 a254 1 "#id2563550">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2563943">5.3.7. Building a partial set of d267 1 a267 1
    5.4. d274 1 a274 1 "#id2564442">5.4.1. Example of d286 1 a286 1
    6.1. d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 5 a304 1
    6.5. d308 1 a308 1
    6.6. d312 1 a312 1
    6.7. d316 3 a318 2
    6.8. How do I tell make fetch to do passive d321 1 a321 1
    6.9. d324 4 a327 3
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
    d329 3 a331 3
    6.11. What does Could not find bsd.own.mk mean?
    d333 1 a333 1
    6.12. d336 1 a336 1
    6.13. d341 1 a341 1 "#audit-packages">6.14. Automated security d360 2 a361 2 "#components.Makefile">7.1. Makefile
    d364 2 a365 2 "#components.distinfo">7.2. distinfo d371 1 a371 1
    7.4. d378 2 a379 2
    7.6. work*
    d381 3 a383 2
    7.7. files/*
    d392 1 a392 1
    8.1. d395 3 a397 2
    8.2. Semi-automatic PLIST generation
    d400 3 a402 1 Tweaking output of make print-PLIST d407 1 a407 1
    8.5. d410 3 a412 3
    8.6. Changing PLIST source with PLIST_SRC
    d414 1 a414 1
    8.7. d429 1 a429 1
    9.1. d433 3 a435 2
    9.2. Writing buildlink3.mk files
    d440 1 a440 1 "#id2568003">9.2.1. Anatomy of a buildlink3.mk d444 4 a447 2 "#id2568375">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d452 3 a454 2
    9.3. Writing builtin.mk files
    d459 2 a460 1 "#id2568672">9.3.1. Anatomy of a builtin.mk d464 1 a464 1 "#id2568899">9.3.2. Global preferences for d476 1 a476 1
    10.1. d479 3 a481 3
    10.2. Converting packages to use bsd.options.mk
    d494 1 a494 1
    11.2. d508 1 a508 1
    12.1. d514 1 a514 1 "#id2571066">12.1.1. How to pull in variables d518 1 a518 1 "#id2571149">12.1.2. Restricted d526 1 a526 1 "#id2571733">12.1.4. Handling conflicts with d530 1 a530 1 "#id2571851">12.1.5. Packages that cannot or d534 1 a534 1 "#id2571877">12.1.6. Packages which should not d542 1 a542 1 "#id2571969">12.1.8. How to handle compiler d546 1 a546 1 "#id2571991">12.1.9. How to handle incrementing d551 1 a551 1 "#id2572108">12.1.10. Portability of d556 1 a556 1
    12.2. d562 1 a562 1 "#id2572136">12.2.1. Packages whose distfiles d567 1 a567 1 "#id2572267">12.2.2. How to handle modified d572 1 a572 1
    12.3. d582 1 a582 1 "#id2572618">12.3.2. Using libtool on GNU d587 1 a587 1 "#id2572702">12.3.3. GNU d592 1 a592 1
    12.4. d598 1 a598 1 "#id2572750">12.4.1. CPP d603 1 a603 1
    12.5. d609 1 a609 1 "#id2572784">12.5.1. Package configuration d613 1 a613 1 "#id2573022">12.5.2. User d617 1 a617 1 "#id2573136">12.5.3. Handling d621 1 a621 1 "#id2573287">12.5.4. Creating an account from a d625 1 a625 1 "#id2573349">12.5.5. Installing score d629 1 a629 1 "#id2573393">12.5.6. Packages providing login d633 1 a633 1 "#id2573518">12.5.7. Packages containing perl d637 1 a637 1 "#id2573537">12.5.8. Packages with hardcoded d641 1 a641 1 "#id2573558">12.5.9. Packages installing perl d649 1 a649 1 "#id2573778">12.5.11. Packages installing d653 1 a653 1 "#id2573946">12.5.12. Packages installing d657 1 a657 1 "#id2573997">12.5.13. Packages installing X11 d661 1 a661 1 "#id2574044">12.5.14. Packages installing GTK2 d665 1 a665 1 "#id2574114">12.5.15. Packages installing SGML d669 1 a669 1 "#id2574234">12.5.16. Packages installing d673 1 a673 1 "#id2574305">12.5.17. Packages using d678 1 a678 1
    12.6. d691 1 a691 1
    14.1. d694 1 a694 1
    14.2. d698 1 a698 1
    14.3. d702 1 a702 1
    14.4. d714 1 a714 1
    A.1. d719 1 a719 1
    A.1.1. d722 1 a722 1
    A.1.2. d725 1 a725 1
    A.1.3. d728 3 a730 2
    A.1.4. Checking a package with pkglint
    d734 1 a734 1
    A.2. Steps d760 1 a760 1
    D.1. d763 1 a763 1
    D.2. d784 1 a784 1
    1.1. d803 2 a804 2 "id2494406" id= "id2494406">1.1. Introduction

    d819 5 a823 4 the pkg_* tools so that installation and de-installation, printing of an inventory of all installed packages and retrieval of one-line comments or more verbose descriptions are all simple.

    d834 2 a835 2 class="pkgname">www/apache - The Apache web server

    d842 2 a843 2 class="pkgname">www/mozilla - The Mozilla web browser

    d850 2 a851 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d858 2 a859 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d998 2 a999 2 stored under /usr/pkgsrc.

    d1023 2 a1024 2 too. Distfiles are usually stored below /usr/pkgsrc/distfiles.

    d1042 7 a1048 6 distfile and stuffed together in a single .tgz file so it can be installed on machines of the same machine architecture without the need to recompile. Packages are usually generated in /usr/pkgsrc/packages; there is also an archive on # for root's shell prompt, and a $ for users' shell prompt, assuming they use the C-shell or tcsh.

    d1109 1 a1109 1
    2.1. As d1112 1 a1112 1
    2.2. Via d1115 1 a1115 1
    2.3. Via d1125 1 a1125 1
    3.1. d1128 1 a1128 1
    3.2. d1134 1 a1134 1 "#id2495323">3.2.1. Darwin (Mac OS d1138 1 a1138 1 "#id2495622">3.2.2. FreeBSD
    d1141 1 a1141 1 "#id2496270">3.2.3. Interix d1144 1 a1144 1 "#id2496361">3.2.4. IRIX d1147 1 a1147 1 "#id2496478">3.2.5. OpenBSD d1150 1 a1150 1 "#id2496659">3.2.6. Solaris d1168 1 a1168 1 "#id2496864">4.1.1. Where to get binary d1172 1 a1172 1 "#id2496904">4.1.2. How to use binary d1176 1 a1176 1 "#id2497038">4.1.3. A word of d1181 1 a1181 1
    4.2. d1187 1 a1187 1 "#id2497128">4.2.1. Requirements
    d1190 1 a1190 1 "#id2497148">4.2.2. Fetching d1194 1 a1194 1 "#id2497201">4.2.3. How to build and d1198 1 a1198 1 "#id2498132">4.2.4. Selecting the d1210 1 a1210 1
    5.1. d1213 1 a1213 1
    5.2. d1227 1 a1227 1 "#id2563289">5.3.2. Other environmental d1231 1 a1231 1 "#id2563330">5.3.3. Operation
    d1234 1 a1234 1 "#id2563467">5.3.4. What it does d1237 1 a1237 1 "#id2563524">5.3.5. Disk space d1241 1 a1241 1 "#id2563550">5.3.6. Setting up a sandbox for d1245 1 a1245 1 "#id2563943">5.3.7. Building a partial set of d1254 1 a1254 1
    5.4. d1261 1 a1261 1 "#id2564442">5.4.1. Example of d1273 1 a1273 1
    6.1. Is d1277 1 a1277 1
    6.2. d1284 1 a1284 1
    6.4. How d1287 4 a1290 1
    6.5. How d1294 1 a1294 1
    6.6. How d1297 1 a1297 1
    6.7. How d1300 3 a1302 2
    6.8. How do I tell make fetch to do passive d1305 2 a1306 2
    6.9. How to fetch all distfiles at once
    d1308 4 a1311 3
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
    d1313 3 a1315 3
    6.11. What does Could not find bsd.own.mk mean?
    d1317 1 a1317 1
    6.12. d1320 1 a1320 1
    6.13. d1325 1 a1325 1 "#audit-packages">6.14. Automated security d1347 1 a1347 1
    2.1. As d1350 1 a1350 1
    2.2. Via d1353 1 a1353 1
    2.3. Via d1367 1 a1367 1 "id2495052" id="id2495052">2.1. As tar d1376 2 a1377 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1385 1 a1385 1 "id2495068" id="id2495068">2.2. Via d1398 6 a1403 6

    in it, see the examples in /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply run sup -v /path/to/your/supfile.

    d1411 1 a1411 1 "id2495100" id="id2495100">2.3. Via d1423 17 a1439 15 % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot % setenv CVS_RSH ssh % cd /usr % cvs checkout -P pkgsrc

    This will create the pkgsrc directory in your /usr, and all the package source will be stored under /usr/pkgsrc. To update pkgsrc after the initial checkout, make sure you have CVS_RSH set as above, then do:

    d1441 4 a1444 4 % cd /usr/pkgsrc % cvs -q update -dP d1468 1 a1468 1
    3.1. d1471 1 a1471 1
    3.2. d1476 1 a1476 1
    3.2.1. d1479 1 a1479 1
    3.2.2. d1482 1 a1482 1
    3.2.3. d1485 1 a1485 1
    3.2.4. d1488 1 a1488 1
    3.2.5. d1491 1 a1491 1
    3.2.6. d1503 2 a1504 2 "id2495210" id= "id2495210">3.1. Bootstrapping pkgsrc

    d1552 6 a1557 6 # env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc # cd pkgsrc/bootstrap # ./bootstrap d1563 7 a1569 6 pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, and /var/db/pkg for the package database d1586 1 a1586 1 "id2495317" id="id2495317">3.2. Platform d1599 2 a1600 2

    3.2.1. Darwin (Mac OS d1654 8 a1661 8 # cd pkgsrc/bootstrap # ./ufsdiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste # ./ufsdiskimage mount ~/Documents/NetBSD # sudo chown `id -u`:`id -g` /Volumes/NetBSD d1678 10 a1687 10

    By default, /usr will be on your root file system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS file system. Obviously, another symlink is required if you want to place the package database directory outside the prefix. e.g.

    d1689 2 a1690 2 # ./bootstrap --pkgdbdir=/usr/pkg/pkgdb --pkgsrcdir=/Volumes/ufs/pkgsrc d1696 2 a1697 2 /Volumes/<volume name> when the machine boots. If you are d1732 2 a1733 2

    3.2.2. FreeBSD

    d1749 1 a1749 1 /var/db/pkg. It is d1751 2 a1752 2 location (e.g. /usr/pkgdb) by using the d1761 10 a1770 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d1775 5 a1779 4

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script.

    d1789 2 a1790 2

    3.2.3. Interix

    d1960 2 a1961 2

    3.2.4. IRIX

    d1968 3 a1970 3 the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can d1987 3 a1989 3 conflicting CFLAGS in your environment or the /etc/mk.conf. Particularly, make sure d1991 2 a1992 2 or vice versa. Check your /etc/compiler.defaults!

    d1996 1 a1996 1 WRKOBJDIR to a local d2004 2 a2005 2 Please see pkgsrc/mk/defaults/mk.conf and, of d2013 2 a2014 2

    3.2.5. OpenBSD

    d2029 1 a2029 1 /var/db/pkg. It is d2031 2 a2032 2 location (e.g. /usr/pkgdb) by using the d2041 10 a2050 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d2055 7 a2061 6

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses /etc/mk.conf as well. You can d2080 2 a2081 2

    3.2.6. Solaris

    d2125 2 a2126 2

    3.2.6.1. If you are using d2140 3 a2142 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2147 2 a2148 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2155 2 a2156 2

    3.2.6.2. If you are using d2187 4 a2190 4

    You should set CC, CXX and optionally, CPP in /etc/mk.conf, eg.

    d2205 4 a2208 3 PATH. This includes /usr/ccs/{bin,lib} and eg. /usr/pkg/{bin,sbin}.

    d2233 1 a2233 1
    4.1.1. d2236 1 a2236 1
    4.1.2. d2239 1 a2239 1
    4.1.3. d2244 1 a2244 1
    4.2. d2249 1 a2249 1
    4.2.1. d2252 1 a2252 1
    4.2.2. d2255 1 a2255 1
    4.2.3. d2258 1 a2258 1
    4.2.4. d2285 2 a2286 2

    4.1.1. Where to get binary d2293 5 a2297 5 and its mirrors in the directory /pub/NetBSD/packages for anonymous FTP access. Please pick the right subdirectory there as indicated by uname -p. In that directory, there is a d2299 6 a2304 5 All which includes the actual binaries in .tgz files. The category subdirectories use symbolic links to those files (this is the same directory layout as in /usr/pkgsrc/packages).

    d2308 2 a2309 2 somewhere else, probably somewhere below /cdrom. Please consult your CDROMs d2317 2 a2318 2

    4.1.2. How to use binary d2326 2 a2327 2 following command (be sure tosu to root first):

    d2329 2 a2330 2 # pkg_add /path/to/package.tgz d2335 3 a2337 2 you can do this automatically by giving pkg_add an FTP URL:

    d2339 2 a2340 2 # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All/package.tgz d2345 2 a2346 2 running uname -rp.

    d2353 3 a2355 3 /usr/pkg/bin in your PATH so you can actually start the just installed program.

    d2362 2 a2363 2

    4.1.3. A word of d2386 1 a2386 1 "id2497050" id="id2497050">4.2. Building d2401 2 a2402 2

    4.2.1. Requirements

    d2421 2 a2422 2

    4.2.2. Fetching d2438 7 a2444 7 a look at pkgsrc/mk/defaults/mk.conf to find some examples - in particular, look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY definitions. This may save some of your bandwidth and time.

    d2448 1 a2448 1 editing the /etc/mk.conf d2453 4 a2456 4 make fetch-list will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles.

    d2463 2 a2464 2

    4.2.3. How to build and d2472 2 a2473 2 relevant directory and running make. For example, type

    d2475 4 a2478 3 % cd misc/figlet % make d2484 2 a2485 2 # make install d2502 4 a2505 3 the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your d2507 3 a2509 3 your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your d2512 8 a2519 7 with other programs (ie, do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent d2524 2 a2525 2

    Some packages look in /etc/mk.conf to alter some d2527 8 a2534 6 pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in /etc/mk.conf to save having to remember to set them each time you want to use pkgsrc.

    d2550 4 a2553 3 with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

    d2555 2 a2556 1 make patch PKG_DEBUG_LEVEL=2 d2566 4 a2569 4 make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the DISTFILES:

    d2576 2 a2577 2 % make show-var VARNAME=LOCALBASE d2579 1 a2579 1 % d2595 6 a2600 5 make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITES, which defaults to ftp.NetBSD.org. Any flags that should be added to
    BIN_INSTALL_FLAGS. See pkgsrc/mk/defaults/mk.conf for more details.

    d2610 2 a2611 2 has a non-standard setting for LOCALBASE, be sure to set that before d2617 5 a2621 5 default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

    d2628 2 a2629 2

    4.2.4. Selecting the d2641 2 a2642 2
    PKGSRC_COMPILER:
    d2652 1 a2652 1

    distcc: d2657 1 a2657 1

    ccache: d2662 2 a2663 2

    gcc: GNU C/C++ Compiler

    d2667 1 a2667 1

    mipspro: d2673 1 a2673 1

    mipspro: d2678 1 a2678 1

    sunpro: d2686 8 a2693 7 "quote">gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This d2698 2 a2699 2

    GCC_REQD:
    d2729 1 a2729 1
    5.1. d2732 1 a2732 1
    5.2. d2745 1 a2745 1
    5.3.2. d2748 1 a2748 1
    5.3.3. d2751 1 a2751 1
    5.3.4. d2754 1 a2754 1
    5.3.5. d2757 1 a2757 1
    5.3.6. d2761 1 a2761 1
    5.3.7. d2770 1 a2770 1
    5.4. d2776 1 a2776 1
    5.4.1. d2788 1 a2788 1 "id2563003" id="id2563003">5.1. Building a d2807 3 a2809 2 appropriate directory in pkgsrc, and run make package:

    d2811 4 a2814 4 # cd misc/figlet # make package d2819 4 a2822 4 was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a d2829 1 a2829 1 class="pkgname">misc/figlet example.

    d2842 1 a2842 1 "id2563081" id="id2563081">5.2. Settings d2899 3 a2901 3

    You may want to set things in /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for d2903 4 a2906 4 ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts 5.3.1.2. build.conf

    d2931 4 a2934 4

    In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the d2942 2 a2943 1 cvs update.

    d2950 3 a2952 3

    5.3.1.3. pre-build.local

    d2959 7 a2965 7 pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    d2967 3 a2969 3 # echo "I do not have enough disk space to build this pig." \ > pkgsrc/games/crafty-book-enormous/$BROKENF d2982 2 a2983 2

    5.3.2. Other environmental d2989 1 a2989 1

    As /usr/pkg will be d2992 4 a2995 3 drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via /etc/rc.local, so you can d3006 1 a3006 1 rc.local:

    d3024 2 a3025 2

    5.3.3. Operation

    d3044 2 a3045 2 /usr/local, etc. then become root and type:

    d3047 4 a3050 4 # cd /usr/pkgsrc # sh mk/bulk/build d3057 2 a3058 2 # sh mk/bulk/build restart d3063 2 a3064 2 specified by FTP in the build.conf file.

    d3071 2 a3072 2

    5.3.4. What it does

    d3105 5 a3109 5 directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    d3115 9 a3123 9 compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    d3130 2 a3131 2

    5.3.5. Disk space d3173 2 a3174 2

    5.3.6. Setting up a sandbox d3186 1 a3186 1 /usr/sandbox. This can be d3189 5 a3193 5

    There is a shell script called pkgsrc/mk/bulk/mksandbox which will set up the sandbox environment using null mounts. It will also create a script called sandbox in the root of the sandbox d3195 4 a3198 4 activated using the sandbox mount command and deactivated using the sandbox umount command.

    d3202 3 a3204 3 doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following d3212 2 a3213 2 # cp /netbsd /usr/sandbox d3218 1 a3218 1

    /dev/*

    d3220 2 a3221 2 # cd /usr/sandbox/dev ; sh MAKEDEV all d3226 1 a3226 1

    /etc/resolv.conf d3230 1 a3230 2 class="pkgname">security/smtpd and mail):

    d3232 2 a3233 2 # cp /etc/resolv.conf /usr/sandbox/etc d3241 2 a3242 2 # cp /etc/mail/sendmail.cf /usr/sandbox/etc/mail d3247 2 a3248 2

    /etc/localtime (for security/smtpd):

    d3253 2 a3254 2 # ln -sf /usr/share/zoneinfo/UTC /usr/sandbox/etc/localtime d3259 1 a3259 1

    /usr/src (system d3263 4 a3266 6 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3268 4 a3271 4 # ln -s ../disk1/cvs . # ln -s cvs/src-1.6 src d3276 3 a3278 2

    Create /var/db/pkg (not part of default install):

    d3280 2 a3281 2 # mkdir /usr/sandbox/var/db/pkg d3286 2 a3287 2

    Create /usr/pkg (not part of default install):

    d3289 2 a3290 2 # mkdir /usr/sandbox/usr/pkg d3295 2 a3296 2

    Checkout pkgsrc via cvs into /usr/sandbox/usr/pkgsrc:

    d3298 4 a3301 4 # cd /usr/sandbox/usr # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc d3310 5 a3314 5

    Make /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    d3318 3 a3320 2

    Edit /etc/mk.conf, see Adjust mk/bulk/build.conf to suit your d3332 5 a3336 5

    If you have set CVS_USER in build.conf, make sure that account exists and can do a cvs ${CVS_FLAGS} update d3345 4 a3348 4 # cd /usr/sandbox/usr/pkgsrc # sh mk/bulk/do-sandbox-build d3354 2 a3355 2 be in /usr/sandbox/usr/pkgsrc/packages d3363 2 a3364 2

    5.3.7. Building a partial d3371 6 a3376 6 packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting defining SPECIFIC_PKGS in /etc/mk.conf, the variables

    d3404 1 a3404 1 SPECIFIC_PKGS in a chroot d3426 5 a3430 4

    First, make sure that you have RSYNC_DST set properly in your mk/bulk/build.conf file, i.e. adjust it to something like one of the following:

    d3437 4 a3440 4 ftp.NetBSD.org is different from CVS_USER, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use:

    d3445 1 a3445 1

    A separate upload d3450 2 a3451 2 nbftp% mkdir -p -m 750 /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload d3454 2 a3455 2

    Please note that /pub/NetBSD/packages is only d3458 2 a3459 2 should go into /pub/pkgsrc.

    d3467 8 a3474 8 # chroot /usr/sandbox chroot-# rm $HOME/.ssh/id-dsa* chroot-# ssh-keygen -t dsa chroot-# cat $HOME/.ssh/id-dsa.pub d3477 5 a3481 5

    Now take the output of id-dsa.pub and append it to your ~/.ssh/authorized_keys file on ftp.netBSD.org. You can remove the key after the upload is done!

    d3485 2 a3486 2 chroot-# ssh ftp.NetBSD.org date d3494 6 a3499 6 chroot-# exit # cd /usr/sandbox/usr/pkgsrc # sh mk/bulk/do-sandbox-upload d3509 2 a3510 1 nbftp% vi ~/.ssh/authorized_keys d3516 2 a3517 2 the upload directory to have them accessible to everyone:

    d3519 6 a3524 5 nbftp% cd /pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch nbftp% mv upload/* . nbftp% rmdir upload nbftp% chmod 755 . d3534 1 a3534 1 "id2564359" id="id2564359">5.4. Creating a d3546 6 a3551 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3557 2 a3558 2

    5.4.1. Example of d3566 4 a3569 4 that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

    d3571 6 a3576 6 # mkdir /u2/images # pkg_add /usr/pkgsrc/packages/All/cdpack # cdpack /usr/pkgsrc/packages/All /u2/images d3580 2 a3581 2 (COPYRIGHT, README, etc.) on each CD in the d3585 14 a3598 14 # mkdir /tmp/common # echo "This is a README" > /tmp/common/README # echo "Another file" > /tmp/common/COPYING # mkdir /tmp/common/bin # echo "#!/bin/sh" > /tmp/common/bin/myscript # echo "echo Hello world" >> /tmp/common/bin/myscript # chmod 755 /tmp/common/bin/myscript d3603 2 a3604 2 # cdpack -x /tmp/common /usr/pkgsrc/packages/All /u2/images d3607 4 a3610 4

    Each image will contain README, COPYING, and bin/myscript in their root d3631 1 a3631 1

    6.1. Is d3635 1 a3635 1
    6.2. d3642 1 a3642 1
    6.4. How d3645 4 a3648 1
    6.5. How d3651 1 a3651 1
    6.6. How d3654 1 a3654 1
    6.7. How d3657 4 a3660 2
    6.8. How do I tell make fetch to do passive FTP?
    d3662 1 a3662 1
    6.9. How d3665 3 a3667 2
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc d3670 3 a3672 2
    6.11. What does Could not find bsd.own.mk mean?
    d3674 1 a3674 1
    6.12. d3677 1 a3677 1
    6.13. d3681 1 a3681 1
    6.14. d3696 1 a3696 1 "id2564634" id="id2564634">6.1. Is there a d3702 2 a3703 2

    Yes, d3707 2 a3708 2 % echo subscribe tech-pkg | mail majordomo@@NetBSD.org d3721 1 a3721 1 "id2564801" id="id2564801">6.2. Where's d3728 2 a3729 2 find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    d3744 1 a3744 1

    The pkgsrc/pkgtools d3760 2 a3761 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3775 2 a3776 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3783 2 a3784 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3791 2 a3792 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3799 4 a3802 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3816 3 a3818 4 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3825 5 a3829 5 class="pkgname">pkgtools/dfdisk: adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    d3836 2 a3837 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3844 3 a3846 3 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your current CPU and compiler.

    d3860 3 a3862 4 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3869 3 a3871 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3878 2 a3879 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3886 5 a3890 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3897 2 a3898 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3912 3 a3914 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d3921 5 a3925 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d3932 2 a3933 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d3947 3 a3949 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d3956 2 a3957 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d3964 2 a3965 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d3976 1 a3976 1 "id2564985" id="id2564985">6.4. How to use d3986 39 a4024 1 target="_top">this message for more details.

    d4032 1 a4032 1 "id2564997" id="id2564997">6.5. How can I d4039 5 a4043 4 system's own X11 (/usr/X11R6, /usr/openwin, ...), you will have to add the following lines into mk.conf:

    d4055 1 a4055 1 "id2565025" id="id2565025">6.6. How can I d4062 5 a4066 4 system's own X11 (/usr/X11R6, /usr/openwin, ...) you will have to add the following lines into mk.conf:

    d4078 1 a4078 1 "id2565121" id="id2565121">6.7. How to d4103 3 a4105 3 "id2565134" id="id2565134">6.8. How do I tell make fetch to do passive FTP?

    d4111 3 a4113 3 distfiles. From bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

    d4120 1 a4120 1 /usr/bin/ftp, which d4124 2 a4125 2 /etc/mk.conf file: PASSIVE_FETCH=1.

    d4127 3 a4129 3

    Having that option present will prevent /usr/bin/ftp from falling back to active transfers.

    d4137 1 a4137 1 "id2565186" id="id2565186">6.9. How to d4145 3 a4147 2 a make fetch. There is an archive of distfiles on The answer here is to do a make fetch-list in /usr/pkgsrc or one of it's d4158 1 a4158 1 forget to set FETCH_CMD to d4163 6 a4168 6 % cd /usr/pkgsrc % make fetch-list FETCH_CMD=wget DISTDIR=/tmp/distfiles >/tmp/fetch.sh % scp /tmp/fetch.sh work:/tmp d4173 2 a4174 2 % sh /tmp/fetch.sh d4177 2 a4178 2

    then tar up /tmp/distfiles and take it home.

    d4184 3 a4186 2 make fetch-list approach, or fetch the distfiles directly by running:

    d4188 2 a4189 2 % make mirror-distfiles d4192 3 a4194 3

    If you even decide to ignore NO_{SRC,BIN}_ON_{FTP,CDROM}, then you can get everything by running:

    d4196 2 a4197 2 % make fetch NO_SKIP=yes d4206 1 a4206 1 "id2565325" id="id2565325">
    6.10. What does d4216 7 a4222 8 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4227 4 a4230 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d4238 1 a4238 1 "id2565364" id="id2565364">6.11. What does d4245 4 a4248 4

    You didn't install the compiler set, comp.tgz, when you installed your NetBSD machine. Please get it and install it, by extracting it in /:

    d4250 4 a4253 3 # cd / # tar --unlink -zxvpf .../comp.tgz d4256 4 a4259 4

    comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

    d4267 1 a4267 1 "id2565490" id="id2565490">6.12. Using d4281 3 a4283 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4298 1 a4298 1 "faq.conf">6.13. Configuration files d4304 4 a4307 4

    The global variable PKG_SYSCONFBASE (and some others) can be set by the system administrator in /etc/mk.conf to define the place where d4312 2 a4313 2 go to $PREFIX/share should go there.

    d4316 6 a4321 6 (bsd.pkg.mk contains more information). PKG_SYSCONFDIR is where the configuration files for a package may be found (that is, the full path, e.g. /etc or /usr/pkg/etc). This value may be d4327 2 a4328 2

    PKG_SYSCONFBASE is the main config directory under which all package d4330 4 a4333 4 typically want to set it to /etc, or accept the default location of $PREFIX/etc.

    d4337 3 a4339 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d4341 2 a4342 2 found. Defaults to ${SYSCONFBASE}.

    d4346 9 a4354 9

    PKG_SYSCONFVAR is the special suffix used to distinguish any overriding values for a particular package (see next item). It defaults to ${PKGBASE}, but for a collection of related packages that should all have the same PKG_SYSCONFDIR value, it can be set in each of the package Makefiles to a common value.

    d4358 6 a4363 6

    PKG_SYSCONFDIR.${PKG_SYSCONFVAR} overrides the value of ${PKG_SYSCONFDIR} for packages with the same value for PKG_SYSCONFVAR.

    d4366 6 a4371 5 want to set PKG_SYSCONFVAR to “kde” so admins can set PKG_SYSCONFDIR.kde in /etc/mk.conf to define where to d4385 3 a4387 2 share/examples/${PKGNAME} so PLIST can register them.

    d4390 6 a4395 5 place (under the share/examples directory) the variable CONF_FILES should be set to copy them into PKG_SYSCONFDIR. The contents of this variable is formed by pairs of filenames; the first d4397 2 a4398 2 examples directory (registered by PLIST) and the second element specifies d4401 5 a4405 5 INSTALL/DEINSTALL scripts which are created automatically. The package Makefile must also set USE_PKGINSTALL=YES to use these d4408 1 a4408 1 variable PKG_CONFIG prior to d4418 7 a4424 6 files inside EGDIR, which are registered by PLIST. After that, the variable CONF_FILES lists the installed file first and then the target file. Users will also get an automatic message when files are installed using this method.

    d4433 1 a4433 1 "audit-packages">6.14. Automated security d4450 2 a4451 2 class="pkgname">security/audit-packages package. It has two components:

    d4466 2 a4467 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4539 2 a4540 1 "#components.Makefile">7.1. Makefile
    d4543 2 a4544 1 "#components.distinfo">7.2. distinfo d4549 1 a4549 1
    7.4. d4556 2 a4557 2
    7.6. work*
    d4559 2 a4560 2
    7.7. files/*
    d4569 1 a4569 1
    8.1. RCS d4572 3 a4574 2
    8.2. Semi-automatic PLIST generation
    d4577 2 a4578 1 Tweaking output of make print-PLIST d4583 1 a4583 1
    8.5. d4586 3 a4588 2
    8.6. Changing PLIST source with PLIST_SRC
    d4590 1 a4590 1
    8.7. d4605 1 a4605 1
    9.1. d4608 3 a4610 2
    9.2. Writing buildlink3.mk files
    d4615 1 a4615 1 "#id2568003">9.2.1. Anatomy of a buildlink3.mk d4619 4 a4622 2 "#id2568375">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d4627 3 a4629 2
    9.3. Writing builtin.mk files
    d4634 2 a4635 2 "#id2568672">9.3.1. Anatomy of a builtin.mk file d4638 1 a4638 1 "#id2568899">9.3.2. Global preferences for native d4650 1 a4650 1
    10.1. d4653 3 a4655 3
    10.2. Converting packages to use bsd.options.mk
    d4667 1 a4667 1
    11.2. d4681 1 a4681 1
    12.1. d4687 1 a4687 1 "#id2571066">12.1.1. How to pull in variables d4691 1 a4691 1 "#id2571149">12.1.2. Restricted d4699 1 a4699 1 "#id2571733">12.1.4. Handling conflicts with d4703 1 a4703 1 "#id2571851">12.1.5. Packages that cannot or d4707 1 a4707 1 "#id2571877">12.1.6. Packages which should not be d4715 1 a4715 1 "#id2571969">12.1.8. How to handle compiler d4719 1 a4719 1 "#id2571991">12.1.9. How to handle incrementing d4724 1 a4724 1 "#id2572108">12.1.10. Portability of d4729 1 a4729 1
    12.2. d4735 1 a4735 1 "#id2572136">12.2.1. Packages whose distfiles d4740 1 a4740 1 "#id2572267">12.2.2. How to handle modified d4745 1 a4745 1
    12.3. d4755 1 a4755 1 "#id2572618">12.3.2. Using libtool on GNU d4760 1 a4760 1 "#id2572702">12.3.3. GNU d4765 1 a4765 1
    12.4. d4771 1 a4771 1 "#id2572750">12.4.1. CPP defines
    d4775 1 a4775 1
    12.5. d4781 1 a4781 1 "#id2572784">12.5.1. Package configuration d4785 1 a4785 1 "#id2573022">12.5.2. User d4789 1 a4789 1 "#id2573136">12.5.3. Handling d4793 1 a4793 1 "#id2573287">12.5.4. Creating an account from a d4797 1 a4797 1 "#id2573349">12.5.5. Installing score d4801 1 a4801 1 "#id2573393">12.5.6. Packages providing login d4805 1 a4805 1 "#id2573518">12.5.7. Packages containing perl d4809 1 a4809 1 "#id2573537">12.5.8. Packages with hardcoded d4813 1 a4813 1 "#id2573558">12.5.9. Packages installing perl d4821 1 a4821 1 "#id2573778">12.5.11. Packages installing GConf2 d4825 1 a4825 1 "#id2573946">12.5.12. Packages installing d4829 1 a4829 1 "#id2573997">12.5.13. Packages installing X11 d4833 1 a4833 1 "#id2574044">12.5.14. Packages installing GTK2 d4837 1 a4837 1 "#id2574114">12.5.15. Packages installing SGML or d4841 1 a4841 1 "#id2574234">12.5.16. Packages installing d4845 1 a4845 1 "#id2574305">12.5.17. Packages using d4850 1 a4850 1
    12.6. d4863 1 a4863 1
    14.1. d4866 1 a4866 1
    14.2. d4870 1 a4870 1
    14.3. d4873 1 a4873 1
    14.4. d4896 2 a4897 1 "#components.Makefile">7.1. Makefile
    d4900 2 a4901 1 "#components.distinfo">7.2. distinfo d4906 1 a4906 1
    7.4. Other d4913 2 a4914 2
    7.6. work*
    d4916 2 a4917 2
    7.7. files/*
    d4931 2 a4932 2 "components.Makefile">7.1. Makefile

    d4938 2 a4939 2 package are all controlled by the package's Makefile.

    d4941 22 a4962 22

    There is a Makefile for each package. This file includes the standard bsd.pkg.mk file (referenced as ../../mk/bsd.pkg.mk), which sets all the definitions and actions necessary for the package to compile and install itself. The mandatory variables are the DISTNAME which specifies the base name of the distribution file to be downloaded from the site on the Internet, MASTER_SITES which specifies that site, CATEGORIES which denotes the categories into which the package falls, PKGNAME which is the name of the package, the MAINTAINER's name, and the COMMENT variable, which should contain a one-line description of the package (the package name should not appear, it will be added automatically). The maintainer variable is there so that anyone who quibbles with the (always completely correct) decisions taken by the guy who maintains the package can complain vigorously, or send chocolate as a sign of appreciation.

    d4964 2 a4965 2

    The MASTER_SITES may be set to one of the predefined sites:

    d5002 3 a5004 3

    MASTER_SITE_SUBDIR has been deprecated and should no longer be used.

    d5007 4 a5010 4

    If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES_foo to a list of URI's d5021 2 a5022 2

    Note that the normal default setting of DISTFILES must be made explicit if you d5027 2 a5028 2 CATEGORIES. If more than one is used, they need to be separated by spaces:

    d5045 4 a5048 4

    Add MANCOMPRESSED if manpages are installed in compressed form by the package; see comment in bsd.pkg.mk.

    d5052 1 a5052 1

    Replace /usr/local d5067 3 a5069 3

    Set MAINTAINER to be yourself. If you really can't maintain the package for future updates, set it to tech-pkg@@NetBSD.org>.

    d5076 3 a5078 3 exists, add the variable HOMEPAGE right after MAINTAINER. The value of this d5083 2 a5084 2

    Be sure to set the COMMENT variable to a short d5098 2 a5099 2 "components.distinfo">7.2. distinfo

    d5110 5 a5114 4 security hole. It is generated using the make makesum command. The digest algorithm used was, at one stage, md5, but that was felt lacking compared to sha1, and so sha1 is now the default d5119 10 a5128 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d5134 4 a5137 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d5140 3 a5142 2 patches found in the patches/ directory (see distinfo file. This is a message digest/checksum of all lines in the patch file except the NetBSD RCS Id. This file is generated by invoking make makepatchsum (or make mps if you're in a hurry).

    d5175 2 a5176 2 patch-aa is applied before patch-ab, etc.

    d5178 6 a5183 5

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do d5196 2 a5197 2 CVS tree. Use the pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    d5204 11 a5214 10 mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff.

    d5218 3 a5220 2 make makepatchsum command, see .

    d5225 2 a5226 2 other maintainers can be listed in $PATCHFILES.

    d5230 2 a5231 2 pkgsrc tree in the $LOCALPATCHES directory. The directory d5235 7 a5241 6 stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch d5251 1 a5251 1 "id2566535" id="id2566535">
    7.4. Other d5259 2 a5260 2
    DESCR
    d5271 2 a5272 2
    PLIST
    d5302 2 a5303 2
    INSTALL
    d5314 2 a5315 2 commands in PLIST. See DEINSTALL d5346 2 a5347 2
    MESSAGE
    d5355 3 a5357 3 easily by using MESSAGE_SUBST in the package's Makefile:

    d5363 2 a5364 2 "quote">somevalue” in MESSAGE.

    d5375 3 a5377 2 "id2566729" id="id2566729">
    7.6. work*

    d5382 6 a5387 5

    When you type make the distribution files are unpacked into this directory. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp d5393 1 a5393 1 WRKSRC accordingly, e.g. d5396 2 a5397 2 class="pkgname">editors/sam again, but the quick answer is:

    d5402 2 a5403 2

    Please note that the old NO_WRKSUBDIR has been deprecated and d5405 6 a5410 5 a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is another one:

    d5422 4 a5425 4 work by default. If the same pkgsrc tree should be used on several different platforms, the variable OBJMACHINE can be set in /etc/mk.conf to d5427 2 a5428 2 work.i386 or work.sparc.

    d5436 3 a5438 2 "id2566817" id="id2566817">7.7. files/*

    d5449 3 a5451 3 diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d5469 1 a5469 1
    8.1. RCS d5472 3 a5474 2
    8.2. Semi-automatic PLIST generation
    d5477 2 a5478 1 Tweaking output of make print-PLIST d5483 1 a5483 1
    8.5. d5486 3 a5488 2
    8.6. Changing PLIST source with PLIST_SRC
    d5490 1 a5490 1
    8.7. d5498 1 a5498 1

    The PLIST file contains a d5501 3 a5503 3 package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the PLIST file (or files, see below!).

    d5516 1 a5516 1 "id2566871" id="id2566871">8.1. RCS d5523 1 a5523 1 PLIST file you write:

    d5534 3 a5536 3 "id2566886" id= "id2566886">8.2. Semi-automatic PLIST generation

    d5541 4 a5544 4

    You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See make print-PLIST

    d5567 14 a5580 14 you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with d5583 2 a5584 2

    For example, to get all files inside the libdata/foo directory removed from the d5591 1 a5591 1

    And to get all the @@dirrm d5593 1 a5593 1 converted to @@comments:

    d5617 3 a5619 3
    ${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}
    d5627 8 a5634 8 “${MACHINE_ARCH}” will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf created configure scripts.

    d5641 4 a5644 4 "quote">$ARCH” that was replaced by the output of uname -m, but that's no d5649 4 a5652 4
    ${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}
    d5657 2 a5658 2 variables in the PLIST:

    d5663 4 a5666 4

    ${OPSYS} - output of “uname -s

    d5670 4 a5673 3

    ${LOWER_OPSYS} - lowercase common name (eg. “solaris”)

    d5677 4 a5680 4

    ${OS_VERSION} - “uname -r

    d5686 2 a5687 2
    ${PKGLOCALEDIR}
    d5697 2 a5698 2 in share or lib by default.

    d5704 2 a5705 2 default, please look in bsd.pkg.mk (and search for MESSAGE_SUBST (see
    8.5. Manpage-compression

    d5736 11 a5746 11 MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix “.gz” is appended/removed automatically for manpages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    d5754 3 a5756 3 "id2567249" id="id2567249">8.6. Changing PLIST source with PLIST_SRC

    d5761 4 a5764 4

    To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). d5774 1 a5774 1 "id2567266" id="id2567266">8.7. Platform d5788 1 a5788 1

    PLIST.common

    d5792 1 a5792 1

    PLIST.${OPSYS}

    d5796 2 a5797 1

    PLIST.common_end

    d5802 6 a5807 6

    If PLIST.${OPSYS} exists, these files are used instead of PLIST. This allows packages which behave in this way to be handled gracefully. Manually overriding PLIST_SRC for other more exotic uses is also possible.

    d5852 3 a5854 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d5868 2 a5869 2 % cd .../pkgsrc % ls -d */*-dirs d5874 2 a5875 2 USE_DIRS variable takes a list of package names (without the “share/applications, it should have the following line in it:

    d5888 4 a5891 3

    After regenerating the PLIST using make print-PLIST, you should get the right (commented out) lines.

    d5893 2 a5894 2

    Note that, even if your package is using $X11BASE, it must not depend on the d5896 2 a5897 2 part and pkgsrc (in particular, mk/dirs.mk) will take care of it.

    d5916 1 a5916 1
    9.1. d5919 3 a5921 2
    9.2. Writing buildlink3.mk files
    d5925 1 a5925 1
    9.2.1. d5928 5 a5932 2
    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d5937 3 a5939 2
    9.3. Writing builtin.mk files
    d5943 3 a5945 2
    9.3.1. Anatomy of a builtin.mk file
    d5947 1 a5947 1
    9.3.2. d5964 3 a5966 3 into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    d5971 9 a5979 8 the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    d5987 3 a5989 3 normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- d5998 1 a5998 1 "id2567742" id="id2567742">
    9.1. Converting d6012 3 a6014 2

    Set USE_BUILDLINK3 to “yes”.

    d6021 2 a6022 2 sure is the check ${WRKDIR}/.work.log to see if the d6027 5 a6031 5

    Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files d6033 2 a6034 2 pkgname”.

    d6039 2 a6040 2 "emphasis">only
    the buildlink3.mk files that you list d6058 3 a6060 3

    There are several buildlink3.mk files in pkgsrc/mk that handle special package d6066 1 a6066 1

    bdb.buildlink3.mk d6068 3 a6070 3 implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    d6074 5 a6078 5

    curses.buildlink3.mk If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    d6084 3 a6086 3

    krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between d6093 4 a6096 3

    motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif;

    d6106 4 a6109 4

    ossaudio.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API;

    d6113 4 a6116 4

    pgsql.buildlink3.mk will accept either Postgres 7.3 or 7.4, whichever is found installed. See the file for more information.

    d6120 5 a6124 4

    pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed;

    d6131 4 a6134 3

    xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    d6139 2 a6140 2

    The comments in those buildlink3.mk files provide a more d6149 3 a6151 2 "id2567933" id="id2567933">9.2. Writing buildlink3.mk files

    d6156 10 a6165 9

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    d6167 2 a6168 2

    To generate an initial buildlink3.mk file for further editing, d6172 4 a6175 4 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d6177 6 a6182 6 % cd pkgsrc/category/pkgdir % createbuildlink -3 >buildlink3.mk d6189 2 a6190 2

    9.2.1. Anatomy of a buildlink3.mk d6196 3 a6198 3

    The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d6223 6 a6228 5

    The header and footer manipulate BUILDLINK_DEPTH, which is common across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    d6231 2 a6232 2 pkg is added. BUILDLINK_DEPENDS is the d6237 9 a6245 9 buildlink3.mk file for pkg has been included at some point. BUILDLINK_PACKAGES is the global list of packages for which buildlink3.mk files have been included. It must always be appended to within a buildlink3.mk file.

    d6248 2 a6249 2 inclusion and controls how the dependency on pkg is added. Several d6255 12 a6266 11

    BUILDLINK_DEPENDS. pkg is the actual dependency recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the first version of the package that had the last change in the major number of a shared library or that had a major API change.

    d6270 5 a6274 5

    BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc d6279 11 a6289 10

    BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to d6295 10 a6304 9

    BUILDLINK_INCDIRS. pkg and BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These d6312 12 a6323 11

    BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The “-I” option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

    d6331 2 a6332 2 symlinked into ${BUILDLINK_DIR} and how their names d6338 10 a6347 8

    BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

    d6351 7 a6357 7

    BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The d6359 7 a6365 7 ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    d6369 18 a6386 16

    BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default for overwrite packages, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib d6391 4 a6394 4

    BUILDLINK_TRANSFORM.pkg (not shown above) is a list of sed arguments used to d6396 1 a6396 1 destination filename, e.g. .

    d6403 11 a6413 9

    The last section includes any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included.

    d6420 6 a6425 5

    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk files

    d6431 4 a6434 4 dependency listed in BUILDLINK_DEPENDS.pkg after a package update:

    d6451 15 a6465 14

    In these cases, BUILDLINK_DEPENDS.pkg should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_DEPENDS.pkg adjusted, too. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

    d6468 8 a6475 8 BUILDLINK_DEPENDS.pkg as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies. See Section 12.1.3, “Handling dependencies” and BUILDLINK_RECOMMENDED and RECOMMENDED definitions.

    d6490 2 a6491 2 "id2568590" id="id2568590">
    9.3. Writing builtin.mk files

    d6498 6 a6503 6 base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

    d6506 1 a6506 1 pkg are:

    d6511 6 a6516 6

    It should set USE_BUILTIN.pkg to either “yes” or “no” after it is included.

    d6522 4 a6525 4 USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    d6532 2 a6533 2 careful attention to Makefile coding.

    d6542 4 a6545 3

    9.3.1. Anatomy of a builtin.mk file

    d6594 21 a6614 19

    The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be “yes” if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

    The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is d6616 2 a6617 2 variable is only used internally within the builtin.mk file.

    d6619 18 a6636 18

    The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_DEPENDS.pkg. USE_BUILTIN.pkg builtin.mk file. Note that USE_BUILTIN.pkg may be d6643 2 a6644 2 IS_BUILTIN.pkg is d6650 7 a6656 7

    The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding d6658 4 a6661 4 additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

    d6668 2 a6669 2

    9.3.2. Global preferences d6679 3 a6681 3 setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either “PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

    d6704 4 a6707 4 "emphasis">must
    have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    d6727 1 a6727 1
    10.1. d6730 3 a6732 3
    10.2. Converting packages to use bsd.options.mk
    d6737 2 a6738 2 different sets of features. bsd.options.mk is a framework in pkgsrc d6750 1 a6750 1 "id2568971" id="id2568971">10.1. Global d6756 2 a6757 2

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of d6760 1 a6760 1 /etc/mk.conf.

    d6768 4 a6771 3 "id2568986" id= "id2568986">10.2. Converting packages to use bsd.options.mk

    d6776 6 a6781 5

    The following example shows how bsd.options.mk should be use in a package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    d6823 1 a6823 1 bsd.options.mk. It converts d6825 4 a6828 4 PKG_OPTIONS.pkg value. These sections will be removed over time as the old options are in turn deprecated and removed.

    d6837 2 a6838 2

    PKG_OPTIONS_VAR is a list of the name of the PKG_OPTIONS.pkg” but any package-specific value may be used. This d6851 4 a6854 4

    PKG_SUPPORTED_OPTIONS is a list of build options supported by the package. This variable should be set in a package Makefile.

    d6858 6 a6863 6

    ${PKG_OPTIONS_VAR} (the variables named in PKG_OPTIONS_VAR) are variables that list the selected build options and override any default options given in PKG_DEFAULT_OPTIONS. If any of the d6883 2 a6884 2

    This variable should be set in /etc/mk.conf.

    d6895 4 a6898 4

    PKG_OPTIONS contains the list of the selected build options, properly filtered to remove unsupported and duplicate options.

    d6905 6 a6910 6 every option listed in PKG_SUPPORTED_OPTIONS, and there should be clear documentation on what turning on the option will do in the comments preceding each section. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS.

    d6932 1 a6932 1
    11.2. Main d6950 2 a6951 2 in a central Makefile, pkgsrc/mk/bsd.pkg.mk.

    d6969 6 a6974 6

    The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the d6976 3 a6978 3 The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own d7001 2 a7002 2

    LOCALBASE is where all non-X11 pkgs are installed. If you need to d7010 2 a7011 2

    X11BASE is where the actual X11 distribution (from xsrc, etc.) is d7021 3 a7023 3 installed in either X11BASE or LOCALBASE.

    d7026 5 a7030 5 LOCALBASE whenever possible. Note that you will need to set USE_X11 in them to request the presence of X11 and to get the right compilation flags.

    d7033 2 a7034 2 be installed under LOCALBASE: those that come with d7036 4 a7039 4 they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your d7042 14 a7055 13

    Some notes: USE_X11 and USE_X11BASE are mutually exclusive. If you need to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to use both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge is enabled by default.

    d7062 1 a7062 1

    X11PREFIX should be d7064 4 a7067 4 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is d7073 7 a7079 6 have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME will be set to the prefix of the installed package <package>, or d7090 2 a7091 2

    The following lines are taken from pkgsrc/wm/scwm/Makefile:

    d7093 1 a7093 1 EVAL_PREFIX+= GTKDIR=gtk+ d7100 2 a7101 2 packages evaluated using EVAL_PREFIX, by using a definition d7107 1 a7107 1

    where GTKDIR d7109 1 a7109 1 EVAL_PREFIX pair.

    d7113 1 a7113 1

    Within ${PREFIX}, d7116 3 a7118 2 ${PREFIX}/man, not ${PREFIX}/share/man.

    d7129 1 a7129 1 "id2569662" id="id2569662">11.2. Main d7136 1 a7136 1 in bsd.pkg.mk are:

    d7144 7 a7150 7 variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

    d7156 12 a7167 12 possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES_file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    d7190 2 a7191 2 format, most commonly .tar.gz.

    d7195 2 a7196 2 be put into EXTRACT_ONLY.

    d7198 28 a7225 27

    If the distfiles are not in .tar.gz format, they can be extracted by setting either EXTRACT_SUFX, or EXTRACT_CMD, EXTRACT_BEFORE_ARGS and EXTRACT_AFTER_ARGS. In the former case, pkgsrc knows how to extract a number of suffixes (.tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and .gz; see the definition of the various DECOMPRESS_CMD variables bsd.pkg.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

    d7238 14 a7251 12 PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See HAS_CONFIGURE. If the d7279 8 a7286 7 GNU_CONFIGURE should be specified instead. In either case, any arguments to the configure script can be specified in the CONFIGURE_ARGS variable, and the configure script's name can be set in CONFIGURE_SCRIPT if it differs from the default “sysutils/top package:

    d7300 6 a7305 6 by setting USE_IMAKE to “YES”. (If you only want the package installed in $X11PREFIX but xmkmf not being run, set USE_X11BASE instead!)

    d7312 8 a7319 8 will be built by invoking $MAKE_PROGRAM on $MAKEFILE with $BUILD_TARGET as the target to build. The default MAKE_PROGRAM is “gmake” if USE_GNU_TOOLS contains d7322 2 a7323 2 otherwise. MAKEFILE is set to “BUILD_TARGET defaults to “all”. Any of these variables can be set in the package's d7337 10 a7346 9 files. As in the build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “install” (plus “install.man”, if USE_IMAKE is set).

    d7354 3 a7356 2 e.g. make build will also perform the equivalent of:

    d7411 3 a7413 3

    If you did a make install and you noticed some file was not installed properly, you can repeat the d7429 2 a7430 2

    PKG_VERBOSE
    d7440 2 a7441 2
    DEINSTALLDEPENDS
    d7448 3 a7450 3 make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, d7472 6 a7477 5 performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    d7481 8 a7488 7 package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise you lose the d7493 8 a7500 7

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    d7503 4 a7506 4 the command line or in /etc/mk.conf to alter the behaviour of make update:

    d7510 2 a7511 2
    UPDATE_TARGET
    d7516 2 a7517 2 Defaults to DEPENDS_TARGET if set, d7520 4 a7523 4 make update. e.g. make update UPDATE_TARGET=package

    d7526 2 a7527 2
    NOCLEAN
    d7539 4 a7542 3 make or make update.

    d7545 2 a7546 2
    REINSTALL
    d7550 2 a7551 2 (making DEPENDS_TARGET). This may be d7555 2 a7556 2 running make update.

    d7559 2 a7560 2
    DEPENDS_TARGET
    d7568 8 a7575 8 prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    d7585 14 a7598 13 would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    d7601 3 a7603 3 you can either perform a make clean at the top of the tree, or use the following sequence of commands d7607 4 a7610 3 make update for the first time, otherwise you lose all the packages you wanted to update!):

    d7612 6 a7617 6 # make clean-update # make clean CLEANDEPENDS=YES # make update d7621 4 a7624 4 the command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    d7628 2 a7629 2
    CLEAR_DIRLIST
    d7632 12 a7643 11

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see d7664 2 a7665 2

    This target generates a README.html file, which can be d7669 21 a7689 21 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7695 2 a7696 2

    Use this target to create a file README-all.html which contains a d7700 2 a7701 2 This file is compiled from the pkgsrc/*/README.html files, so be d7703 3 a7705 2 "emphasis">after a make readme.

    d7715 5 a7719 5 This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

    d7726 4 a7729 4 are needed to build the package. (DISTFILES and PATCHFILES, but not patches/*)

    d7765 2 a7766 2 the current package's DEPENDS. Useful if out of date d7776 3 a7778 3 default if PKG_DEVELOPER is set in /etc/mk.conf.

    d7787 4 a7790 4 PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is d7793 4 a7796 4 into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

    d7801 1 a7801 1 PLIST, as the d7808 4 a7811 3 “Tweaking output of make print-PLIST” for more information on this target.

    d7820 2 a7821 2 (and it's depends, if PKG_DEPENDS is set properly. See d7843 3 a7845 3 not, make bulk-package will be executed, but the installed binary not be removed.

    d7858 3 a7860 3

    None of the package's files (Makefile, ...) were modified since it was built.

    d7895 1 a7895 1
    12.1. d7901 1 a7901 1 "#id2571066">12.1.1. How to pull in variables from d7905 1 a7905 1 "#id2571149">12.1.2. Restricted d7913 1 a7913 1 "#id2571733">12.1.4. Handling conflicts with other d7917 1 a7917 1 "#id2571851">12.1.5. Packages that cannot or should d7921 1 a7921 1 "#id2571877">12.1.6. Packages which should not be d7929 1 a7929 1 "#id2571969">12.1.8. How to handle compiler d7933 1 a7933 1 "#id2571991">12.1.9. How to handle incrementing d7938 1 a7938 1 "#id2572108">12.1.10. Portability of d7943 1 a7943 1
    12.2. d7949 1 a7949 1 "#id2572136">12.2.1. Packages whose distfiles d7954 1 a7954 1 "#id2572267">12.2.2. How to handle modified d7959 1 a7959 1
    12.3. d7969 1 a7969 1 "#id2572618">12.3.2. Using libtool on GNU packages d7973 1 a7973 1 "#id2572702">12.3.3. GNU d7978 1 a7978 1
    12.4. d7984 1 a7984 1 "#id2572750">12.4.1. CPP defines
    d7988 1 a7988 1
    12.5. d7994 1 a7994 1 "#id2572784">12.5.1. Package configuration d7998 1 a7998 1 "#id2573022">12.5.2. User d8002 1 a8002 1 "#id2573136">12.5.3. Handling d8006 1 a8006 1 "#id2573287">12.5.4. Creating an account from a d8010 1 a8010 1 "#id2573349">12.5.5. Installing score d8014 1 a8014 1 "#id2573393">12.5.6. Packages providing login d8018 1 a8018 1 "#id2573518">12.5.7. Packages containing perl d8022 1 a8022 1 "#id2573537">12.5.8. Packages with hardcoded paths d8026 1 a8026 1 "#id2573558">12.5.9. Packages installing perl d8034 1 a8034 1 "#id2573778">12.5.11. Packages installing GConf2 d8038 1 a8038 1 "#id2573946">12.5.12. Packages installing d8042 1 a8042 1 "#id2573997">12.5.13. Packages installing X11 d8046 1 a8046 1 "#id2574044">12.5.14. Packages installing GTK2 d8050 1 a8050 1 "#id2574114">12.5.15. Packages installing SGML or d8054 1 a8054 1 "#id2574234">12.5.16. Packages installing d8058 1 a8058 1 "#id2574305">12.5.17. Packages using d8063 1 a8063 1
    12.6. d8073 1 a8073 1 "id2571063" id="id2571063">12.1. General d8083 2 a8084 2

    12.1.1. How to pull in d8091 3 a8093 2 be overridden via MAKECONF or /etc/mk.conf is that /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be included before d8106 7 a8112 6 including /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

    d8121 3 a8123 3

    If you wish to set the CFLAGS variable in /etc/mk.conf please make sure to d8129 5 a8133 5

    Using CFLAGS= (i.e. without the “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    d8144 2 a8145 2

    12.1.2. Restricted d8159 1 a8159 1

    RESTRICTED

    d8168 2 a8169 1

    NO_BIN_ON_CDROM

    d8172 2 a8173 2 variable to ${RESTRICTED} whenever a binary d8178 1 a8178 1

    NO_BIN_ON_FTP

    d8181 2 a8182 2 Set this variable to ${RESTRICTED} whenever a binary d8188 2 a8189 1

    NO_SRC_ON_CDROM

    d8192 2 a8193 2 this variable to ${RESTRICTED} if re-distribution d8199 1 a8199 1

    NO_SRC_ON_FTP

    d8202 2 a8203 2 variable to ${RESTRICTED} if re-distribution d8210 4 a8213 4

    Please note that the use of NO_PACKAGE, IGNORE, NO_CDROM, or other generic make d8232 5 a8236 5 dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, as well as dependencies via buildlink3.mk, which is the preferred d8244 1 a8244 1 follows: The DEPENDS d8247 2 a8248 2 is later installed, whilst the BUILD_DEPENDS definition does not, d8254 1 a8254 1 BUILD_DEPENDS.

    d8256 3 a8258 3

    The format for a BUILD_DEPENDS and a DEPENDS definition is:

    d8276 3 a8278 3 that package has a buildlink3.mk file available, use it:

    d8287 4 a8290 4 to build itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

    d8298 5 a8302 5 link and again there is no buildlink3.mk file available, this is specified using the DEPENDS definition. An example of this is the print/lyx package, which uses the xpm library, version 3.4j to build:

    d8331 1 a8331 1 DEPENDS.

    d8353 1 a8353 1 RECOMMENDED:

    d8358 2 a8359 2

    In addition to the above DEPENDS line, this denotes that d8362 5 a8366 4 recommended. RECOMMENDED entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed). Packages that are built with d8375 1 a8375 1 RECOMMENDED, see d8386 3 a8388 3 buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8409 3 a8411 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8427 6 a8432 6

    Please also note the BUILD_USES_MSGFMT and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8448 2 a8449 2

    12.1.4. Handling conflicts d8460 2 a8461 2

    In this case you can set CONFLICTS to a space separated list of d8468 6 a8473 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8478 2 a8479 2

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

    d8496 2 a8497 2

    12.1.5. Packages that cannot d8506 11 a8516 10 exceptions should be noted with NOT_FOR_PLATFORM. If the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. If the package should be skipped (for example, because it provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive d8519 1 a8519 1

    IGNORE is deprecated d8528 2 a8529 2

    12.1.6. Packages which d8536 3 a8538 3 has been installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any d8561 2 a8562 2 in localsrc/security/advisories/pkg-vulnerabilities, d8564 14 a8577 13 to both /pub/NetBSD/packages/distfiles/pkg-vulnerabilities and /pub/NetBSD/packages/distfiles/vulnerabilities on ftp.NetBSD.org using localsrc/security/advisories/Makefile. In addition, if a buildlink3.mk file exists for an affected package, bumping PKGREVISION and creating a corresponding BUILDLINK_RECOMMENDED.pkg entry should be considered. See buildlink3.mk files and BUILDLINK_* definitions.

    d8592 2 a8593 2

    12.1.8. How to handle d8606 1 a8606 1 MACHINE_ARCH and compiler d8608 3 a8610 3 file/MACHINE_ARCH/compiler combination, and documenting it in pkgsrc/doc/HACKS. See that file for a d8618 2 a8619 2

    12.1.9. How to handle d8627 2 a8628 2 useful to change the version number in PKGNAME. To avoid conflicting with d8633 4 a8636 4 PKGREVISION=1 (2, ...). The “nb” is treated like a “.” by the pkg tools. e.g.

    d8642 2 a8643 2

    will result in a PKGNAME of “PKGREVISION should be removed. e.g. on a new minor release of the above package, things should be like:

    d8659 2 a8660 2

    12.1.10. Portability of d8676 2 a8677 2

    12.1.10.1. ${INSTALL}, d8683 2 a8684 2

    The BSD-compatible install supplied with some d8702 1 a8702 1 "id2572133" id="id2572133">12.2. Possible d8712 2 a8713 2

    12.2.1. Packages whose d8721 8 a8728 7 set DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

    d8736 6 a8741 6 can set _FETCH_MESSAGE to a macro which displays a message explaining the situation. _FETCH_MESSAGE must be executable shell commands, not just a message. (Generally, it executes ${ECHO}). As of this writing, the d8745 23 a8767 25 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8774 2 a8775 2

    12.2.2. How to handle d8790 2 a8791 2 ftp.NetBSD.org's /pub/NetBSD/packages/distfiles d8804 2 a8805 2 "id2572279" id= "id2572279">12.3. Configuration d8832 5 a8836 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d8844 3 a8846 2

    Add USE_LIBTOOL=yes to the package Makefile.

    d8855 5 a8859 5 CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

    d8874 9 a8882 9 .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include “In the PLIST, include all of the .a, .la, and .so, .so.major and .so.major.minor files.

    d8941 2 a8942 2

    When linking shared object (.so) files, i.e. files that are d8948 3 a8950 2

    The PLIST file gets the foo.so entry.

    d8973 1 a8973 1 .la file. e.g.

    d8980 3 a8982 3 ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la d9000 2 a9001 2 library name to .la. e.g.

    d9006 2 a9007 2

    This will install the static .a, shared library, any needed d9015 9 a9023 7

    In your PLIST, include all of the .a, .la, and .so, .so.CURRENT and .so.CURRENT.REVISION files (this is a change from the previous behaviour).

    d9033 2 a9034 2

    12.3.2. Using libtool on GNU d9040 3 a9042 3

    Add USE_LIBTOOL=yes to the package Makefile. This will override the package's own libtool in most cases. For older libtool using d9045 11 a9055 10 location by doing make configure; find work*/ -name libtool.

    LIBTOOL_OVERRIDE specifies which libtool scripts, relative to WRKSRC, to override. By default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the package's libtool script(s), set it as appropriate.

    d9057 1 a9057 1

    If you do not need *.a d9059 1 a9059 1 SHLIBTOOL_OVERRIDE d9065 2 a9066 2 the libtool buildlink3.mk (and set USE_BUILDLINK3=YES).

    d9084 3 a9086 2 i.e. libfoo.la, not foo.la

    d9101 2 a9102 2 LTDL_SET_PRELOADED_SYMBOLS d9113 2 a9114 2

    12.3.3. GNU d9124 5 a9128 5 fragments are provided in pkgsrc/mk/autoconf.mk and pkgsrc/mk/automake.mk to help dealing with these tools. See comments in these files for details.

    d9161 2 a9162 2 provided for you in mk/automake.mk.

    d9169 2 a9170 2 problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package d9180 1 a9180 1 "id2572747" id="id2572747">12.4. Building d9190 2 a9191 2

    12.4.1. CPP defines

    d9203 2 a9204 2 defined in <sys/param.h> on said d9230 1 a9230 1 "id2572780" id="id2572780">12.5. Package d9240 2 a9241 2

    12.5.1. Package d9248 2 a9249 2 configuration files in ${PKG_SYSCONFDIR}, which is passed d9251 1 a9251 1 PKG_SYSCONFDIR may be d9258 7 a9264 7

    PKG_SYSCONFBASE is the main config directory under which all package configuration files are to be found. This defaults to ${PREFIX}/etc, but may be overridden in /etc/mk.conf.

    d9268 3 a9270 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d9273 4 a9276 4 all be found under the httpd/ subdirectory of ${PKG_SYSCONFBASE}. This should be set in the package Makefile.

    d9280 10 a9289 9

    By default, PKG_SYSCONFDIR is set to ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}, but this may be overridden by setting PKG_SYSCONFDIR.${PKG_SYSCONFVAR} for a particular package, where PKG_SYSCONFVAR defaults to ${PKGBASE}. This is not meant to be set by a package Makefile, but is d9291 2 a9292 2 PKG_SYSCONFDIR setting for a particular package with a special d9299 8 a9306 6 PKG_SYSCONFBASE and PKG_SYSCONFDIR.${PKG_SYSCONFVAR}. Users will typically want to set PKG_SYSCONFBASE to /etc, or to accept the default location of ${PREFIX}/etc.

    d9313 2 a9314 2

    12.5.2. User d9344 1 a9344 1

    The INTERACTIVE_STAGE d9347 2 a9348 2 should be set in the package's Makefile. e.g.

    d9363 2 a9364 2

    12.5.3. Handling d9384 4 a9387 4 works by setting the LICENSE variable to a string identifying the license, e.g. in graphics/graphviz:

    d9398 2 a9399 1 % make d9407 5 a9411 5

    The license can be viewed with make show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

    d9417 7 a9423 7 license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/defaults/mk.conf.

    d9430 2 a9431 2 done by setting _ACCEPTABLE=yes.

    d9438 2 a9439 2

    12.5.4. Creating an account d9447 2 a9448 2 pre-install time. The first is PKG_GROUPS, which is a list of d9450 2 a9451 2 optional. The second is PKG_USERS, which is a list of elements d9473 4 a9476 3 /nonexistent, and login shell /sbin/nologin unless they are specified as part of the user element.

    d9478 9 a9486 9

    The package Makefile must also set USE_PKGINSTALL=YES. This will cause the users and groups to be created at pre-install time, and the admin will be prompted to remove them at post-deinstall time. Automatic creation of the users and groups can be toggled on and off by setting the PKG_CREATE_USERGROUP variable prior to package installation.

    d9493 2 a9494 2

    12.5.5. Installing score d9507 7 a9513 6 mk/defaults/mk.conf, control this behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

    d9516 2 a9517 2 is disabled; setting SETGIDGAME=YES will set all the other d9521 4 a9524 4 ownership or access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    d9531 2 a9532 2

    12.5.6. Packages providing d9539 9 a9547 8 shell, the variable PKG_SHELL should contain the full pathname of the shell executable installed by this package. The package Makefile must also set USE_PKGINSTALL=YES to use the automatically generated INSTALL/DEINSTALL scripts.

    d9555 6 a9560 6

    The shell is registered into /etc/shells file automatically in the post-install target by the generated INSTALL script and removed in the deinstall target by the DEINSTALL script.

    d9567 2 a9568 2

    12.5.7. Packages containing d9575 5 a9579 5 set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted.

    d9586 2 a9587 2

    12.5.8. Packages with d9597 3 a9599 3 in your Makefile (we shall use tclsh in this example):

    d9613 2 a9614 2

    12.5.9. Packages installing d9621 7 a9627 7 include the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

    d9632 6 a9637 6 the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of paths to packlist files, e.g.:

    d9642 4 a9645 4

    The variables PERL5_SITELIB, PERL5_SITEARCH, and PERL5_ARCHLIB represent the three d9649 1 a9649 1 for in the PLIST.

    d9672 2 a9673 2 ${PREFIX}/${INFO_DIR},

    d9678 2 a9679 2 ${PREFIX}/${INFO_DIR}/dir,

    d9684 2 a9685 2 INFO_FILES variable in the package Makefile.

    d9690 1 a9690 1

    INFO_DIR defaults to d9692 4 a9695 4 be overridden in the package Makefile. INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info d9704 2 a9705 2 must define the variable USE_MAKEINFO in its Makefile. If a d9708 3 a9710 3 should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a d9712 5 a9716 5 not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

    d9723 6 a9728 5 install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

    d9731 5 a9735 4 creates overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

    d9737 10 a9746 9

    The script overriding install-info has no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of USE_MAKEINFO and TEXINFO_REQD either run the appropriate makeinfo command or exit on error.

    d9753 2 a9754 2

    12.5.11. Packages installing d9760 3 a9762 3

    If a package installs .schemas or .entries files, used by GConf2, you d9769 4 a9772 4

    Include ../../devel/GConf2/schemas.mk instead of its buildlink3.mk file. This takes d9783 5 a9787 5 .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to d9795 2 a9796 2 "6.13. Configuration files handling and placement"> Section 6.13, “Configuration files d9802 7 a9808 6

    Define the GCONF2_SCHEMAS variable in your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    d9812 7 a9818 6

    Define the GCONF2_ENTRIES variable in your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    d9828 2 a9829 2

    12.5.12. Packages installing d9835 4 a9838 4

    If a package installs .omf files, used by scrollkeeper, you need to take some extra steps to make sure they get registered in the database:

    d9843 4 a9846 4

    Include ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This takes d9855 2 a9856 2 the libdata/scrollkeeper directory, d9861 3 a9863 3

    Remove the share/omf directory from the PLIST. It will be handled by scrollkeeper.

    d9873 2 a9874 2

    12.5.13. Packages installing d9883 4 a9886 3 This can be automatically done by using mk/fonts.mk, which you need to include in your Makefile.

    d9889 6 a9894 5 directories where fonts are installed in the FONTS_type_DIRS variables, where type can be one of “TTF”, d9897 2 a9898 2 sure that the database file fonts.dir is not listed in the d9911 2 a9912 2

    12.5.14. Packages installing d9925 6 a9930 5

    Include ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

    d9934 3 a9936 3

    Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

    d9940 3 a9942 2

    Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

    d9952 2 a9953 2

    libdata/gtk-2.0/gdk-pixbuf.loaders

    d9957 2 a9958 2

    libdata/gtk-2.0/gtk.immodules

    d9966 1 a9966 1 the libdata/gtk-2.0 d9978 2 a9979 2

    12.5.15. Packages installing d9993 4 a9996 4

    Include ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in d10002 3 a10004 3

    Set SGML_CATALOGS to the full path of any SGML catalogs installed by the package.

    d10008 2 a10009 2

    Set XML_CATALOGS to the full path of any XML catalogs installed by d10014 2 a10015 2

    Set SGML_ENTRIES to individual entries to be added to the SGML d10024 2 a10025 2

    Set XML_ENTRIES to individual entries to be added to the XML d10040 2 a10041 2

    12.5.16. Packages installing d10048 6 a10053 5 database by installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

    d10058 10 a10067 9

    Include ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the d10073 1 a10073 1 the share/mime d10076 2 a10077 2 under share/mime/packages. The former d10086 3 a10088 3

    Remove any share/mime/* directories from the PLIST. They will be handled by the d10099 2 a10100 2

    12.5.17. Packages using d10107 2 a10108 2 the ../../textproc/intltool/buildlink3.mk d10125 1 a10125 1 "id2574318" id="id2574318">12.6. Feedback d10163 3 a10165 3

    Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

    d10172 4 a10175 4 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d10177 10 a10186 10 % mkdir /usr/pkgsrc/category/examplepkg % cd /usr/pkgsrc/category/examplepkg % url2pkg http://www.example.com/path/to/distfile.tar.gz d10191 1 a10191 1

    Edit the Makefile as d10196 1 a10196 1

    Fill in the DESCR d10201 2 a10202 2

    Run make configure

    d10207 2 a10208 2 and the configure step to the package's Makefile.

    d10215 14 a10228 13 % make % pkgvi ${WRKSRC}/some/file/that/does/not/compile % mkpatches % patchdiff % mv ${WRKDIR}/.newpatches/* patches % make mps % make clean d10233 6 a10238 4 build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

    d10245 6 a10250 4

    Look at the Makefile, fix if necessary; see Section 7.1, “Makefile”.

    d10254 2 a10255 1

    Generate a PLIST:

    d10257 10 a10266 10 # make install # make print-PLIST >PLIST # make deinstall # make install # make deinstall d10269 2 a10270 2

    You usually need to be root to do this. Look if there are d10273 2 a10274 2 # make print-PLIST d10278 1 a10278 1 PLIST, add them.

    d10282 2 a10283 2

    Now that the PLIST is OK, install the package again and make a binary d10286 4 a10289 4 # make reinstall # make package d10296 2 a10297 2 # pkg_delete blub d10302 3 a10304 3

    Repeat the above make print-PLIST command, which shouldn't find anything now:

    d10306 2 a10307 2 # make print-PLIST d10314 2 a10315 2 # pkgadd .../blub.tgz d10324 2 a10325 2

    Run pkglint from pkgtools/pkglint, and fix the problems it reports:

    d10331 2 a10332 1 # pkglint d10361 1 a10361 1
    14.1. d10364 1 a10364 1
    14.2. d10368 1 a10368 1
    14.3. d10371 1 a10371 1
    14.4. d10381 2 a10382 2 "id2574849" id= "id2574849">14.1. Submitting your d10419 2 a10420 2 Finally, send-pr with category d10448 2 a10449 2 "id2575036" id= "id2575036">14.2. Committing: Importing a d10459 7 a10465 7 the cvs import command is so that it knows where to place the files in the repository. Newly created packages should be imported with a vendor tag of “TNF” and a release tag of “pkgsrc-base”, e.g:

    d10475 2 a10476 1 the category's Makefile.

    d10479 3 a10481 3 include part of the DESCR file, so people reading the mailing lists know what the package is/does.

    d10484 4 a10487 4 pkgsrc/doc/CHANGES. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on 14.3. Updating d10556 1 a10556 1 "id2575187" id="id2575187">14.4. Moving a d10574 2 a10575 2 % cvs -d user@@cvs.NetBSD.org:/cvsroot export -D today pkgsrc/category/package d10582 3 a10584 3

    Fix CATEGORIES and any DEPENDS paths that just did “cvs import the modified package in the new place.

    d10599 4 a10602 4 % cd /usr/pkgsrc % grep /package */*/Makefile* */*/buildlink* d10612 3 a10614 2

    cvs rm (-f) the package at the old location.

    d10618 2 a10619 2

    Remove from oldcategory/Makefile.

    d10623 2 a10624 2

    Add to newcategory/Makefile.

    d10630 2 a10631 2 % cvs commit oldcategory/package oldcategory/Makefile newcategory/Makefile d10657 1 a10657 1
    A.1. d10662 1 a10662 1
    A.1.1. d10665 1 a10665 1
    A.1.2. d10668 1 a10668 1
    A.1.3. d10671 3 a10673 2
    A.1.4. Checking a package with pkglint
    d10677 1 a10677 1
    A.2. Steps d10684 5 a10688 4 would want to have bison when Berkeley yacc is already present in the tree is beyond us, but it's useful for the purposes of this exercise.

    d10695 1 a10695 1 "id2575345" id="id2575345">
    A.1. files

    d10704 2 a10705 2

    A.1.1. Makefile

    d10732 2 a10733 2

    A.1.2. DESCR

    d10749 2 a10750 2

    A.1.3. PLIST

    d10767 4 a10770 3

    A.1.4. Checking a package with pkglint

    d10778 6 a10783 5 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10785 2 a10786 1 $ pkglint d10796 2 a10797 2 e.g. pkglint -v for a very verbose check.

    d10806 1 a10806 1 "id2575418" id="id2575418">A.2. Steps for d10815 8 a10822 8 # cd /usr/pkgsrc/lang # mkdir bison # cd bison # mkdir patches d10825 3 a10827 3

    Create Makefile, DESCR and PLIST (see # make fetch d10849 2 a10850 2

    Generate the checksum of the distfile into distinfo:

    d10852 2 a10853 2 # make makesum d10858 2 a10859 1 # make d10914 2 a10915 2 # make install d10931 3 a10933 3 remove it with pkg_delete bison. Should you decide that you want a binary package, do this now:

    d10935 2 a10936 2 # make package d10947 2 a10948 2 # make clean d10987 2 a10988 1 # make d11059 3 a11061 3 # # make install d11076 1 a11076 1 # d11091 2 a11092 2 # make package d11099 1 a11099 1 # d11201 3 a11203 3

    If necessary, create a symlink ln -s `uname -m` `uname -p` (amiga -> m68k, ...)

    d11224 1 a11224 1
    D.1. d11227 1 a11227 1
    D.2. d11240 1 a11240 1 "id2576133" id="id2576133">D.1. Targets

    d11245 2 a11246 2

    The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files d11252 4 a11255 3

    pkgsrc/doc/pkgsrc.txt, which replaces pkgsrc/Packages.txt

    d11259 2 a11260 2

    pkgsrc/doc/pkgsrc.html

    d11264 2 a11265 2

    http://www.NetBSD.org/Documentation/pkgsrc/: d11274 2 a11275 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: d11280 2 a11281 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: d11293 2 a11294 2 "id2576408" id= "id2576408">D.2. Procedure

    d11314 4 a11317 4 found in pkgsrc/meta-pkgs/netbsd-doc and pkgsrc/meta-pkgs/netbsd-doc-print.

    d11321 2 a11322 2

    Edit the XML file(s) in pkgsrc/doc/guide/files.

    d11326 4 a11329 4

    Run make extract && make do-lint in pkgsrc/doc/guide to check the XML syntax, and fix it if needed.

    d11333 4 a11336 3

    Run make in pkgsrc/doc/guide to build the HTML and ASCII version.

    d11340 4 a11343 3

    If all is well, run make install-doc to put the generated files into pkgsrc/doc.

    d11347 2 a11348 2

    cvs commit pkgsrc/doc/guide/files

    d11352 3 a11354 2

    cvs commit -m re-generate pkgsrc/doc/pkgsrc.{html,txt}

    d11360 5 a11364 4 pkgsrc guide automatically, also run make install-htdoc HTDOCSDIR=../../../htdocs (or similar, adjust HTDOCSDIR!).

    d11368 2 a11369 2

    cvs commit htdocs/Documentation/pkgsrc

    @ 1.12 log @Regenerate, to include documentation on the mksandbox script, and the "sandbox" script which is generated. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d11 1 a11 1 "DocBook XSL Stylesheets V1.67.0" /> d22 2 a23 2

    The pkgsrc guide

    d40 2 a41 2

    d53 2 a54 2

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515258">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515489">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515659">3.2.3. Interix d155 1 a155 1 "#id2515750">3.2.4. IRIX d158 1 a158 1 "#id2516277">3.2.5. OpenBSD d161 1 a161 1 "#id2516389">3.2.6. Solaris d179 1 a179 1 "#id2516525">4.1.1. Where to get binary d183 1 a183 1 "#id2516566">4.1.2. How to use binary d187 1 a187 1 "#id2516700">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516722">4.2.1. d202 1 a202 1 "#id2516742">4.2.2. Fetching d206 1 a206 1 "#id2516862">4.2.3. How to build and d210 1 a210 1 "#id2517179">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2517961">5.3.2. Other environmental d243 1 a243 1 "#id2518002">5.3.3. Operation
    d246 1 a246 1 "#id2583267">5.3.4. What it d250 1 a250 1 "#id2583392">5.3.5. Disk space d254 1 a254 1 "#id2583418">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583811">5.3.7. Building a partial set of d260 4 d267 1 a267 1
    5.4. d274 1 a274 1 "#id2583868">5.4.1. Example of d286 1 a286 1
    6.1. d290 1 a290 1
    6.2. d297 1 a297 1
    6.4. d300 1 a300 1
    6.5. d304 1 a304 1
    6.6. d308 1 a308 1
    6.7. d312 2 a313 3
    6.8. How do I tell make fetch to do passive d316 1 a316 1
    6.9. d319 6 a324 3
    6.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” d327 1 a327 5
    6.11. What does “Could not find bsd.own.mk” mean?
    6.12. d354 2 a355 2 "#components.Makefile">7.1. Makefile
    d358 2 a359 2 "#components.distinfo">7.2. distinfo d365 1 a365 1
    7.4. d372 2 a373 2
    7.6. work*
    d375 2 a376 3
    7.7. files/*
    d385 1 a385 1
    8.1. d388 2 a389 3
    8.2. Semi-automatic PLIST generation
    d392 1 a392 3 Tweaking output of make print-PLIST d397 1 a397 1
    8.5. d400 3 a402 3
    8.6. Changing PLIST source with PLIST_SRC
    d404 1 a404 1
    8.7. d419 1 a419 1
    9.1. d423 2 a424 3
    9.2. Writing buildlink3.mk files
    d429 1 a429 1 "#id2587496">9.2.1. Anatomy of a buildlink3.mk d433 2 a434 4 "#id2588073">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d439 2 a440 3
    9.3. Writing builtin.mk files
    d445 1 a445 2 "#id2588233">9.3.1. Anatomy of a builtin.mk d449 1 a449 1 "#id2588392">9.3.2. Global preferences for d461 1 a461 1
    10.1. d464 3 a466 3
    10.2. Converting packages to use bsd.options.mk
    d479 1 a479 1
    11.2. d493 1 a493 1
    12.1. d499 1 a499 1 "#id2590560">12.1.1. How to pull in variables d503 1 a503 1 "#id2590643">12.1.2. Restricted d511 1 a511 1 "#id2591226">12.1.4. Handling conflicts with d515 1 a515 1 "#id2591276">12.1.5. Packages that cannot or d519 1 a519 1 "#id2591302">12.1.6. Packages which should not d527 1 a527 1 "#id2591462">12.1.8. How to handle compiler d531 1 a531 1 "#id2591484">12.1.9. How to handle incrementing d536 1 a536 1 "#id2591533">12.1.10. Portability of d541 1 a541 1
    12.2. d547 1 a547 1 "#id2591629">12.2.1. Packages whose distfiles d552 1 a552 1 "#id2591692">12.2.2. How to handle modified d557 1 a557 1
    12.3. d567 1 a567 1 "#id2592180">12.3.2. Using libtool on GNU d572 1 a572 1 "#id2592264">12.3.3. GNU d577 1 a577 1
    12.4. d583 1 a583 1 "#id2592312">12.4.1. CPP d588 1 a588 1
    12.5. d594 1 a594 1 "#id2592345">12.5.1. Package configuration d598 1 a598 1 "#id2592516">12.5.2. User d602 1 a602 1 "#id2592561">12.5.3. Handling d606 1 a606 1 "#id2592644">12.5.4. Creating an account from a d610 1 a610 1 "#id2592774">12.5.5. Installing score d614 1 a614 1 "#id2592818">12.5.6. Packages providing login d618 1 a618 1 "#id2593012">12.5.7. Packages containing perl d622 1 a622 1 "#id2593030">12.5.8. Packages with hardcoded d626 1 a626 1 "#id2593051">12.5.9. Packages installing perl d634 1 a634 1 "#id2593408">12.5.11. Packages installing d638 1 a638 1 "#id2593508">12.5.12. Packages installing d642 1 a642 1 "#id2593559">12.5.13. Packages installing X11 d646 1 a646 1 "#id2593606">12.5.14. Packages installing GTK2 d650 1 a650 1 "#id2593675">12.5.15. Packages installing SGML d654 1 a654 1 "#id2593728">12.5.16. Packages installing d658 1 a658 1 "#id2593798">12.5.17. Packages using d663 1 a663 1
    12.6. d676 1 a676 1
    14.1. d679 1 a679 1
    14.2. d683 1 a683 1
    14.3. d687 1 a687 1
    14.4. d699 1 a699 1
    A.1. d704 1 a704 1
    A.1.1. d707 1 a707 1
    A.1.2. d710 1 a710 1
    A.1.3. d713 2 a714 3
    A.1.4. Checking a package with pkglint
    d718 1 a718 1
    A.2. Steps d744 1 a744 1
    D.1. d747 1 a747 1
    D.2. d768 1 a768 1
    1.1. d787 2 a788 2 "id2514273" id= "id2514273">1.1. Introduction

    d803 4 a806 5 the pkg_* tools so that installation and de-installation, printing of an inventory of all installed packages and retrieval of one-line comments or more verbose descriptions are all simple.

    d817 2 a818 2 class="pkgname">www/apache - The Apache web server

    d825 2 a826 2 class="pkgname">www/mozilla - The Mozilla web browser

    d833 2 a834 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d841 2 a842 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d981 2 a982 2 stored under /usr/pkgsrc.

    d1006 2 a1007 2 too. Distfiles are usually stored below /usr/pkgsrc/distfiles.

    d1025 6 a1030 7 distfile and stuffed together in a single .tgz file so it can be installed on machines of the same machine architecture without the need to recompile. Packages are usually generated in /usr/pkgsrc/packages; there is also an archive on #
    for root's shell prompt, and a $ for users' shell prompt, assuming they use the C-shell or tcsh.

    d1091 1 a1091 1
    2.1. As d1094 1 a1094 1
    2.2. Via d1097 1 a1097 1
    2.3. Via d1107 1 a1107 1
    3.1. d1110 1 a1110 1
    3.2. d1116 1 a1116 1 "#id2515258">3.2.1. Darwin (Mac OS d1120 1 a1120 1 "#id2515489">3.2.2. FreeBSD
    d1123 1 a1123 1 "#id2515659">3.2.3. Interix d1126 1 a1126 1 "#id2515750">3.2.4. IRIX d1129 1 a1129 1 "#id2516277">3.2.5. OpenBSD d1132 1 a1132 1 "#id2516389">3.2.6. Solaris d1150 1 a1150 1 "#id2516525">4.1.1. Where to get binary d1154 1 a1154 1 "#id2516566">4.1.2. How to use binary d1158 1 a1158 1 "#id2516700">4.1.3. A word of d1163 1 a1163 1
    4.2. d1169 1 a1169 1 "#id2516722">4.2.1. Requirements
    d1172 1 a1172 1 "#id2516742">4.2.2. Fetching d1176 1 a1176 1 "#id2516862">4.2.3. How to build and d1180 1 a1180 1 "#id2517179">4.2.4. Selecting the d1192 1 a1192 1
    5.1. d1195 1 a1195 1
    5.2. d1209 1 a1209 1 "#id2517961">5.3.2. Other environmental d1213 1 a1213 1 "#id2518002">5.3.3. Operation
    d1216 1 a1216 1 "#id2583267">5.3.4. What it does d1219 1 a1219 1 "#id2583392">5.3.5. Disk space d1223 1 a1223 1 "#id2583418">5.3.6. Setting up a sandbox for d1227 1 a1227 1 "#id2583811">5.3.7. Building a partial set of d1229 4 d1236 1 a1236 1
    5.4. d1243 1 a1243 1 "#id2583868">5.4.1. Example of d1255 1 a1255 1
    6.1. Is d1259 1 a1259 1
    6.2. d1266 1 a1266 1
    6.4. How d1269 1 a1269 1
    6.5. How d1273 1 a1273 1
    6.6. How d1276 1 a1276 1
    6.7. How d1279 2 a1280 3
    6.8. How do I tell make fetch to do passive d1283 1 a1283 1
    6.9. How d1286 6 a1291 3
    6.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” d1294 1 a1294 5
    6.11. What does “Could not find bsd.own.mk” mean?
    6.12. d1324 1 a1324 1
    2.1. As d1327 1 a1327 1
    2.2. Via d1330 1 a1330 1
    2.3. Via d1344 1 a1344 1 "id2514851" id="id2514851">2.1. As tar d1353 2 a1354 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1362 1 a1362 1 "id2514867" id="id2514867">2.2. Via d1375 6 a1380 6

    in it, see the examples in /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply run sup -v /path/to/your/supfile.

    d1388 1 a1388 1 "id2514967" id="id2514967">2.3. Via d1400 15 a1414 17 % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot % setenv CVS_RSH ssh % cd /usr % cvs checkout -P pkgsrc

    This will create the pkgsrc directory in your /usr, and all the package source will be stored under /usr/pkgsrc. To update pkgsrc after the initial checkout, make sure you have CVS_RSH set as above, then do:

    d1416 4 a1419 4 % cd /usr/pkgsrc % cvs -q update -dP d1443 1 a1443 1
    3.1. d1446 1 a1446 1
    3.2. d1451 1 a1451 1
    3.2.1. d1454 1 a1454 1
    3.2.2. d1457 1 a1457 1
    3.2.3. d1460 1 a1460 1
    3.2.4. d1463 1 a1463 1
    3.2.5. d1466 1 a1466 1
    3.2.6. d1478 2 a1479 2 "id2515077" id= "id2515077">3.1. Bootstrapping pkgsrc

    d1527 6 a1532 6 # env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc # cd pkgsrc/bootstrap # ./bootstrap d1538 6 a1543 7 pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, and /var/db/pkg for the package database d1560 1 a1560 1 "id2515252" id="id2515252">3.2. Platform d1573 2 a1574 2

    3.2.1. Darwin (Mac OS d1628 8 a1635 8 # cd pkgsrc/bootstrap # ./ufsdiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste # ./ufsdiskimage mount ~/Documents/NetBSD # sudo chown `id -u`:`id -g` /Volumes/NetBSD d1652 10 a1661 10

    By default, /usr will be on your root file system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS file system. Obviously, another symlink is required if you want to place the package database directory outside the prefix. e.g.

    d1663 2 a1664 2 # ./bootstrap --pkgdbdir=/usr/pkg/pkgdb --pkgsrcdir=/Volumes/ufs/pkgsrc d1670 2 a1671 2 /Volumes/<volume name> when the machine boots. If you are d1706 2 a1707 2

    3.2.2. FreeBSD

    d1723 1 a1723 1 /var/db/pkg. It is d1725 2 a1726 2 location (e.g. /usr/pkgdb) by using the d1735 10 a1744 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d1749 4 a1752 5

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script.

    d1762 2 a1763 2

    3.2.3. Interix

    d1933 2 a1934 2

    3.2.4. IRIX

    d1941 3 a1943 3 the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can d1960 3 a1962 3 conflicting CFLAGS in your environment or the /etc/mk.conf. Particularly, make sure d1964 2 a1965 2 or vice versa. Check your /etc/compiler.defaults!

    d1969 1 a1969 1 WRKOBJDIR to a local d1977 2 a1978 2 Please see pkgsrc/mk/defaults/mk.conf and, of d1986 2 a1987 2

    3.2.5. OpenBSD

    d2002 1 a2002 1 /var/db/pkg. It is d2004 2 a2005 2 location (e.g. /usr/pkgdb) by using the d2014 10 a2023 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d2028 6 a2033 7

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses /etc/mk.conf as well. You can d2052 2 a2053 2

    3.2.6. Solaris

    d2097 2 a2098 2

    3.2.6.1. If you are using d2112 3 a2114 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2119 2 a2120 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2127 2 a2128 2

    3.2.6.2. If you are using d2159 4 a2162 4

    You should set CC, CXX and optionally, CPP in /etc/mk.conf, eg.

    d2177 3 a2179 4 PATH. This includes /usr/ccs/{bin,lib} and eg. /usr/pkg/{bin,sbin}.

    d2204 1 a2204 1
    4.1.1. d2207 1 a2207 1
    4.1.2. d2210 1 a2210 1
    4.1.3. d2215 1 a2215 1
    4.2. d2220 1 a2220 1
    4.2.1. d2223 1 a2223 1
    4.2.2. d2226 1 a2226 1
    4.2.3. d2229 1 a2229 1
    4.2.4. d2256 2 a2257 2

    4.1.1. Where to get binary d2264 5 a2268 5 and its mirrors in the directory /pub/NetBSD/packages for anonymous FTP access. Please pick the right subdirectory there as indicated by uname -p. In that directory, there is a d2270 5 a2274 6 All which includes the actual binaries in .tgz files. The category subdirectories use symbolic links to those files (this is the same directory layout as in /usr/pkgsrc/packages).

    d2278 2 a2279 2 somewhere else, probably somewhere below /cdrom. Please consult your CDROMs d2287 2 a2288 2

    4.1.2. How to use binary d2296 2 a2297 2 following command (be sure tosu to root first):

    d2299 2 a2300 2 # pkg_add /path/to/package.tgz d2305 2 a2306 3 you can do this automatically by giving pkg_add an FTP URL:

    d2308 2 a2309 2 # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All/package.tgz d2314 2 a2315 2 running uname -rp.

    d2322 3 a2324 3 /usr/pkg/bin in your PATH so you can actually start the just installed program.

    d2331 2 a2332 2

    4.1.3. A word of d2355 1 a2355 1 "id2516712" id="id2516712">4.2. Building d2370 2 a2371 2

    4.2.1. Requirements

    d2390 2 a2391 2

    4.2.2. Fetching d2407 7 a2413 7 a look at pkgsrc/mk/defaults/mk.conf to find some examples - in particular, look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY definitions. This may save some of your bandwidth and time.

    d2417 1 a2417 1 editing the /etc/mk.conf d2422 4 a2425 4 make fetch-list will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles.

    d2432 2 a2433 2

    4.2.3. How to build and d2441 2 a2442 2 relevant directory and running make. For example, type

    d2444 3 a2446 4 % cd misc/figlet % make d2452 2 a2453 2 # make install d2470 3 a2472 4 the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your d2474 3 a2476 3 your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your d2479 7 a2485 8 with other programs (ie, do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent d2490 2 a2491 2

    Some packages look in /etc/mk.conf to alter some d2493 6 a2498 8 pkgsrc/mk/defaults/mk.conf to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in /etc/mk.conf to save having to remember to set them each time you want to use pkgsrc.

    d2514 3 a2516 4 with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

    d2518 1 a2518 2 make patch PKG_DEBUG_LEVEL=2 d2528 4 a2531 4 make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the DISTFILES
    :

    d2537 2 a2538 2 % make show-var VARNAME=LOCALBASE d2540 1 a2540 1 % d2556 5 a2560 6 make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITES, which defaults to ftp.NetBSD.org. Any flags that should be added to
    BIN_INSTALL_FLAGS
    . See pkgsrc/mk/defaults/mk.conf for more details.

    d2569 2 a2570 2 has a non-standard setting for LOCALBASE, be sure to set that before d2576 5 a2580 5 default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

    d2587 2 a2588 2

    4.2.4. Selecting the d2600 2 a2601 2
    PKGSRC_COMPILER:
    d2611 1 a2611 1

    distcc: d2616 1 a2616 1

    ccache: d2621 2 a2622 2

    gcc: GNU C/C++ Compiler

    d2626 1 a2626 1

    mipspro: d2632 1 a2632 1

    mipspro: d2637 1 a2637 1

    sunpro: d2645 7 a2651 8 "quote">gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This d2656 2 a2657 2

    GCC_REQD:
    d2687 1 a2687 1
    5.1. d2690 1 a2690 1
    5.2. d2703 1 a2703 1
    5.3.2. d2706 1 a2706 1
    5.3.3. d2709 1 a2709 1
    5.3.4. d2712 1 a2712 1
    5.3.5. d2715 1 a2715 1
    5.3.6. d2719 1 a2719 1
    5.3.7. d2721 4 d2728 1 a2728 1
    5.4. d2734 1 a2734 1
    5.4.1. d2746 1 a2746 1 "id2517334" id="id2517334">5.1. Building a d2765 2 a2766 3 appropriate directory in pkgsrc, and run make package:

    d2768 4 a2771 4 # cd misc/figlet # make package d2776 4 a2779 4 was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a d2786 1 a2786 1 class="pkgname">misc/figlet example.

    d2799 1 a2799 1 "id2517821" id="id2517821">5.2. Settings d2856 3 a2858 3

    You may want to set things in /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for d2860 4 a2863 4 ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts 5.3.1.2. build.conf

    d2888 4 a2891 4

    In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the d2899 1 a2899 2 cvs update.

    d2906 3 a2908 3

    5.3.1.3. pre-build.local

    d2915 7 a2921 7 pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    d2923 3 a2925 3 # echo "I do not have enough disk space to build this pig." \ > pkgsrc/games/crafty-book-enormous/$BROKENF d2938 2 a2939 2

    5.3.2. Other environmental d2945 1 a2945 1

    As /usr/pkg will be d2948 3 a2950 4 drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via /etc/rc.local, so you can d2961 1 a2961 1 rc.local:

    d2979 2 a2980 2

    5.3.3. Operation

    d2999 2 a3000 2 /usr/local, etc. then become root and type:

    d3002 4 a3005 4 # cd /usr/pkgsrc # sh mk/bulk/build d3012 2 a3013 2 # sh mk/bulk/build restart d3018 2 a3019 2 specified by FTP in the build.conf file.

    d3026 2 a3027 2

    5.3.4. What it does

    d3060 5 a3064 5 directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    d3070 9 a3078 9 compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    d3085 2 a3086 2

    5.3.5. Disk space d3128 2 a3129 2

    5.3.6. Setting up a sandbox d3141 1 a3141 1 /usr/sandbox. This can be d3144 5 a3148 5

    There is a shell script called pkgsrc/mk/bulk/mksandbox which will set up the sandbox environment using null mounts. It will also create a script called sandbox in the root of the sandbox d3150 4 a3153 4 activated using the sandbox mount command and deactivated using the sandbox umount command.

    d3157 3 a3159 3 doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following d3167 2 a3168 2 # cp /netbsd /usr/sandbox d3173 1 a3173 1

    /dev/*

    d3175 2 a3176 2 # cd /usr/sandbox/dev ; sh MAKEDEV all d3181 1 a3181 1

    /etc/resolv.conf d3185 2 a3186 1 class="pkgname">security/smtpd and mail):

    d3188 2 a3189 2 # cp /etc/resolv.conf /usr/sandbox/etc d3197 2 a3198 2 # cp /etc/mail/sendmail.cf /usr/sandbox/etc/mail d3203 2 a3204 2

    /etc/localtime (for security/smtpd):

    d3209 2 a3210 2 # ln -sf /usr/share/zoneinfo/UTC /usr/sandbox/etc/localtime d3215 1 a3215 1

    /usr/src (system d3219 6 a3224 4 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3226 4 a3229 4 # ln -s ../disk1/cvs . # ln -s cvs/src-1.6 src d3234 2 a3235 3

    Create /var/db/pkg (not part of default install):

    d3237 2 a3238 2 # mkdir /usr/sandbox/var/db/pkg d3243 2 a3244 2

    Create /usr/pkg (not part of default install):

    d3246 2 a3247 2 # mkdir /usr/sandbox/usr/pkg d3252 2 a3253 2

    Checkout pkgsrc via cvs into /usr/sandbox/usr/pkgsrc:

    d3255 4 a3258 4 # cd /usr/sandbox/usr # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc d3267 5 a3271 5

    Make /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    d3275 2 a3276 3

    Edit /etc/mk.conf, see Adjust mk/bulk/build.conf to suit your d3288 5 a3292 5

    If you have set CVS_USER in build.conf, make sure that account exists and can do a cvs ${CVS_FLAGS} update d3301 4 a3304 4 # cd /usr/sandbox/usr/pkgsrc # sh mk/bulk/do-sandbox-build d3310 2 a3311 2 be in /usr/sandbox/usr/pkgsrc/packages d3319 2 a3320 2

    5.3.7. Building a partial d3327 6 a3332 6 packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting defining SPECIFIC_PKGS in /etc/mk.conf, the variables

    d3360 1 a3360 1 SPECIFIC_PKGS in a chroot d3366 114 d3487 1 a3487 1 "id2583853" id="id2583853">5.4. Creating a d3499 6 a3504 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3510 2 a3511 2

    5.4.1. Example of d3519 4 a3522 4 that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

    d3524 6 a3529 6 # mkdir /u2/images # pkg_add /usr/pkgsrc/packages/All/cdpack # cdpack /usr/pkgsrc/packages/All /u2/images d3533 2 a3534 2 (COPYRIGHT, README, etc.) on each CD in the d3538 14 a3551 14 # mkdir /tmp/common # echo "This is a README" > /tmp/common/README # echo "Another file" > /tmp/common/COPYING # mkdir /tmp/common/bin # echo "#!/bin/sh" > /tmp/common/bin/myscript # echo "echo Hello world" >> /tmp/common/bin/myscript # chmod 755 /tmp/common/bin/myscript d3556 2 a3557 2 # cdpack -x /tmp/common /usr/pkgsrc/packages/All /u2/images d3560 4 a3563 4

    Each image will contain README, COPYING, and bin/myscript in their root d3584 1 a3584 1

    6.1. Is d3588 1 a3588 1
    6.2. d3595 1 a3595 1
    6.4. How d3598 1 a3598 1
    6.5. How d3601 1 a3601 1
    6.6. How d3604 1 a3604 1
    6.7. How d3607 2 a3608 4
    6.8. How do I tell make fetch to do passive FTP?
    d3610 1 a3610 1
    6.9. How d3613 2 a3614 3
    6.10. What does “Don't know how to make /usr/share/tmac/tmac.andoc” d3617 2 a3618 3
    6.11. What does “Could not find bsd.own.mk” mean?
    d3620 1 a3620 1
    6.12. d3642 1 a3642 1 "id2584196" id="id2584196">6.1. Is there a d3648 2 a3649 2

    Yes, d3653 2 a3654 2 % echo subscribe tech-pkg | mail majordomo@@NetBSD.org d3667 1 a3667 1 "id2584226" id="id2584226">6.2. Where's d3674 2 a3675 2 find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    d3690 1 a3690 1

    The pkgsrc/pkgtools d3706 2 a3707 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3721 2 a3722 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3729 2 a3730 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3737 2 a3738 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3745 4 a3748 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3762 4 a3765 3 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3772 5 a3776 5 class="pkgname">pkgtools/dfdisk: adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    d3783 2 a3784 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3791 3 a3793 3 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your current CPU and compiler.

    d3807 4 a3810 3 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3817 3 a3819 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3826 2 a3827 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3834 5 a3838 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3845 2 a3846 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3860 3 a3862 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d3869 5 a3873 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d3880 2 a3881 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d3895 3 a3897 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d3904 2 a3905 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d3912 2 a3913 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d3924 1 a3924 1 "id2584478" id="id2584478">6.4. How to use d3934 1 a3934 1 target="_top">this message for more details.

    d3942 1 a3942 1 "id2584490" id="id2584490">6.5. How can I d3949 4 a3952 5 system's own X11 (/usr/X11R6, /usr/openwin, ...), you will have to add the following lines into mk.conf:

    d3964 1 a3964 1 "id2584586" id="id2584586">6.6. How can I d3971 4 a3974 5 system's own X11 (/usr/X11R6, /usr/openwin, ...) you will have to add the following lines into mk.conf:

    d3986 1 a3986 1 "id2584614" id="id2584614">6.7. How to d4011 3 a4013 3 "id2584628" id="id2584628">6.8. How do I tell make fetch to do passive FTP?

    d4019 3 a4021 3 distfiles. From bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

    d4028 1 a4028 1 /usr/bin/ftp, which d4032 2 a4033 2 /etc/mk.conf file: PASSIVE_FETCH=1.

    d4035 3 a4037 3

    Having that option present will prevent /usr/bin/ftp from falling back to active transfers.

    d4045 1 a4045 1 "id2584747" id="id2584747">6.9. How to d4053 2 a4054 3 a make fetch. There is an archive of distfiles on The answer here is to do a make fetch-list in /usr/pkgsrc or one of it's d4065 1 a4065 1 forget to set FETCH_CMD to d4070 6 a4075 6 % cd /usr/pkgsrc % make fetch-list FETCH_CMD=wget DISTDIR=/tmp/distfiles >/tmp/fetch.sh % scp /tmp/fetch.sh work:/tmp d4080 2 a4081 2 % sh /tmp/fetch.sh d4084 2 a4085 2

    then tar up /tmp/distfiles and take it home.

    d4091 2 a4092 3 make fetch-list approach, or fetch the distfiles directly by running:

    d4094 2 a4095 2 % make mirror-distfiles d4098 3 a4100 3

    If you even decide to ignore NO_{SRC,BIN}_ON_{FTP,CDROM}, then you can get everything by running:

    d4102 2 a4103 2 % make fetch NO_SKIP=yes d4112 1 a4112 1 "id2584887" id="id2584887">
    6.10. What does d4122 8 a4129 7 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4134 4 a4137 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d4145 1 a4145 1 "id2584925" id="id2584925">6.11. What does d4152 4 a4155 4

    You didn't install the compiler set, comp.tgz, when you installed your NetBSD machine. Please get it and install it, by extracting it in /:

    d4157 3 a4159 4 # cd / # tar --unlink -zxvpf .../comp.tgz d4162 4 a4165 4

    comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

    d4173 1 a4173 1 "id2584983" id="id2584983">6.12. Using d4187 3 a4189 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4210 4 a4213 4

    The global variable PKG_SYSCONFBASE (and some others) can be set by the system administrator in /etc/mk.conf to define the place where d4218 2 a4219 2 go to $PREFIX/share should go there.

    d4222 6 a4227 6 (bsd.pkg.mk contains more information). PKG_SYSCONFDIR is where the configuration files for a package may be found (that is, the full path, e.g. /etc or /usr/pkg/etc). This value may be d4233 2 a4234 2

    PKG_SYSCONFBASE is the main config directory under which all package d4236 4 a4239 4 typically want to set it to /etc, or accept the default location of $PREFIX/etc.

    d4243 3 a4245 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d4247 2 a4248 2 found. Defaults to ${SYSCONFBASE}.

    d4252 9 a4260 9

    PKG_SYSCONFVAR is the special suffix used to distinguish any overriding values for a particular package (see next item). It defaults to ${PKGBASE}, but for a collection of related packages that should all have the same PKG_SYSCONFDIR value, it can be set in each of the package Makefiles to a common value.

    d4264 6 a4269 6

    PKG_SYSCONFDIR.${PKG_SYSCONFVAR} overrides the value of ${PKG_SYSCONFDIR} for packages with the same value for PKG_SYSCONFVAR.

    d4272 5 a4276 6 want to set PKG_SYSCONFVAR to “kde” so admins can set PKG_SYSCONFDIR.kde in /etc/mk.conf to define where to d4290 2 a4291 3 share/examples/${PKGNAME} so PLIST can register them.

    d4294 5 a4298 6 place (under the share/examples directory) the variable CONF_FILES should be set to copy them into PKG_SYSCONFDIR. The contents of this variable is formed by pairs of filenames; the first d4300 2 a4301 2 examples directory (registered by PLIST) and the second element specifies d4304 5 a4308 5 INSTALL/DEINSTALL scripts which are created automatically. The package Makefile must also set USE_PKGINSTALL=YES to use these d4311 1 a4311 1 variable PKG_CONFIG prior to d4321 6 a4326 7 files inside EGDIR, which are registered by PLIST. After that, the variable CONF_FILES lists the installed file first and then the target file. Users will also get an automatic message when files are installed using this method.

    d4352 2 a4353 2 class="pkgname">security/audit-packages package. It has two components:

    d4368 2 a4369 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4441 1 a4441 2 "#components.Makefile">7.1. Makefile
    d4444 1 a4444 2 "#components.distinfo">7.2. distinfo d4449 1 a4449 1
    7.4. d4456 2 a4457 2
    7.6. work*
    d4459 2 a4460 2
    7.7. files/*
    d4469 1 a4469 1
    8.1. RCS d4472 2 a4473 3
    8.2. Semi-automatic PLIST generation
    d4476 1 a4476 2 Tweaking output of make print-PLIST d4481 1 a4481 1
    8.5. d4484 2 a4485 3
    8.6. Changing PLIST source with PLIST_SRC
    d4487 1 a4487 1
    8.7. d4502 1 a4502 1
    9.1. d4505 2 a4506 3
    9.2. Writing buildlink3.mk files
    d4511 1 a4511 1 "#id2587496">9.2.1. Anatomy of a buildlink3.mk d4515 2 a4516 4 "#id2588073">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d4521 2 a4522 3
    9.3. Writing builtin.mk files
    d4527 2 a4528 2 "#id2588233">9.3.1. Anatomy of a builtin.mk file d4531 1 a4531 1 "#id2588392">9.3.2. Global preferences for native d4543 1 a4543 1
    10.1. d4546 3 a4548 3
    10.2. Converting packages to use bsd.options.mk
    d4560 1 a4560 1
    11.2. d4574 1 a4574 1
    12.1. d4580 1 a4580 1 "#id2590560">12.1.1. How to pull in variables d4584 1 a4584 1 "#id2590643">12.1.2. Restricted d4592 1 a4592 1 "#id2591226">12.1.4. Handling conflicts with d4596 1 a4596 1 "#id2591276">12.1.5. Packages that cannot or d4600 1 a4600 1 "#id2591302">12.1.6. Packages which should not be d4608 1 a4608 1 "#id2591462">12.1.8. How to handle compiler d4612 1 a4612 1 "#id2591484">12.1.9. How to handle incrementing d4617 1 a4617 1 "#id2591533">12.1.10. Portability of d4622 1 a4622 1
    12.2. d4628 1 a4628 1 "#id2591629">12.2.1. Packages whose distfiles d4633 1 a4633 1 "#id2591692">12.2.2. How to handle modified d4638 1 a4638 1
    12.3. d4648 1 a4648 1 "#id2592180">12.3.2. Using libtool on GNU d4653 1 a4653 1 "#id2592264">12.3.3. GNU d4658 1 a4658 1
    12.4. d4664 1 a4664 1 "#id2592312">12.4.1. CPP defines
    d4668 1 a4668 1
    12.5. d4674 1 a4674 1 "#id2592345">12.5.1. Package configuration d4678 1 a4678 1 "#id2592516">12.5.2. User d4682 1 a4682 1 "#id2592561">12.5.3. Handling d4686 1 a4686 1 "#id2592644">12.5.4. Creating an account from a d4690 1 a4690 1 "#id2592774">12.5.5. Installing score d4694 1 a4694 1 "#id2592818">12.5.6. Packages providing login d4698 1 a4698 1 "#id2593012">12.5.7. Packages containing perl d4702 1 a4702 1 "#id2593030">12.5.8. Packages with hardcoded d4706 1 a4706 1 "#id2593051">12.5.9. Packages installing perl d4714 1 a4714 1 "#id2593408">12.5.11. Packages installing GConf2 d4718 1 a4718 1 "#id2593508">12.5.12. Packages installing d4722 1 a4722 1 "#id2593559">12.5.13. Packages installing X11 d4726 1 a4726 1 "#id2593606">12.5.14. Packages installing GTK2 d4730 1 a4730 1 "#id2593675">12.5.15. Packages installing SGML or d4734 1 a4734 1 "#id2593728">12.5.16. Packages installing d4738 1 a4738 1 "#id2593798">12.5.17. Packages using d4743 1 a4743 1
    12.6. d4756 1 a4756 1
    14.1. d4759 1 a4759 1
    14.2. d4763 1 a4763 1
    14.3. d4766 1 a4766 1
    14.4. d4789 1 a4789 2 "#components.Makefile">7.1. Makefile
    d4792 1 a4792 2 "#components.distinfo">7.2. distinfo d4797 1 a4797 1
    7.4. Other d4804 2 a4805 2
    7.6. work*
    d4807 2 a4808 2
    7.7. files/*
    d4822 2 a4823 2 "components.Makefile">7.1. Makefile

    d4829 2 a4830 2 package are all controlled by the package's Makefile.

    d4832 22 a4853 22

    There is a Makefile for each package. This file includes the standard bsd.pkg.mk file (referenced as ../../mk/bsd.pkg.mk), which sets all the definitions and actions necessary for the package to compile and install itself. The mandatory variables are the DISTNAME which specifies the base name of the distribution file to be downloaded from the site on the Internet, MASTER_SITES which specifies that site, CATEGORIES which denotes the categories into which the package falls, PKGNAME which is the name of the package, the MAINTAINER's name, and the COMMENT variable, which should contain a one-line description of the package (the package name should not appear, it will be added automatically). The maintainer variable is there so that anyone who quibbles with the (always completely correct) decisions taken by the guy who maintains the package can complain vigorously, or send chocolate as a sign of appreciation.

    d4855 2 a4856 2

    The MASTER_SITES may be set to one of the predefined sites:

    d4893 3 a4895 3

    MASTER_SITE_SUBDIR has been deprecated and should no longer be used.

    d4898 4 a4901 4

    If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES_foo to a list of URI's d4912 2 a4913 2

    Note that the normal default setting of DISTFILES must be made explicit if you d4918 2 a4919 2 CATEGORIES. If more than one is used, they need to be separated by spaces:

    d4936 4 a4939 4

    Add MANCOMPRESSED if manpages are installed in compressed form by the package; see comment in bsd.pkg.mk.

    d4943 1 a4943 1

    Replace /usr/local d4958 3 a4960 3

    Set MAINTAINER to be yourself. If you really can't maintain the package for future updates, set it to tech-pkg@@NetBSD.org>.

    d4967 3 a4969 3 exists, add the variable HOMEPAGE right after MAINTAINER. The value of this d4974 2 a4975 2

    Be sure to set the COMMENT variable to a short d4989 2 a4990 2 "components.distinfo">7.2. distinfo

    d5001 4 a5004 5 security hole. It is generated using the make makesum command. The digest algorithm used was, at one stage, md5, but that was felt lacking compared to sha1, and so sha1 is now the default d5009 10 a5018 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d5024 4 a5027 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d5030 2 a5031 3 patches found in the patches/ directory (see distinfo
    file. This is a message digest/checksum of all lines in the patch file except the NetBSD RCS Id. This file is generated by invoking make makepatchsum (or make mps if you're in a hurry).

    d5063 2 a5064 2 patch-aa is applied before patch-ab, etc.

    d5066 5 a5070 6

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do d5083 2 a5084 2 CVS tree. Use the pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    d5091 10 a5100 11 mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff.

    d5104 2 a5105 3 make makepatchsum command, see distinfo
    .

    d5110 2 a5111 2 other maintainers can be listed in $PATCHFILES.

    d5115 2 a5116 2 pkgsrc tree in the $LOCALPATCHES directory. The directory d5120 6 a5125 7 stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch d5135 1 a5135 1 "id2586097" id="id2586097">7.4. Other d5143 2 a5144 2
    DESCR
    d5155 2 a5156 2
    PLIST
    d5186 2 a5187 2
    INSTALL
    d5198 2 a5199 2 commands in PLIST. See DEINSTALL d5230 2 a5231 2
    MESSAGE
    d5239 3 a5241 3 easily by using MESSAGE_SUBST in the package's Makefile:

    d5247 2 a5248 2 "quote">somevalue” in MESSAGE.

    d5259 2 a5260 3 "id2586222" id= "id2586222">
    7.6. work*

    d5265 5 a5269 6

    When you type make the distribution files are unpacked into this directory. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp d5275 1 a5275 1 WRKSRC accordingly, e.g. d5278 2 a5279 2 class="pkgname">editors/sam again, but the quick answer is:

    d5284 2 a5285 2

    Please note that the old NO_WRKSUBDIR has been deprecated and d5287 5 a5291 6 a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is another one:

    d5303 4 a5306 4 work by default. If the same pkgsrc tree should be used on several different platforms, the variable OBJMACHINE can be set in /etc/mk.conf to d5308 2 a5309 2 work.i386 or work.sparc.

    d5317 2 a5318 3 "id2586310" id= "id2586310">7.7. files/*

    d5329 3 a5331 3 diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d5349 1 a5349 1
    8.1. RCS d5352 2 a5353 3
    8.2. Semi-automatic PLIST generation
    d5356 1 a5356 2 Tweaking output of make print-PLIST d5361 1 a5361 1
    8.5. d5364 2 a5365 3
    8.6. Changing PLIST source with PLIST_SRC
    d5367 1 a5367 1
    8.7. d5375 1 a5375 1

    The PLIST file contains a d5378 3 a5380 3 package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the PLIST file (or files, see below!).

    d5393 1 a5393 1 "id2586364" id="id2586364">8.1. RCS d5400 1 a5400 1 PLIST file you write:

    d5411 3 a5413 3 "id2586379" id= "id2586379">8.2. Semi-automatic PLIST generation

    d5418 4 a5421 4

    You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See make print-PLIST

    d5444 14 a5457 14 you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with d5460 2 a5461 2

    For example, to get all files inside the libdata/foo directory removed from the d5468 1 a5468 1

    And to get all the @@dirrm d5470 1 a5470 1 converted to @@comments:

    d5494 3 a5496 3
    ${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}
    d5504 8 a5511 8 “${MACHINE_ARCH}” will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf created configure scripts.

    d5518 4 a5521 4 "quote">$ARCH” that was replaced by the output of uname -m, but that's no d5526 4 a5529 4
    ${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}
    d5534 2 a5535 2 variables in the PLIST:

    d5540 4 a5543 4

    ${OPSYS} - output of “uname -s

    d5547 3 a5549 4

    ${LOWER_OPSYS} - lowercase common name (eg. “solaris”)

    d5553 4 a5556 4

    ${OS_VERSION} - “uname -r

    d5562 2 a5563 2
    ${PKGLOCALEDIR}
    d5573 2 a5574 2 in share or lib by default.

    d5580 2 a5581 2 default, please look in bsd.pkg.mk (and search for MESSAGE_SUBST
    (see 8.5. Manpage-compression

    d5612 11 a5622 11 MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix “.gz” is appended/removed automatically for manpages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    d5630 3 a5632 3 "id2586810" id="id2586810">8.6. Changing PLIST source with PLIST_SRC

    d5637 4 a5640 4

    To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). d5650 1 a5650 1 "id2586827" id="id2586827">8.7. Platform d5664 1 a5664 1

    PLIST.common

    d5668 1 a5668 1

    PLIST.${OPSYS}

    d5672 1 a5672 2

    PLIST.common_end

    d5677 6 a5682 6

    If PLIST.${OPSYS} exists, these files are used instead of PLIST. This allows packages which behave in this way to be handled gracefully. Manually overriding PLIST_SRC for other more exotic uses is also possible.

    d5727 3 a5729 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d5743 2 a5744 2 % cd .../pkgsrc % ls -d */*-dirs d5749 2 a5750 2 USE_DIRS variable takes a list of package names (without the “share/applications
    , it should have the following line in it:

    d5763 3 a5765 4

    After regenerating the PLIST using make print-PLIST, you should get the right (commented out) lines.

    d5767 2 a5768 2

    Note that, even if your package is using $X11BASE, it must not depend on the d5770 2 a5771 2 part and pkgsrc (in particular, mk/dirs.mk) will take care of it.

    d5790 1 a5790 1
    9.1. d5793 2 a5794 3
    9.2. Writing buildlink3.mk files
    d5798 1 a5798 1
    9.2.1. d5801 2 a5802 5
    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d5807 2 a5808 3
    9.3. Writing builtin.mk files
    d5812 2 a5813 3
    9.3.1. Anatomy of a builtin.mk file
    d5815 1 a5815 1
    9.3.2. d5832 3 a5834 3 into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    d5839 8 a5846 9 the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    d5854 3 a5856 3 normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- d5865 1 a5865 1 "id2587099" id="id2587099">
    9.1. Converting d5879 2 a5880 3

    Set USE_BUILDLINK3 to “yes”.

    d5887 2 a5888 2 sure is the check ${WRKDIR}/.work.log to see if the d5893 5 a5897 5

    Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files d5899 2 a5900 2 pkgname”.

    d5905 2 a5906 2 "emphasis">only
    the buildlink3.mk files that you list d5924 3 a5926 3

    There are several buildlink3.mk files in pkgsrc/mk that handle special package d5932 1 a5932 1

    bdb.buildlink3.mk d5934 3 a5936 3 implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    d5940 5 a5944 5

    curses.buildlink3.mk If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    d5950 3 a5952 3

    krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between d5959 3 a5961 4

    motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif;

    d5971 4 a5974 4

    ossaudio.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API;

    d5978 4 a5981 4

    pgsql.buildlink3.mk will accept either Postgres 7.3 or 7.4, whichever is found installed. See the file for more information.

    d5985 4 a5988 5

    pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed;

    d5995 3 a5997 4

    xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    d6002 2 a6003 2

    The comments in those buildlink3.mk files provide a more d6012 2 a6013 3 "id2587290" id="id2587290">9.2. Writing buildlink3.mk files

    d6018 9 a6026 10

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    d6028 2 a6029 2

    To generate an initial buildlink3.mk file for further editing, d6033 4 a6036 4 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d6038 6 a6043 6 % cd pkgsrc/category/pkgdir % createbuildlink -3 >buildlink3.mk d6050 2 a6051 2

    9.2.1. Anatomy of a buildlink3.mk d6057 3 a6059 3

    The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d6084 5 a6088 6

    The header and footer manipulate BUILDLINK_DEPTH, which is common across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    d6091 2 a6092 2 pkg is added. BUILDLINK_DEPENDS is the d6097 9 a6105 9 buildlink3.mk file for pkg has been included at some point. BUILDLINK_PACKAGES is the global list of packages for which buildlink3.mk files have been included. It must always be appended to within a buildlink3.mk file.

    d6108 2 a6109 2 inclusion and controls how the dependency on pkg is added. Several d6115 11 a6125 12

    BUILDLINK_DEPENDS.pkg is the actual dependency recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the first version of the package that had the last change in the major number of a shared library or that had a major API change.

    d6129 5 a6133 5

    BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc d6138 10 a6147 11

    BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to d6153 9 a6161 10

    BUILDLINK_INCDIRS.pkg and BUILDLINK_LIBDIRS. pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These d6169 11 a6179 12

    BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The “-I” option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

    d6187 2 a6188 2 symlinked into ${BUILDLINK_DIR} and how their names d6194 8 a6201 10

    BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

    d6205 7 a6211 7

    BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The d6213 7 a6219 7 ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    d6223 16 a6238 18

    BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default for overwrite packages, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib d6243 4 a6246 4

    BUILDLINK_TRANSFORM.pkg (not shown above) is a list of sed arguments used to d6248 1 a6248 1 destination filename, e.g. .

    d6255 9 a6263 11

    The last section includes any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included.

    d6270 5 a6274 6

    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk files

    d6280 4 a6283 4 dependency listed in BUILDLINK_DEPENDS.pkg after a package update:

    d6300 14 a6313 15

    In these cases, BUILDLINK_DEPENDS.pkg should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_DEPENDS. pkg adjusted, too. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

    d6316 8 a6323 8 BUILDLINK_DEPENDS.pkg as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies. See Section 12.1.3, “Handling dependencies” and BUILDLINK_RECOMMENDED
    and RECOMMENDED definitions.

    d6337 2 a6338 2 "id2588152" id="id2588152">
    9.3. Writing builtin.mk files

    d6345 6 a6350 6 base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

    d6353 1 a6353 1 pkg are:

    d6358 6 a6363 6

    It should set USE_BUILTIN.pkg to either “yes” or “no” after it is included.

    d6369 4 a6372 4 USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    d6379 2 a6380 2 careful attention to Makefile coding.

    d6389 3 a6391 4

    9.3.1. Anatomy of a builtin.mk file

    d6440 19 a6458 21

    The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be “yes” if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

    The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is d6460 2 a6461 2 variable is only used internally within the builtin.mk file.

    d6463 18 a6480 18

    The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_DEPENDS.pkg. USE_BUILTIN.pkg builtin.mk file. Note that USE_BUILTIN.pkg may be d6487 2 a6488 2 IS_BUILTIN.pkg is d6494 7 a6500 7

    The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding d6502 4 a6505 4 additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

    d6512 2 a6513 2

    9.3.2. Global preferences d6523 3 a6525 3 setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either “PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

    d6548 4 a6551 4 "emphasis">must have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    d6571 1 a6571 1
    10.1. d6574 3 a6576 3
    10.2. Converting packages to use bsd.options.mk
    d6581 2 a6582 2 different sets of features. bsd.options.mk is a framework in pkgsrc d6594 1 a6594 1 "id2588533" id="id2588533">10.1. Global d6600 2 a6601 2

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of d6604 1 a6604 1 /etc/mk.conf.

    d6612 3 a6614 4 "id2588548" id= "id2588548">10.2. Converting packages to use bsd.options.mk

    d6619 5 a6623 6

    The following example shows how bsd.options.mk should be use in a package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    d6665 1 a6665 1 bsd.options.mk. It converts d6667 4 a6670 4 PKG_OPTIONS.pkg value. These sections will be removed over time as the old options are in turn deprecated and removed.

    d6679 2 a6680 2

    PKG_OPTIONS_VAR is a list of the name of the PKG_OPTIONS.pkg” but any package-specific value may be used. This d6693 4 a6696 4

    PKG_SUPPORTED_OPTIONS is a list of build options supported by the package. This variable should be set in a package Makefile.

    d6700 6 a6705 6

    ${PKG_OPTIONS_VAR} (the variables named in PKG_OPTIONS_VAR) are variables that list the selected build options and override any default options given in PKG_DEFAULT_OPTIONS. If any of the d6725 2 a6726 2

    This variable should be set in /etc/mk.conf.

    d6737 4 a6740 4

    PKG_OPTIONS contains the list of the selected build options, properly filtered to remove unsupported and duplicate options.

    d6747 6 a6752 6 every option listed in PKG_SUPPORTED_OPTIONS, and there should be clear documentation on what turning on the option will do in the comments preceding each section. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS.

    d6774 1 a6774 1
    11.2. Main d6792 2 a6793 2 in a central Makefile, pkgsrc/mk/bsd.pkg.mk.

    d6811 6 a6816 6

    The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the d6818 3 a6820 3 The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own d6843 2 a6844 2

    LOCALBASE is where all non-X11 pkgs are installed. If you need to d6852 2 a6853 2

    X11BASE is where the actual X11 distribution (from xsrc, etc.) is d6863 3 a6865 3 installed in either X11BASE or LOCALBASE.

    d6868 5 a6872 5 LOCALBASE whenever possible. Note that you will need to set USE_X11 in them to request the presence of X11 and to get the right compilation flags.

    d6875 2 a6876 2 be installed under LOCALBASE: those that come with d6878 4 a6881 4 they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your d6884 13 a6896 14

    Some notes: USE_X11 and USE_X11BASE are mutually exclusive. If you need to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to use both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge is enabled by default.

    d6903 1 a6903 1

    X11PREFIX should be d6905 4 a6908 4 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is d6914 6 a6919 7 have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME will be set to the prefix of the installed package <package>, or d6930 2 a6931 2

    The following lines are taken from pkgsrc/wm/scwm/Makefile:

    d6933 1 a6933 1 EVAL_PREFIX+= GTKDIR=gtk+ d6940 2 a6941 2 packages evaluated using EVAL_PREFIX, by using a definition d6947 1 a6947 1

    where GTKDIR d6949 1 a6949 1 EVAL_PREFIX pair.

    d6953 1 a6953 1

    Within ${PREFIX}, d6956 2 a6957 3 ${PREFIX}/man, not ${PREFIX}/share/man.

    d6968 1 a6968 1 "id2589156" id="id2589156">11.2. Main d6975 1 a6975 1 in bsd.pkg.mk are:

    d6983 7 a6989 7 variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

    d6995 12 a7006 12 possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES_file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    d7029 2 a7030 2 format, most commonly .tar.gz.

    d7034 2 a7035 2 be put into EXTRACT_ONLY.

    d7037 27 a7063 28

    If the distfiles are not in .tar.gz format, they can be extracted by setting either EXTRACT_SUFX, or EXTRACT_CMD, EXTRACT_BEFORE_ARGS and EXTRACT_AFTER_ARGS. In the former case, pkgsrc knows how to extract a number of suffixes (.tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and .gz; see the definition of the various DECOMPRESS_CMD variables bsd.pkg.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

    d7076 12 a7087 14 PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See HAS_CONFIGURE
    . If the d7115 7 a7121 8 GNU_CONFIGURE should be specified instead. In either case, any arguments to the configure script can be specified in the CONFIGURE_ARGS variable, and the configure script's name can be set in CONFIGURE_SCRIPT if it differs from the default “sysutils/top package:

    d7135 6 a7140 6 by setting USE_IMAKE to “YES”. (If you only want the package installed in $X11PREFIX but xmkmf not being run, set USE_X11BASE instead!)

    d7147 8 a7154 8 will be built by invoking $MAKE_PROGRAM on $MAKEFILE with $BUILD_TARGET as the target to build. The default MAKE_PROGRAM is “gmake” if USE_GNU_TOOLS contains d7157 2 a7158 2 otherwise. MAKEFILE is set to “BUILD_TARGET
    defaults to “all”. Any of these variables can be set in the package's d7172 9 a7180 10 files. As in the build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “install” (plus “install.man”, if USE_IMAKE is set).

    d7188 2 a7189 3 e.g. make build will also perform the equivalent of:

    d7244 3 a7246 3

    If you did a make install and you noticed some file was not installed properly, you can repeat the d7262 2 a7263 2

    PKG_VERBOSE
    d7273 2 a7274 2
    DEINSTALLDEPENDS
    d7281 3 a7283 3 make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, d7305 5 a7309 6 performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    d7313 7 a7319 8 package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise you lose the d7324 7 a7330 8

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    d7333 4 a7336 4 the command line or in /etc/mk.conf to alter the behaviour of make update:

    d7340 2 a7341 2
    UPDATE_TARGET
    d7346 2 a7347 2 Defaults to DEPENDS_TARGET if set, d7350 4 a7353 4 make update. e.g. make update UPDATE_TARGET=package

    d7356 2 a7357 2
    NOCLEAN
    d7369 3 a7371 4 make or make update.

    d7374 2 a7375 2
    REINSTALL
    d7379 2 a7380 2 (making DEPENDS_TARGET). This may be d7384 2 a7385 2 running make update.

    d7388 2 a7389 2
    DEPENDS_TARGET
    d7397 8 a7404 8 prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    d7414 13 a7426 14 would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    d7429 3 a7431 3 you can either perform a make clean at the top of the tree, or use the following sequence of commands d7435 3 a7437 4 make update for the first time, otherwise you lose all the packages you wanted to update!):

    d7439 6 a7444 6 # make clean-update # make clean CLEANDEPENDS=YES # make update d7448 4 a7451 4 the command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    d7455 2 a7456 2
    CLEAR_DIRLIST
    d7459 11 a7469 12

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see d7490 2 a7491 2

    This target generates a README.html file, which can be d7495 21 a7515 21 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7521 2 a7522 2

    Use this target to create a file README-all.html which contains a d7526 2 a7527 2 This file is compiled from the pkgsrc/*/README.html files, so be d7529 2 a7530 3 "emphasis">after a make readme.

    d7540 5 a7544 5 This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

    d7551 4 a7554 4 are needed to build the package. (DISTFILES and PATCHFILES, but not patches/*)

    d7590 2 a7591 2 the current package's DEPENDS. Useful if out of date d7601 3 a7603 3 default if PKG_DEVELOPER is set in /etc/mk.conf.

    d7612 4 a7615 4 PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is d7618 4 a7621 4 into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

    d7626 1 a7626 1 PLIST, as the d7633 3 a7635 4 “Tweaking output of make print-PLIST” for more information on this target.

    d7644 2 a7645 2 (and it's depends, if PKG_DEPENDS is set properly. See d7667 3 a7669 3 not, make bulk-package will be executed, but the installed binary not be removed.

    d7682 3 a7684 3

    None of the package's files (Makefile, ...) were modified since it was built.

    d7719 1 a7719 1
    12.1. d7725 1 a7725 1 "#id2590560">12.1.1. How to pull in variables from d7729 1 a7729 1 "#id2590643">12.1.2. Restricted d7737 1 a7737 1 "#id2591226">12.1.4. Handling conflicts with other d7741 1 a7741 1 "#id2591276">12.1.5. Packages that cannot or should d7745 1 a7745 1 "#id2591302">12.1.6. Packages which should not be d7753 1 a7753 1 "#id2591462">12.1.8. How to handle compiler d7757 1 a7757 1 "#id2591484">12.1.9. How to handle incrementing d7762 1 a7762 1 "#id2591533">12.1.10. Portability of d7767 1 a7767 1
    12.2. d7773 1 a7773 1 "#id2591629">12.2.1. Packages whose distfiles d7778 1 a7778 1 "#id2591692">12.2.2. How to handle modified d7783 1 a7783 1
    12.3. d7793 1 a7793 1 "#id2592180">12.3.2. Using libtool on GNU packages d7797 1 a7797 1 "#id2592264">12.3.3. GNU d7802 1 a7802 1
    12.4. d7808 1 a7808 1 "#id2592312">12.4.1. CPP defines
    d7812 1 a7812 1
    12.5. d7818 1 a7818 1 "#id2592345">12.5.1. Package configuration d7822 1 a7822 1 "#id2592516">12.5.2. User d7826 1 a7826 1 "#id2592561">12.5.3. Handling d7830 1 a7830 1 "#id2592644">12.5.4. Creating an account from a d7834 1 a7834 1 "#id2592774">12.5.5. Installing score d7838 1 a7838 1 "#id2592818">12.5.6. Packages providing login d7842 1 a7842 1 "#id2593012">12.5.7. Packages containing perl d7846 1 a7846 1 "#id2593030">12.5.8. Packages with hardcoded paths d7850 1 a7850 1 "#id2593051">12.5.9. Packages installing perl d7858 1 a7858 1 "#id2593408">12.5.11. Packages installing GConf2 d7862 1 a7862 1 "#id2593508">12.5.12. Packages installing d7866 1 a7866 1 "#id2593559">12.5.13. Packages installing X11 d7870 1 a7870 1 "#id2593606">12.5.14. Packages installing GTK2 d7874 1 a7874 1 "#id2593675">12.5.15. Packages installing SGML or d7878 1 a7878 1 "#id2593728">12.5.16. Packages installing d7882 1 a7882 1 "#id2593798">12.5.17. Packages using d7887 1 a7887 1
    12.6. d7897 1 a7897 1 "id2590556" id="id2590556">12.1. General d7907 2 a7908 2

    12.1.1. How to pull in d7915 2 a7916 3 be overridden via MAKECONF or /etc/mk.conf is that /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be included before d7929 6 a7934 7 including /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

    d7943 3 a7945 3

    If you wish to set the CFLAGS variable in /etc/mk.conf please make sure to d7951 5 a7955 5

    Using CFLAGS= (i.e. without the “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    d7966 2 a7967 2

    12.1.2. Restricted d7981 1 a7981 1

    RESTRICTED

    d7990 1 a7990 2

    NO_BIN_ON_CDROM

    d7993 2 a7994 2 variable to ${RESTRICTED} whenever a binary d7999 1 a7999 1

    NO_BIN_ON_FTP

    d8002 2 a8003 2 Set this variable to ${RESTRICTED} whenever a binary d8009 1 a8009 2

    NO_SRC_ON_CDROM

    d8012 2 a8013 2 this variable to ${RESTRICTED} if re-distribution d8019 1 a8019 1

    NO_SRC_ON_FTP

    d8022 2 a8023 2 variable to ${RESTRICTED} if re-distribution d8030 4 a8033 4

    Please note that the use of NO_PACKAGE, IGNORE, NO_CDROM, or other generic make d8052 5 a8056 5 dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, as well as dependencies via buildlink3.mk, which is the preferred d8064 1 a8064 1 follows: The DEPENDS d8067 2 a8068 2 is later installed, whilst the BUILD_DEPENDS definition does not, d8074 1 a8074 1 BUILD_DEPENDS.

    d8076 3 a8078 3

    The format for a BUILD_DEPENDS and a DEPENDS definition is:

    d8096 3 a8098 3 that package has a buildlink3.mk file available, use it:

    d8107 4 a8110 4 to build itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

    d8118 5 a8122 5 link and again there is no buildlink3.mk file available, this is specified using the DEPENDS definition. An example of this is the print/lyx package, which uses the xpm library, version 3.4j to build:

    d8152 1 a8152 1 DEPENDS.

    d8174 1 a8174 1 RECOMMENDED:

    d8179 2 a8180 2

    In addition to the above DEPENDS line, this denotes that d8183 4 a8186 5 recommended. RECOMMENDED entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed). Packages that are built with d8195 1 a8195 1 RECOMMENDED, see d8206 3 a8208 3 buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8230 3 a8232 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8248 6 a8253 6

    Please also note the BUILD_USES_MSGFMT and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8269 2 a8270 2

    12.1.4. Handling conflicts d8281 2 a8282 2

    In this case you can set CONFLICTS to a space separated list of d8289 6 a8294 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8299 2 a8300 2

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

    d8317 2 a8318 2

    12.1.5. Packages that cannot d8327 10 a8336 11 exceptions should be noted with NOT_FOR_PLATFORM. If the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. If the package should be skipped (for example, because it provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive d8339 1 a8339 1

    IGNORE is deprecated d8348 2 a8349 2

    12.1.6. Packages which d8356 3 a8358 3 has been installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any d8381 2 a8382 2 in localsrc/security/advisories/pkg-vulnerabilities, d8384 13 a8396 14 to both /pub/NetBSD/packages/distfiles/pkg-vulnerabilities and /pub/NetBSD/packages/distfiles/vulnerabilities on ftp.NetBSD.org using localsrc/security/advisories/Makefile. In addition, if a buildlink3.mk file exists for an affected package, bumping PKGREVISION and creating a corresponding BUILDLINK_RECOMMENDED.pkg entry should be considered. See buildlink3.mk files and BUILDLINK_* definitions.

    d8411 2 a8412 2

    12.1.8. How to handle d8425 1 a8425 1 MACHINE_ARCH and compiler d8427 3 a8429 3 file/MACHINE_ARCH/compiler combination, and documenting it in pkgsrc/doc/HACKS. See that file for a d8437 2 a8438 2

    12.1.9. How to handle d8446 2 a8447 2 useful to change the version number in PKGNAME. To avoid conflicting with d8452 4 a8455 4 PKGREVISION=1 (2, ...). The “nb” is treated like a “.” by the pkg tools. e.g.

    d8461 2 a8462 2

    will result in a PKGNAME of “PKGREVISION should be removed. e.g. on a new minor release of the above package, things should be like:

    d8478 2 a8479 2

    12.1.10. Portability of d8495 2 a8496 2

    12.1.10.1. ${INSTALL}, d8502 2 a8503 2

    The BSD-compatible install supplied with some d8521 1 a8521 1 "id2591626" id="id2591626">12.2. Possible d8531 2 a8532 2

    12.2.1. Packages whose d8540 7 a8546 8 set DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

    d8554 6 a8559 6 can set _FETCH_MESSAGE to a macro which displays a message explaining the situation. _FETCH_MESSAGE must be executable shell commands, not just a message. (Generally, it executes ${ECHO}). As of this writing, the d8563 25 a8587 23 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8594 2 a8595 2

    12.2.2. How to handle d8610 2 a8611 2 ftp.NetBSD.org's /pub/NetBSD/packages/distfiles d8624 2 a8625 2 "id2591704" id= "id2591704">12.3. Configuration d8652 5 a8656 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d8664 2 a8665 3

    Add USE_LIBTOOL=yes to the package Makefile.

    d8674 5 a8678 5 CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

    d8693 9 a8701 9 .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include “In the PLIST, include all of the .a, .la, and .so, .so.major and .so.major.minor files.

    d8758 2 a8759 2

    When linking shared object (.so) files, i.e. files that are d8765 2 a8766 3

    The PLIST file gets the foo.so entry.

    d8789 1 a8789 1 .la file. e.g.

    d8796 3 a8798 3 ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la d8816 2 a8817 2 library name to .la. e.g.

    d8822 2 a8823 2

    This will install the static .a, shared library, any needed d8831 7 a8837 9

    In your PLIST, include all of the .a, .la, and .so, .so.CURRENT and .so.CURRENT.REVISION files (this is a change from the previous behaviour).

    d8847 2 a8848 2

    12.3.2. Using libtool on GNU d8854 3 a8856 3

    Add USE_LIBTOOL=yes to the package Makefile. This will override the package's own libtool in most cases. For older libtool using d8859 2 a8860 11 location by doing make configure; find work*/ -name libtool.

    LIBTOOL_OVERRIDE specifies which libtool scripts, relative to WRKSRC, to override. By default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the package's libtool script(s), set it as appropriate.

    d8862 9 a8870 1

    If you do not need *.a d8872 1 a8872 1 SHLIBTOOL_OVERRIDE d8878 2 a8879 2 the libtool buildlink3.mk (and set USE_BUILDLINK3=YES).

    d8897 2 a8898 3 i.e. libfoo.la, not foo.la

    d8913 2 a8914 2 LTDL_SET_PRELOADED_SYMBOLS d8925 2 a8926 2

    12.3.3. GNU d8936 5 a8940 5 fragments are provided in pkgsrc/mk/autoconf.mk and pkgsrc/mk/automake.mk to help dealing with these tools. See comments in these files for details.

    d8973 2 a8974 2 provided for you in mk/automake.mk.

    d8981 2 a8982 2 problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package d8992 1 a8992 1 "id2592309" id="id2592309">12.4. Building d9002 2 a9003 2

    12.4.1. CPP defines

    d9015 2 a9016 2 defined in <sys/param.h> on said d9042 1 a9042 1 "id2592342" id="id2592342">12.5. Package d9052 2 a9053 2

    12.5.1. Package d9060 2 a9061 2 configuration files in ${PKG_SYSCONFDIR}, which is passed d9063 1 a9063 1 PKG_SYSCONFDIR may be d9070 7 a9076 7

    PKG_SYSCONFBASE is the main config directory under which all package configuration files are to be found. This defaults to ${PREFIX}/etc, but may be overridden in /etc/mk.conf.

    d9080 3 a9082 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d9085 4 a9088 4 all be found under the httpd/ subdirectory of ${PKG_SYSCONFBASE}. This should be set in the package Makefile.

    d9092 9 a9100 10

    By default, PKG_SYSCONFDIR is set to ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}, but this may be overridden by setting PKG_SYSCONFDIR.${PKG_SYSCONFVAR} for a particular package, where PKG_SYSCONFVAR defaults to ${PKGBASE}. This is not meant to be set by a package Makefile, but is d9102 2 a9103 2 PKG_SYSCONFDIR setting for a particular package with a special d9110 6 a9115 8 PKG_SYSCONFBASE and PKG_SYSCONFDIR.${PKG_SYSCONFVAR}. Users will typically want to set PKG_SYSCONFBASE to /etc, or to accept the default location of ${PREFIX}/etc.

    d9122 2 a9123 2

    12.5.2. User d9153 1 a9153 1

    The INTERACTIVE_STAGE d9156 2 a9157 2 should be set in the package's Makefile. e.g.

    d9172 2 a9173 2

    12.5.3. Handling d9193 4 a9196 4 works by setting the LICENSE variable to a string identifying the license, e.g. in graphics/graphviz:

    d9207 1 a9207 2 % make d9215 5 a9219 5

    The license can be viewed with make show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

    d9225 7 a9231 7 license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/defaults/mk.conf.

    d9238 2 a9239 2 done by setting _ACCEPTABLE=yes.

    d9246 2 a9247 2

    12.5.4. Creating an account d9255 2 a9256 2 pre-install time. The first is PKG_GROUPS, which is a list of d9258 2 a9259 2 optional. The second is PKG_USERS, which is a list of elements d9281 3 a9283 4 /nonexistent, and login shell /sbin/nologin unless they are specified as part of the user element.

    d9285 9 a9293 9

    The package Makefile must also set USE_PKGINSTALL=YES. This will cause the users and groups to be created at pre-install time, and the admin will be prompted to remove them at post-deinstall time. Automatic creation of the users and groups can be toggled on and off by setting the PKG_CREATE_USERGROUP variable prior to package installation.

    d9300 2 a9301 2

    12.5.5. Installing score d9314 6 a9319 7 mk/defaults/mk.conf, control this behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

    d9322 2 a9323 2 is disabled; setting SETGIDGAME=YES will set all the other d9327 4 a9330 4 ownership or access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    d9337 2 a9338 2

    12.5.6. Packages providing d9345 8 a9352 9 shell, the variable PKG_SHELL should contain the full pathname of the shell executable installed by this package. The package Makefile must also set USE_PKGINSTALL=YES to use the automatically generated INSTALL/DEINSTALL scripts.

    d9360 6 a9365 6

    The shell is registered into /etc/shells file automatically in the post-install target by the generated INSTALL script and removed in the deinstall target by the DEINSTALL script.

    d9372 2 a9373 2

    12.5.7. Packages containing d9380 5 a9384 5 set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted.

    d9391 2 a9392 2

    12.5.8. Packages with d9402 3 a9404 3 in your Makefile (we shall use tclsh in this example):

    d9418 2 a9419 2

    12.5.9. Packages installing d9426 7 a9432 7 include the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

    d9437 6 a9442 6 the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of paths to packlist files, e.g.:

    d9447 4 a9450 4

    The variables PERL5_SITELIB, PERL5_SITEARCH, and PERL5_ARCHLIB represent the three d9454 1 a9454 1 for in the PLIST.

    d9477 2 a9478 2 ${PREFIX}/${INFO_DIR},

    d9483 2 a9484 2 ${PREFIX}/${INFO_DIR}/dir,

    d9489 2 a9490 2 INFO_FILES variable in the package Makefile.

    d9495 1 a9495 1

    INFO_DIR defaults to d9497 4 a9500 4 be overridden in the package Makefile. INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info d9509 2 a9510 2 must define the variable USE_MAKEINFO in its Makefile. If a d9513 3 a9515 3 should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a d9517 5 a9521 5 not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

    d9528 5 a9532 6 install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

    d9535 4 a9538 5 creates overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

    d9540 9 a9548 10

    The script overriding install-info has no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of USE_MAKEINFO and TEXINFO_REQD either run the appropriate makeinfo command or exit on error.

    d9555 2 a9556 2

    12.5.11. Packages installing d9562 3 a9564 3

    If a package installs .schemas or .entries files, used by GConf2, you d9571 4 a9574 4

    Include ../../devel/GConf2/schemas.mk instead of its buildlink3.mk file. This takes d9585 5 a9589 5 .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to d9604 6 a9609 7

    Define the GCONF2_SCHEMAS variable in your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    d9613 6 a9618 7

    Define the GCONF2_ENTRIES variable in your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    d9628 2 a9629 2

    12.5.12. Packages installing d9635 4 a9638 4

    If a package installs .omf files, used by scrollkeeper, you need to take some extra steps to make sure they get registered in the database:

    d9643 4 a9646 4

    Include ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This takes d9655 2 a9656 2 the libdata/scrollkeeper directory, d9661 3 a9663 3

    Remove the share/omf directory from the PLIST. It will be handled by scrollkeeper.

    d9673 2 a9674 2

    12.5.13. Packages installing d9683 3 a9685 4 This can be automatically done by using mk/fonts.mk, which you need to include in your Makefile.

    d9688 5 a9692 6 directories where fonts are installed in the FONTS_type_DIRS variables, where type can be one of “TTF”, d9695 2 a9696 2 sure that the database file fonts.dir is not listed in the d9709 2 a9710 2

    12.5.14. Packages installing d9723 5 a9727 6

    Include ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

    d9731 3 a9733 3

    Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

    d9737 2 a9738 3

    Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

    d9748 2 a9749 2

    libdata/gtk-2.0/gdk-pixbuf.loaders

    d9753 2 a9754 2

    libdata/gtk-2.0/gtk.immodules

    d9762 1 a9762 1 the libdata/gtk-2.0 d9774 2 a9775 2

    12.5.15. Packages installing d9789 4 a9792 4

    Include ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in d9798 3 a9800 3

    Set SGML_CATALOGS to the full path of any SGML catalogs installed by the package.

    d9804 2 a9805 2

    Set XML_CATALOGS to the full path of any XML catalogs installed by d9810 2 a9811 2

    Set SGML_ENTRIES to individual entries to be added to the SGML d9820 2 a9821 2

    Set XML_ENTRIES to individual entries to be added to the XML d9836 2 a9837 2

    12.5.16. Packages installing d9844 5 a9848 6 database by installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

    d9853 9 a9861 10

    Include ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the d9867 1 a9867 1 the share/mime d9870 2 a9871 2 under share/mime/packages. The former d9880 3 a9882 3

    Remove any share/mime/* directories from the PLIST. They will be handled by the d9893 2 a9894 2

    12.5.17. Packages using d9901 2 a9902 2 the ../../textproc/intltool/buildlink3.mk d9919 1 a9919 1 "id2593812" id="id2593812">12.6. Feedback d9957 3 a9959 3

    Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

    d9966 4 a9969 4 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d9971 10 a9980 10 % mkdir /usr/pkgsrc/category/examplepkg % cd /usr/pkgsrc/category/examplepkg % url2pkg http://www.example.com/path/to/distfile.tar.gz d9985 1 a9985 1

    Edit the Makefile as d9990 1 a9990 1

    Fill in the DESCR d9995 2 a9996 2

    Run make configure

    d10001 2 a10002 2 and the configure step to the package's Makefile.

    d10009 13 a10021 14 % make % pkgvi ${WRKSRC}/some/file/that/does/not/compile % mkpatches % patchdiff % mv ${WRKDIR}/.newpatches/* patches % make mps % make clean d10026 4 a10029 6 build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

    d10036 4 a10039 6

    Look at the Makefile, fix if necessary; see Section 7.1, “Makefile.

    d10043 1 a10043 2

    Generate a PLIST:

    d10045 10 a10054 10 # make install # make print-PLIST >PLIST # make deinstall # make install # make deinstall d10057 2 a10058 2

    You usually need to be root to do this. Look if there are d10061 2 a10062 2 # make print-PLIST d10066 1 a10066 1 PLIST, add them.

    d10070 2 a10071 2

    Now that the PLIST is OK, install the package again and make a binary d10074 4 a10077 4 # make reinstall # make package d10084 2 a10085 2 # pkg_delete blub d10090 3 a10092 3

    Repeat the above make print-PLIST command, which shouldn't find anything now:

    d10094 2 a10095 2 # make print-PLIST d10102 2 a10103 2 # pkgadd .../blub.tgz d10112 2 a10113 2

    Run pkglint from pkgtools/pkglint, and fix the problems it reports:

    d10119 1 a10119 2 # pkglint d10148 1 a10148 1
    14.1. d10151 1 a10151 1
    14.2. d10155 1 a10155 1
    14.3. d10158 1 a10158 1
    14.4. d10168 2 a10169 2 "id2594342" id= "id2594342">14.1. Submitting your d10187 1 a10187 1 piss anyone off but rather to protect our users! d10189 6 a10194 1 packages and tell the world where to get them.

    d10206 2 a10207 2 Finally, send-pr with category d10235 2 a10236 2 "id2594389" id= "id2594389">14.2. Committing: Importing a d10246 7 a10252 7 the cvs import command is so that it knows where to place the files in the repository. Newly created packages should be imported with a vendor tag of “TNF” and a release tag of “pkgsrc-base”, e.g:

    d10262 1 a10262 2 the category's Makefile.

    d10265 3 a10267 3 include part of the DESCR file, so people reading the mailing lists know what the package is/does.

    d10270 4 a10273 4 pkgsrc/doc/CHANGES. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on 14.3. Updating d10342 1 a10342 1 "id2594539" id="id2594539">14.4. Moving a d10360 2 a10361 2 % cvs -d user@@cvs.NetBSD.org:/cvsroot export -D today pkgsrc/category/package d10368 3 a10370 3

    Fix CATEGORIES and any DEPENDS paths that just did “cvs import the modified package in the new place.

    d10384 4 a10387 4 % cd /usr/pkgsrc % grep /package */*/Makefile* */*/buildlink* d10397 2 a10398 3

    cvs rm (-f) the package at the old location.

    d10402 2 a10403 2

    Remove from oldcategory/Makefile.

    d10407 2 a10408 2

    Add to newcategory/Makefile.

    d10414 2 a10415 2 % cvs commit oldcategory/package oldcategory/Makefile newcategory/Makefile d10441 1 a10441 1
    A.1. d10446 1 a10446 1
    A.1.1. d10449 1 a10449 1
    A.1.2. d10452 1 a10452 1
    A.1.3. d10455 2 a10456 3
    A.1.4. Checking a package with pkglint
    d10460 1 a10460 1
    A.2. Steps d10467 4 a10470 5 would want to have bison when Berkeley yacc is already present in the tree is beyond us, but it's useful for the purposes of this exercise.

    d10477 1 a10477 1 "id2594765" id="id2594765">
    A.1. files

    d10486 2 a10487 2

    A.1.1. Makefile

    d10514 2 a10515 2

    A.1.2. DESCR

    d10531 2 a10532 2

    A.1.3. PLIST

    d10549 3 a10551 4

    A.1.4. Checking a package with pkglint

    d10559 5 a10563 6 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10565 1 a10565 2 $ pkglint d10575 2 a10576 2 e.g. pkglint -v for a very verbose check.

    d10585 1 a10585 1 "id2594839" id="id2594839">A.2. Steps for d10594 8 a10601 8 # cd /usr/pkgsrc/lang # mkdir bison # cd bison # mkdir patches d10604 3 a10606 3

    Create Makefile, DESCR and PLIST (see # make fetch d10628 2 a10629 2

    Generate the checksum of the distfile into distinfo:

    d10631 2 a10632 2 # make makesum d10637 1 a10637 2 # make d10692 2 a10693 2 # make install d10709 3 a10711 3 remove it with pkg_delete bison. Should you decide that you want a binary package, do this now:

    d10713 2 a10714 2 # make package d10725 2 a10726 2 # make clean d10765 1 a10765 2 # make d10836 3 a10838 3 # # make install d10853 1 a10853 1 # d10868 2 a10869 2 # make package d10876 1 a10876 1 # d10970 1 a10970 1 pkgsrc-2004Q3/\ # pkgsrc-branch d10978 3 a10980 3

    If necessary, create a symlink ln -s `uname -m` `uname -p` (amiga -> m68k, ...)

    d11001 1 a11001 1
    D.1. d11004 1 a11004 1
    D.2. d11017 1 a11017 1 "id2595758" id="id2595758">D.1. Targets

    d11022 2 a11023 2

    The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files d11029 3 a11031 4

    pkgsrc/doc/pkgsrc.txt, which replaces pkgsrc/Packages.txt

    d11035 2 a11036 2

    pkgsrc/doc/pkgsrc.html

    d11040 2 a11041 2

    http://www.NetBSD.org/Documentation/pkgsrc/: d11050 2 a11051 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: d11056 2 a11057 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: d11069 2 a11070 2 "id2595829" id= "id2595829">D.2. Procedure

    d11090 4 a11093 4 found in pkgsrc/meta-pkgs/netbsd-doc and pkgsrc/meta-pkgs/netbsd-doc-print.

    d11097 2 a11098 2

    Edit the XML file(s) in pkgsrc/doc/guide/files.

    d11102 4 a11105 4

    Run make extract && make do-lint in pkgsrc/doc/guide to check the XML syntax, and fix it if needed.

    d11109 3 a11111 4

    Run make in pkgsrc/doc/guide to build the HTML and ASCII version.

    d11115 3 a11117 4

    If all is well, run make install-doc to put the generated files into pkgsrc/doc.

    d11121 2 a11122 2

    cvs commit pkgsrc/doc/guide/files

    d11126 2 a11127 3

    cvs commit -m re-generate pkgsrc/doc/pkgsrc.{html,txt}

    d11133 4 a11136 5 pkgsrc guide automatically, also run make install-htdoc HTDOCSDIR=../../../htdocs (or similar, adjust HTDOCSDIR!).

    d11140 2 a11141 2

    cvs commit htdocs/Documentation/pkgsrc

    @ 1.11 log @re-generate @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515191">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515490">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515933">3.2.3. Interix d155 1 a155 1 "#id2516024">3.2.4. IRIX d158 1 a158 1 "#id2516210">3.2.5. OpenBSD d161 1 a161 1 "#id2516322">3.2.6. Solaris d179 1 a179 1 "#id2516458">4.1.1. Where to get binary d183 1 a183 1 "#id2516499">4.1.2. How to use binary d187 1 a187 1 "#id2516633">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516654">4.2.1. d202 1 a202 1 "#id2516675">4.2.2. Fetching d206 1 a206 1 "#id2516795">4.2.3. How to build and d210 1 a210 1 "#id2517522">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2583020">5.3.2. Other environmental d243 1 a243 1 "#id2583061">5.3.3. Operation
    d246 1 a246 1 "#id2583200">5.3.4. What it d250 1 a250 1 "#id2583256">5.3.5. Disk space d254 1 a254 1 "#id2583351">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583715">5.3.7. Building a partial set of d263 1 a263 1
    5.4. d270 1 a270 1 "#id2583772">5.4.1. Example of d282 1 a282 1
    6.1. d286 1 a286 1
    6.2. d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 1 a308 1
    6.8. d313 1 a313 1
    6.9. d316 1 a316 1
    6.10. d321 1 a321 1
    6.11. d325 1 a325 1
    6.12. d363 1 a363 1
    7.4. d370 1 a370 1
    7.6. d373 1 a373 1
    7.7. d384 1 a384 1
    8.1. d387 1 a387 1
    8.2. d399 1 a399 1
    8.5. d402 1 a402 1
    8.6. d406 1 a406 1
    8.7. d421 1 a421 1
    9.1. d425 1 a425 1
    9.2. d432 1 a432 1 "#id2587400">9.2.1. Anatomy of a buildlink3.mk d436 1 a436 1 "#id2587977">9.2.2. Updating 9.3. d451 1 a451 1 "#id2588137">9.3.1. Anatomy of a 9.3.2. Global preferences for d468 1 a468 1
    10.1. d471 1 a471 1
    10.2. d486 1 a486 1
    11.2. d500 1 a500 1
    12.1. d506 1 a506 1 "#id2590532">12.1.1. How to pull in variables d510 1 a510 1 "#id2590615">12.1.2. Restricted d518 1 a518 1 "#id2591198">12.1.4. Handling conflicts with d522 1 a522 1 "#id2591249">12.1.5. Packages that cannot or d526 1 a526 1 "#id2591342">12.1.6. Packages which should not d534 1 a534 1 "#id2591434">12.1.8. How to handle compiler d538 1 a538 1 "#id2591457">12.1.9. How to handle incrementing d543 1 a543 1 "#id2591574">12.1.10. Portability of d548 1 a548 1
    12.2. d554 1 a554 1 "#id2591602">12.2.1. Packages whose distfiles d559 1 a559 1 "#id2591665">12.2.2. How to handle modified d564 1 a564 1
    12.3. d574 1 a574 1 "#id2592016">12.3.2. Using libtool on GNU d579 1 a579 1 "#id2592168">12.3.3. GNU d584 1 a584 1
    12.4. d590 1 a590 1 "#id2592216">12.4.1. CPP d595 1 a595 1
    12.5. d601 1 a601 1 "#id2592317">12.5.1. Package configuration d605 1 a605 1 "#id2592420">12.5.2. User d609 1 a609 1 "#id2592465">12.5.3. Handling d613 1 a613 1 "#id2592616">12.5.4. Creating an account from a d617 1 a617 1 "#id2592678">12.5.5. Installing score d621 1 a621 1 "#id2592858">12.5.6. Packages providing login d625 1 a625 1 "#id2592984">12.5.7. Packages containing perl d629 1 a629 1 "#id2593002">12.5.8. Packages with hardcoded d633 1 a633 1 "#id2593024">12.5.9. Packages installing perl d641 1 a641 1 "#id2593380">12.5.11. Packages installing d645 1 a645 1 "#id2593480">12.5.12. Packages installing d649 1 a649 1 "#id2593531">12.5.13. Packages installing X11 d653 1 a653 1 "#id2593578">12.5.14. Packages installing GTK2 d657 1 a657 1 "#id2593648">12.5.15. Packages installing SGML d661 1 a661 1 "#id2593700">12.5.16. Packages installing d665 1 a665 1 "#id2593770">12.5.17. Packages using d670 1 a670 1
    12.6. d683 1 a683 1
    14.1. d686 1 a686 1
    14.2. d690 1 a690 1
    14.3. d694 1 a694 1
    14.4. d706 1 a706 1
    A.1. d711 1 a711 1
    A.1.1. d714 1 a714 1
    A.1.2. d717 1 a717 1
    A.1.3. d720 1 a720 1
    A.1.4. d726 1 a726 1
    A.2. Steps d752 1 a752 1
    D.1. d755 1 a755 1
    D.2. d776 1 a776 1
    1.1. d795 2 a796 2 "id2514205" id= "id2514205">1.1. Introduction

    d1101 1 a1101 1
    2.1. As d1104 1 a1104 1
    2.2. Via d1107 1 a1107 1
    2.3. Via d1117 1 a1117 1
    3.1. d1120 1 a1120 1
    3.2. d1126 1 a1126 1 "#id2515191">3.2.1. Darwin (Mac OS d1130 1 a1130 1 "#id2515490">3.2.2. FreeBSD
    d1133 1 a1133 1 "#id2515933">3.2.3. Interix d1136 1 a1136 1 "#id2516024">3.2.4. IRIX d1139 1 a1139 1 "#id2516210">3.2.5. OpenBSD d1142 1 a1142 1 "#id2516322">3.2.6. Solaris d1160 1 a1160 1 "#id2516458">4.1.1. Where to get binary d1164 1 a1164 1 "#id2516499">4.1.2. How to use binary d1168 1 a1168 1 "#id2516633">4.1.3. A word of d1173 1 a1173 1
    4.2. d1179 1 a1179 1 "#id2516654">4.2.1. Requirements
    d1182 1 a1182 1 "#id2516675">4.2.2. Fetching d1186 1 a1186 1 "#id2516795">4.2.3. How to build and d1190 1 a1190 1 "#id2517522">4.2.4. Selecting the d1202 1 a1202 1
    5.1. d1205 1 a1205 1
    5.2. d1219 1 a1219 1 "#id2583020">5.3.2. Other environmental d1223 1 a1223 1 "#id2583061">5.3.3. Operation
    d1226 1 a1226 1 "#id2583200">5.3.4. What it does d1229 1 a1229 1 "#id2583256">5.3.5. Disk space d1233 1 a1233 1 "#id2583351">5.3.6. Setting up a sandbox for d1237 1 a1237 1 "#id2583715">5.3.7. Building a partial set of d1242 1 a1242 1
    5.4. d1249 1 a1249 1 "#id2583772">5.4.1. Example of d1261 1 a1261 1
    6.1. Is d1265 1 a1265 1
    6.2. d1272 1 a1272 1
    6.4. How d1275 1 a1275 1
    6.5. How d1279 1 a1279 1
    6.6. How d1282 1 a1282 1
    6.7. How d1285 1 a1285 1
    6.8. How d1290 1 a1290 1
    6.9. How d1293 1 a1293 1
    6.10. d1298 1 a1298 1
    6.11. d1302 1 a1302 1
    6.12. d1332 1 a1332 1
    2.1. As d1335 1 a1335 1
    2.2. Via d1338 1 a1338 1
    2.3. Via d1352 1 a1352 1 "id2514784" id="id2514784">2.1. As tar d1370 1 a1370 1 "id2514800" id="id2514800">2.2. Via d1396 1 a1396 1 "id2514900" id="id2514900">2.3. Via d1453 1 a1453 1
    3.1. d1456 1 a1456 1
    3.2. d1461 1 a1461 1
    3.2.1. d1464 1 a1464 1
    3.2.2. d1467 1 a1467 1
    3.2.3. d1470 1 a1470 1
    3.2.4. d1473 1 a1473 1
    3.2.5. d1476 1 a1476 1
    3.2.6. d1488 2 a1489 2 "id2515010" id= "id2515010">3.1. Bootstrapping pkgsrc

    d1571 1 a1571 1 "id2515185" id="id2515185">3.2. Platform d1584 2 a1585 2

    3.2.1. Darwin (Mac OS d1717 2 a1718 2

    3.2.2. FreeBSD

    d1774 2 a1775 2

    3.2.3. Interix

    d1945 2 a1946 2

    3.2.4. IRIX

    d1998 2 a1999 2

    3.2.5. OpenBSD

    d2065 2 a2066 2

    3.2.6. Solaris

    d2110 2 a2111 2

    3.2.6.1. If you are using d2140 2 a2141 2

    3.2.6.2. If you are using d2218 1 a2218 1
    4.1.1. d2221 1 a2221 1
    4.1.2. d2224 1 a2224 1
    4.1.3. d2229 1 a2229 1
    4.2. d2234 1 a2234 1
    4.2.1. d2237 1 a2237 1
    4.2.2. d2240 1 a2240 1
    4.2.3. d2243 1 a2243 1
    4.2.4. d2270 2 a2271 2

    4.1.1. Where to get binary d2302 2 a2303 2

    4.1.2. How to use binary d2347 2 a2348 2

    4.1.3. A word of d2371 1 a2371 1 "id2516645" id="id2516645">4.2. Building d2386 2 a2387 2

    4.2.1. Requirements

    d2406 2 a2407 2

    4.2.2. Fetching d2448 2 a2449 2

    4.2.3. How to build and d2613 2 a2614 2

    4.2.4. Selecting the d2714 1 a2714 1
    5.1. d2717 1 a2717 1
    5.2. d2730 1 a2730 1
    5.3.2. d2733 1 a2733 1
    5.3.3. d2736 1 a2736 1
    5.3.4. d2739 1 a2739 1
    5.3.5. d2742 1 a2742 1
    5.3.6. d2746 1 a2746 1
    5.3.7. d2751 1 a2751 1
    5.4. d2757 1 a2757 1
    5.4.1. d2769 1 a2769 1 "id2582803" id="id2582803">5.1. Building a d2823 1 a2823 1 "id2582881" id="id2582881">5.2. Settings d2905 2 a2906 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3005 2 a3006 2

    5.3.3. Operation

    d3052 2 a3053 2

    5.3.4. What it does

    d3111 2 a3112 2

    5.3.5. Disk space d3154 2 a3155 2

    5.3.6. Setting up a sandbox d3161 23 a3183 10

    If you don't want all the pkgs nuked from a machine (rendering it useless for anything but pkg compiling), there is the possibility of doing the pkg bulk build inside a chroot environment.

    The first step to do so is setting up a chroot sandbox, e.g. /usr/sandbox. After extracting all the sets from a NetBSD installation or doing a make distribution d3344 2 a3345 2

    5.3.7. Building a partial d3398 1 a3398 1 "id2583757" id="id2583757">5.4. Creating a d3421 2 a3422 2

    5.4.1. Example of d3495 1 a3495 1
    6.1. Is d3499 1 a3499 1
    6.2. d3506 1 a3506 1
    6.4. How d3509 1 a3509 1
    6.5. How d3512 1 a3512 1
    6.6. How d3515 1 a3515 1
    6.7. How d3518 1 a3518 1
    6.8. How d3523 1 a3523 1
    6.9. How d3526 1 a3526 1
    6.10. What d3531 1 a3531 1
    6.11. What d3535 1 a3535 1
    6.12. d3557 1 a3557 1 "id2584100" id="id2584100">6.1. Is there a d3582 1 a3582 1 "id2584130" id="id2584130">6.2. Where's d3837 1 a3837 1 "id2584382" id="id2584382">6.4. How to use d3855 1 a3855 1 "id2584394" id="id2584394">6.5. How can I d3878 1 a3878 1 "id2584422" id="id2584422">6.6. How can I d3901 1 a3901 1 "id2584518" id="id2584518">6.7. How to d3926 1 a3926 1 "id2584532" id="id2584532">6.8. How do I d3960 1 a3960 1 "id2584651" id="id2584651">6.9. How to d4029 1 a4029 1 "id2584791" id="id2584791">6.10. What does d4061 1 a4061 1 "id2584829" id="id2584829">6.11. What does d4090 1 a4090 1 "id2584887" id="id2584887">6.12. Using d4372 1 a4372 1
    7.4. d4379 1 a4379 1
    7.6. d4382 1 a4382 1
    7.7. d4392 1 a4392 1
    8.1. RCS d4395 1 a4395 1
    8.2. d4406 1 a4406 1
    8.5. d4409 1 a4409 1
    8.6. d4413 1 a4413 1
    8.7. d4428 1 a4428 1
    9.1. d4431 1 a4431 1
    9.2. d4438 1 a4438 1 "#id2587400">9.2.1. Anatomy of a buildlink3.mk d4442 1 a4442 1 "#id2587977">9.2.2. Updating 9.3. d4457 1 a4457 1 "#id2588137">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4473 1 a4473 1
    10.1. d4476 1 a4476 1
    10.2. d4490 1 a4490 1
    11.2. d4504 1 a4504 1
    12.1. d4510 1 a4510 1 "#id2590532">12.1.1. How to pull in variables d4514 1 a4514 1 "#id2590615">12.1.2. Restricted d4522 1 a4522 1 "#id2591198">12.1.4. Handling conflicts with d4526 1 a4526 1 "#id2591249">12.1.5. Packages that cannot or d4530 1 a4530 1 "#id2591342">12.1.6. Packages which should not be d4538 1 a4538 1 "#id2591434">12.1.8. How to handle compiler d4542 1 a4542 1 "#id2591457">12.1.9. How to handle incrementing d4547 1 a4547 1 "#id2591574">12.1.10. Portability of d4552 1 a4552 1
    12.2. d4558 1 a4558 1 "#id2591602">12.2.1. Packages whose distfiles d4563 1 a4563 1 "#id2591665">12.2.2. How to handle modified d4568 1 a4568 1
    12.3. d4578 1 a4578 1 "#id2592016">12.3.2. Using libtool on GNU d4583 1 a4583 1 "#id2592168">12.3.3. GNU d4588 1 a4588 1
    12.4. d4594 1 a4594 1 "#id2592216">12.4.1. CPP defines
    d4598 1 a4598 1
    12.5. d4604 1 a4604 1 "#id2592317">12.5.1. Package configuration d4608 1 a4608 1 "#id2592420">12.5.2. User d4612 1 a4612 1 "#id2592465">12.5.3. Handling d4616 1 a4616 1 "#id2592616">12.5.4. Creating an account from a d4620 1 a4620 1 "#id2592678">12.5.5. Installing score d4624 1 a4624 1 "#id2592858">12.5.6. Packages providing login d4628 1 a4628 1 "#id2592984">12.5.7. Packages containing perl d4632 1 a4632 1 "#id2593002">12.5.8. Packages with hardcoded d4636 1 a4636 1 "#id2593024">12.5.9. Packages installing perl d4644 1 a4644 1 "#id2593380">12.5.11. Packages installing GConf2 d4648 1 a4648 1 "#id2593480">12.5.12. Packages installing d4652 1 a4652 1 "#id2593531">12.5.13. Packages installing X11 d4656 1 a4656 1 "#id2593578">12.5.14. Packages installing GTK2 d4660 1 a4660 1 "#id2593648">12.5.15. Packages installing SGML or d4664 1 a4664 1 "#id2593700">12.5.16. Packages installing d4668 1 a4668 1 "#id2593770">12.5.17. Packages using d4673 1 a4673 1
    12.6. d4686 1 a4686 1
    14.1. d4689 1 a4689 1
    14.2. d4693 1 a4693 1
    14.3. d4696 1 a4696 1
    14.4. d4729 1 a4729 1
    7.4. Other d4736 1 a4736 1
    7.6. d4739 1 a4739 1
    7.7. d5074 1 a5074 1 "id2586001" id="id2586001">7.4. Other d5198 2 a5199 2 "id2586126" id= "id2586126">7.6. 7.7. 8.1. RCS d5295 1 a5295 1
    8.2. d5306 1 a5306 1
    8.5. d5309 1 a5309 1
    8.6. d5313 1 a5313 1
    8.7. d5339 1 a5339 1 "id2586268" id="id2586268">8.1. RCS d5357 2 a5358 2 "id2586283" id= "id2586283">8.2. Semi-automatic d5552 2 a5553 2 "id2586673" id= "id2586673">8.5. Manpage-compression

    d5577 1 a5577 1 "id2586714" id="id2586714">8.6. Changing d5597 1 a5597 1 "id2586731" id="id2586731">8.7. Platform d5739 1 a5739 1
    9.1. d5742 1 a5742 1
    9.2. d5748 1 a5748 1
    9.2.1. d5751 1 a5751 1
    9.2.2. d5760 1 a5760 1
    9.3. d5766 1 a5766 1
    9.3.1. d5770 1 a5770 1
    9.3.2. d5821 1 a5821 1 "id2587003" id="id2587003">9.1. Converting d5972 1 a5972 1 "id2587194" id="id2587194">9.2. Writing d6012 2 a6013 2

    9.2.1. Anatomy of a buildlink3.mk d6243 2 a6244 2

    9.2.2. Updating 9.3. Writing d6365 2 a6366 2

    9.3.1. Anatomy of a d6491 2 a6492 2

    9.3.2. Global preferences d6550 1 a6550 1
    10.1. d6553 1 a6553 1
    10.2. d6573 1 a6573 1 "id2588437" id="id2588437">10.1. Global d6591 2 a6592 2 "id2588452" id= "id2588452">10.2. Converting packages to d6755 1 a6755 1
    11.2. Main d6952 1 a6952 1 "id2589128" id="id2589128">11.2. Main d7718 1 a7718 1
    12.1. d7724 1 a7724 1 "#id2590532">12.1.1. How to pull in variables from d7728 1 a7728 1 "#id2590615">12.1.2. Restricted d7736 1 a7736 1 "#id2591198">12.1.4. Handling conflicts with other d7740 1 a7740 1 "#id2591249">12.1.5. Packages that cannot or should d7744 1 a7744 1 "#id2591342">12.1.6. Packages which should not be d7752 1 a7752 1 "#id2591434">12.1.8. How to handle compiler d7756 1 a7756 1 "#id2591457">12.1.9. How to handle incrementing d7761 1 a7761 1 "#id2591574">12.1.10. Portability of d7766 1 a7766 1
    12.2. d7772 1 a7772 1 "#id2591602">12.2.1. Packages whose distfiles d7777 1 a7777 1 "#id2591665">12.2.2. How to handle modified d7782 1 a7782 1
    12.3. d7792 1 a7792 1 "#id2592016">12.3.2. Using libtool on GNU packages d7796 1 a7796 1 "#id2592168">12.3.3. GNU d7801 1 a7801 1
    12.4. d7807 1 a7807 1 "#id2592216">12.4.1. CPP defines
    d7811 1 a7811 1
    12.5. d7817 1 a7817 1 "#id2592317">12.5.1. Package configuration d7821 1 a7821 1 "#id2592420">12.5.2. User d7825 1 a7825 1 "#id2592465">12.5.3. Handling d7829 1 a7829 1 "#id2592616">12.5.4. Creating an account from a d7833 1 a7833 1 "#id2592678">12.5.5. Installing score d7837 1 a7837 1 "#id2592858">12.5.6. Packages providing login d7841 1 a7841 1 "#id2592984">12.5.7. Packages containing perl d7845 1 a7845 1 "#id2593002">12.5.8. Packages with hardcoded paths d7849 1 a7849 1 "#id2593024">12.5.9. Packages installing perl d7857 1 a7857 1 "#id2593380">12.5.11. Packages installing GConf2 d7861 1 a7861 1 "#id2593480">12.5.12. Packages installing d7865 1 a7865 1 "#id2593531">12.5.13. Packages installing X11 d7869 1 a7869 1 "#id2593578">12.5.14. Packages installing GTK2 d7873 1 a7873 1 "#id2593648">12.5.15. Packages installing SGML or d7877 1 a7877 1 "#id2593700">12.5.16. Packages installing d7881 1 a7881 1 "#id2593770">12.5.17. Packages using d7886 1 a7886 1
    12.6. d7896 1 a7896 1 "id2590529" id="id2590529">12.1. General d7906 2 a7907 2

    12.1.1. How to pull in d7967 2 a7968 2

    12.1.2. Restricted d8271 2 a8272 2

    12.1.4. Handling conflicts d8319 2 a8320 2

    12.1.5. Packages that cannot d8351 2 a8352 2

    12.1.6. Packages which d8415 2 a8416 2

    12.1.8. How to handle d8441 2 a8442 2

    12.1.9. How to handle d8482 2 a8483 2

    12.1.10. Portability of d8499 2 a8500 2

    12.1.10.1. ${INSTALL}, d8525 1 a8525 1 "id2591598" id="id2591598">12.2. Possible d8535 2 a8536 2

    12.2.1. Packages whose d8597 2 a8598 2

    12.2.2. How to handle d8627 2 a8628 2 "id2591676" id= "id2591676">12.3. Configuration d8856 2 a8857 2

    12.3.2. Using libtool on GNU d8936 2 a8937 2

    12.3.3. GNU d9003 1 a9003 1 "id2592213" id="id2592213">12.4. Building d9013 2 a9014 2

    12.4.1. CPP defines

    d9053 1 a9053 1 "id2592314" id="id2592314">12.5. Package d9063 2 a9064 2

    12.5.1. Package d9136 2 a9137 2

    12.5.2. User d9186 2 a9187 2

    12.5.3. Handling d9261 2 a9262 2

    12.5.4. Creating an account d9316 2 a9317 2

    12.5.5. Installing score d9354 2 a9355 2

    12.5.6. Packages providing d9390 2 a9391 2

    12.5.7. Packages containing d9409 2 a9410 2

    12.5.8. Packages with d9436 2 a9437 2

    12.5.9. Packages installing d9576 2 a9577 2

    12.5.11. Packages installing d9651 2 a9652 2

    12.5.12. Packages installing d9696 2 a9697 2

    12.5.13. Packages installing d9734 2 a9735 2

    12.5.14. Packages installing d9801 2 a9802 2

    12.5.15. Packages installing d9863 2 a9864 2

    12.5.16. Packages installing d9922 2 a9923 2

    12.5.17. Packages using d9948 1 a9948 1 "id2593784" id="id2593784">12.6. Feedback d10184 1 a10184 1
    14.1. d10187 1 a10187 1
    14.2. d10191 1 a10191 1
    14.3. d10194 1 a10194 1
    14.4. d10204 2 a10205 2 "id2594314" id= "id2594314">14.1. Submitting your d10266 2 a10267 2 "id2594361" id= "id2594361">14.2. Committing: Importing a d10323 1 a10323 1 "id2594492" id="id2594492">14.3. Updating d10374 1 a10374 1 "id2594512" id="id2594512">14.4. Moving a d10475 1 a10475 1
    A.1. d10480 1 a10480 1
    A.1.1. d10483 1 a10483 1
    A.1.2. d10486 1 a10486 1
    A.1.3. d10489 1 a10489 1
    A.1.4. d10495 1 a10495 1
    A.2. Steps d10513 1 a10513 1 "id2594806" id="id2594806">A.1. files

    d10522 2 a10523 2

    A.1.1. Makefile

    d10550 2 a10551 2

    A.1.2. DESCR

    d10567 2 a10568 2

    A.1.3. PLIST

    d10585 2 a10586 2

    A.1.4. Checking a package with d10624 1 a10624 1 "id2594880" id="id2594880">A.2. Steps for d11042 1 a11042 1
    D.1. d11045 1 a11045 1
    D.2. d11058 1 a11058 1 "id2595799" id="id2595799">D.1. Targets

    d11111 2 a11112 2 "id2595869" id= "id2595869">D.2. Procedure

    @ 1.10 log @ALL_TARGET -> BUILD_TARGET. @ text @d22 2 a23 2

    The pkgsrc guide

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2515261">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2515492">3.2.2. FreeBSD
    d152 1 a152 1 "#id2515662">3.2.3. Interix

    d155 1 a155 1 "#id2515753">3.2.4. IRIX

    d158 1 a158 1 "#id2516280">3.2.5. OpenBSD

    d161 1 a161 1 "#id2516392">3.2.6. Solaris d179 1 a179 1 "#id2516529">4.1.1. Where to get binary d183 1 a183 1 "#id2516569">4.1.2. How to use binary d187 1 a187 1 "#id2516704">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2516725">4.2.1. d202 1 a202 1 "#id2516745">4.2.2. Fetching d206 1 a206 1 "#id2516866">4.2.3. How to build and d210 1 a210 1 "#id2517182">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2517964">5.3.2. Other environmental d243 1 a243 1 "#id2518005">5.3.3. Operation
    d246 1 a246 1 "#id2583270">5.3.4. What it d250 1 a250 1 "#id2583326">5.3.5. Disk space d254 1 a254 1 "#id2583421">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2583785">5.3.7. Building a partial set of d263 1 a263 1
    5.4. d270 1 a270 1 "#id2583843">5.4.1. Example of d282 1 a282 1
    6.1. d286 1 a286 1
    6.2. d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 1 a308 1
    6.8. d313 1 a313 1
    6.9. d316 1 a316 1
    6.10. d321 1 a321 1
    6.11. d325 1 a325 1
    6.12. d363 1 a363 1
    7.4. d370 1 a370 1
    7.6. d373 1 a373 1
    7.7. d384 1 a384 1
    8.1. d387 1 a387 1
    8.2. d399 1 a399 1
    8.5. d402 1 a402 1
    8.6. d406 1 a406 1
    8.7. d421 1 a421 1
    9.1. d425 1 a425 1
    9.2. d432 1 a432 1 "#id2587470">9.2.1. Anatomy of a buildlink3.mk d436 1 a436 1 "#id2588048">9.2.2. Updating 9.3. d451 1 a451 1 "#id2588208">9.3.1. Anatomy of a 9.3.2. Global preferences for d468 1 a468 1
    10.1. d471 1 a471 1
    10.2. d486 1 a486 1
    11.2. d500 1 a500 1
    12.1. d506 1 a506 1 "#id2590534">12.1.1. How to pull in variables d510 1 a510 1 "#id2590685">12.1.2. Restricted d518 1 a518 1 "#id2591201">12.1.4. Handling conflicts with d522 1 a522 1 "#id2591251">12.1.5. Packages that cannot or d526 1 a526 1 "#id2591413">12.1.6. Packages which should not d534 1 a534 1 "#id2591505">12.1.8. How to handle compiler d538 1 a538 1 "#id2591527">12.1.9. How to handle incrementing d543 1 a543 1 "#id2591644">12.1.10. Portability of d548 1 a548 1
    12.2. d554 1 a554 1 "#id2591672">12.2.1. Packages whose distfiles d559 1 a559 1 "#id2591735">12.2.2. How to handle modified d564 1 a564 1
    12.3. d574 1 a574 1 "#id2592086">12.3.2. Using libtool on GNU d579 1 a579 1 "#id2592238">12.3.3. GNU d584 1 a584 1
    12.4. d590 1 a590 1 "#id2592286">12.4.1. CPP d595 1 a595 1
    12.5. d601 1 a601 1 "#id2592320">12.5.1. Package configuration d605 1 a605 1 "#id2592490">12.5.2. User d609 1 a609 1 "#id2592535">12.5.3. Handling d613 1 a613 1 "#id2592686">12.5.4. Creating an account from a d617 1 a617 1 "#id2592748">12.5.5. Installing score d621 1 a621 1 "#id2592929">12.5.6. Packages providing login d625 1 a625 1 "#id2593054">12.5.7. Packages containing perl d629 1 a629 1 "#id2593073">12.5.8. Packages with hardcoded d633 1 a633 1 "#id2593094">12.5.9. Packages installing perl d641 1 a641 1 "#id2593450">12.5.11. Packages installing d645 1 a645 1 "#id2593550">12.5.12. Packages installing d649 1 a649 1 "#id2593602">12.5.13. Packages installing X11 d653 1 a653 1 "#id2593649">12.5.14. Packages installing GTK2 d657 1 a657 1 "#id2593718">12.5.15. Packages installing SGML d661 1 a661 1 "#id2593770">12.5.16. Packages installing d665 1 a665 1 "#id2593841">12.5.17. Packages using d670 1 a670 1
    12.6. d683 1 a683 1
    14.1. d686 1 a686 1
    14.2. d690 1 a690 1
    14.3. d694 1 a694 1
    14.4. d706 1 a706 1
    A.1. d711 1 a711 1
    A.1.1. d714 1 a714 1
    A.1.2. d717 1 a717 1
    A.1.3. d720 1 a720 1
    A.1.4. d726 1 a726 1
    A.2. Steps d752 1 a752 1
    D.1. d755 1 a755 1
    D.2. d776 1 a776 1
    1.1. d795 2 a796 2 "id2514275" id= "id2514275">1.1. Introduction

    d1101 1 a1101 1
    2.1. As d1104 1 a1104 1
    2.2. Via d1107 1 a1107 1
    2.3. Via d1117 1 a1117 1
    3.1. d1120 1 a1120 1
    3.2. d1126 1 a1126 1 "#id2515261">3.2.1. Darwin (Mac OS d1130 1 a1130 1 "#id2515492">3.2.2. FreeBSD
    d1133 1 a1133 1 "#id2515662">3.2.3. Interix d1136 1 a1136 1 "#id2515753">3.2.4. IRIX d1139 1 a1139 1 "#id2516280">3.2.5. OpenBSD d1142 1 a1142 1 "#id2516392">3.2.6. Solaris d1160 1 a1160 1 "#id2516529">4.1.1. Where to get binary d1164 1 a1164 1 "#id2516569">4.1.2. How to use binary d1168 1 a1168 1 "#id2516704">4.1.3. A word of d1173 1 a1173 1
    4.2. d1179 1 a1179 1 "#id2516725">4.2.1. Requirements
    d1182 1 a1182 1 "#id2516745">4.2.2. Fetching d1186 1 a1186 1 "#id2516866">4.2.3. How to build and d1190 1 a1190 1 "#id2517182">4.2.4. Selecting the d1202 1 a1202 1
    5.1. d1205 1 a1205 1
    5.2. d1219 1 a1219 1 "#id2517964">5.3.2. Other environmental d1223 1 a1223 1 "#id2518005">5.3.3. Operation
    d1226 1 a1226 1 "#id2583270">5.3.4. What it does d1229 1 a1229 1 "#id2583326">5.3.5. Disk space d1233 1 a1233 1 "#id2583421">5.3.6. Setting up a sandbox for d1237 1 a1237 1 "#id2583785">5.3.7. Building a partial set of d1242 1 a1242 1
    5.4. d1249 1 a1249 1 "#id2583843">5.4.1. Example of d1261 1 a1261 1
    6.1. Is d1265 1 a1265 1
    6.2. d1272 1 a1272 1
    6.4. How d1275 1 a1275 1
    6.5. How d1279 1 a1279 1
    6.6. How d1282 1 a1282 1
    6.7. How d1285 1 a1285 1
    6.8. How d1290 1 a1290 1
    6.9. How d1293 1 a1293 1
    6.10. d1298 1 a1298 1
    6.11. d1302 1 a1302 1
    6.12. d1332 1 a1332 1
    2.1. As d1335 1 a1335 1
    2.2. Via d1338 1 a1338 1
    2.3. Via d1352 1 a1352 1 "id2514853" id="id2514853">2.1. As tar d1360 1 a1360 1 "ftp://ftp.NetBSD.org/pub/NetBSD-current/tar_files/pkgsrc.tar.gz" d1370 1 a1370 1 "id2514870" id="id2514870">2.2. Via d1396 1 a1396 1 "id2514970" id="id2514970">2.3. Via d1453 1 a1453 1
    3.1. d1456 1 a1456 1
    3.2. d1461 1 a1461 1
    3.2.1. d1464 1 a1464 1
    3.2.2. d1467 1 a1467 1
    3.2.3. d1470 1 a1470 1
    3.2.4. d1473 1 a1473 1
    3.2.5. d1476 1 a1476 1
    3.2.6. d1488 2 a1489 2 "id2515148" id= "id2515148">3.1. Bootstrapping pkgsrc

    d1571 1 a1571 1 "id2515255" id="id2515255">3.2. Platform d1584 2 a1585 2

    3.2.1. Darwin (Mac OS d1717 2 a1718 2

    3.2.2. FreeBSD

    d1774 2 a1775 2

    3.2.3. Interix

    d1945 2 a1946 2

    3.2.4. IRIX

    d1990 1 a1990 1 "filename">pkgsrc/mk/bsd.pkg.defaults.mk
    and, of d1998 2 a1999 2

    3.2.5. OpenBSD

    d2051 1 a2051 1 # pkgsrc stuff, e.g. insert bsd.pkg.defaults.mk or similar here d2065 2 a2066 2

    3.2.6. Solaris

    d2110 2 a2111 2

    3.2.6.1. If you are using d2140 2 a2141 2

    3.2.6.2. If you are using d2218 1 a2218 1
    4.1.1. d2221 1 a2221 1
    4.1.2. d2224 1 a2224 1
    4.1.3. d2229 1 a2229 1
    4.2. d2234 1 a2234 1
    4.2.1. d2237 1 a2237 1
    4.2.2. d2240 1 a2240 1
    4.2.3. d2243 1 a2243 1
    4.2.4. d2270 2 a2271 2

    4.1.1. Where to get binary d2302 2 a2303 2

    4.1.2. How to use binary d2347 2 a2348 2

    4.1.3. A word of d2371 1 a2371 1 "id2516715" id="id2516715">4.2. Building d2386 2 a2387 2

    4.2.1. Requirements

    d2406 2 a2407 2

    4.2.2. Fetching d2424 1 a2424 1 "filename">pkgsrc/mk/bsd.pkg.defaults.mk to find d2448 2 a2449 2

    4.2.3. How to build and d2513 2 a2514 2 "filename">pkgsrc/mk/bsd.pkg.defaults.mk to get an overview of what will be set there by default. d2583 1 a2583 1 "varname">BINPKG_SITE, which defaults to d2591 2 a2592 2 "filename">pkgsrc/mk/bsd.pkg.defaults.mk for more details.

    d2613 2 a2614 2

    4.2.4. Selecting the d2714 1 a2714 1
    5.1. d2717 1 a2717 1
    5.2. d2730 1 a2730 1
    5.3.2. d2733 1 a2733 1
    5.3.3. d2736 1 a2736 1
    5.3.4. d2739 1 a2739 1
    5.3.5. d2742 1 a2742 1
    5.3.6. d2746 1 a2746 1
    5.3.7. d2751 1 a2751 1
    5.4. d2757 1 a2757 1
    5.4.1. d2769 1 a2769 1 "id2517337" id="id2517337">5.1. Building a d2823 1 a2823 1 "id2517825" id="id2517825">5.2. Settings d2882 1 a2882 1 "filename">pkgsrc/mk/bsd.pkg.defaults.mk for d2905 2 a2906 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d3005 2 a3006 2

    5.3.3. Operation

    d3052 2 a3053 2

    5.3.4. What it does

    d3111 2 a3112 2

    5.3.5. Disk space d3154 2 a3155 2

    5.3.6. Setting up a sandbox d3331 2 a3332 2

    5.3.7. Building a partial d3385 1 a3385 1 "id2583828" id="id2583828">5.4. Creating a d3408 2 a3409 2

    5.4.1. Example of d3482 1 a3482 1
    6.1. Is d3486 1 a3486 1
    6.2. d3493 1 a3493 1
    6.4. How d3496 1 a3496 1
    6.5. How d3499 1 a3499 1
    6.6. How d3502 1 a3502 1
    6.7. How d3505 1 a3505 1
    6.8. How d3510 1 a3510 1
    6.9. How d3513 1 a3513 1
    6.10. What d3518 1 a3518 1
    6.11. What d3522 1 a3522 1
    6.12. d3544 1 a3544 1 "id2584170" id="id2584170">6.1. Is there a d3569 1 a3569 1 "id2584200" id="id2584200">6.2. Where's d3824 1 a3824 1 "id2584453" id="id2584453">6.4. How to use d3842 1 a3842 1 "id2584465" id="id2584465">6.5. How can I d3865 1 a3865 1 "id2584492" id="id2584492">6.6. How can I d3888 1 a3888 1 "id2584520" id="id2584520">6.7. How to d3913 1 a3913 1 "id2584534" id="id2584534">6.8. How do I d3947 1 a3947 1 "id2584722" id="id2584722">6.9. How to d4016 1 a4016 1 "id2584861" id="id2584861">6.10. What does d4048 1 a4048 1 "id2584900" id="id2584900">6.11. What does d4077 1 a4077 1 "id2584957" id="id2584957">6.12. Using d4300 1 a4300 1 $NetBSD: pkgsrc.html,v 1.9 2004/12/02 22:23:46 dillo Exp $ d4359 1 a4359 1
    7.4. d4366 1 a4366 1
    7.6. d4369 1 a4369 1
    7.7. d4379 1 a4379 1
    8.1. RCS d4382 1 a4382 1
    8.2. d4393 1 a4393 1
    8.5. d4396 1 a4396 1
    8.6. d4400 1 a4400 1
    8.7. d4415 1 a4415 1
    9.1. d4418 1 a4418 1
    9.2. d4425 1 a4425 1 "#id2587470">9.2.1. Anatomy of a buildlink3.mk d4429 1 a4429 1 "#id2588048">9.2.2. Updating 9.3. d4444 1 a4444 1 "#id2588208">9.3.1. Anatomy of a 9.3.2. Global preferences for native d4460 1 a4460 1
    10.1. d4463 1 a4463 1
    10.2. d4477 1 a4477 1
    11.2. d4491 1 a4491 1
    12.1. d4497 1 a4497 1 "#id2590534">12.1.1. How to pull in variables d4501 1 a4501 1 "#id2590685">12.1.2. Restricted d4509 1 a4509 1 "#id2591201">12.1.4. Handling conflicts with d4513 1 a4513 1 "#id2591251">12.1.5. Packages that cannot or d4517 1 a4517 1 "#id2591413">12.1.6. Packages which should not be d4525 1 a4525 1 "#id2591505">12.1.8. How to handle compiler d4529 1 a4529 1 "#id2591527">12.1.9. How to handle incrementing d4534 1 a4534 1 "#id2591644">12.1.10. Portability of d4539 1 a4539 1
    12.2. d4545 1 a4545 1 "#id2591672">12.2.1. Packages whose distfiles d4550 1 a4550 1 "#id2591735">12.2.2. How to handle modified d4555 1 a4555 1
    12.3. d4565 1 a4565 1 "#id2592086">12.3.2. Using libtool on GNU d4570 1 a4570 1 "#id2592238">12.3.3. GNU d4575 1 a4575 1
    12.4. d4581 1 a4581 1 "#id2592286">12.4.1. CPP defines
    d4585 1 a4585 1
    12.5. d4591 1 a4591 1 "#id2592320">12.5.1. Package configuration d4595 1 a4595 1 "#id2592490">12.5.2. User d4599 1 a4599 1 "#id2592535">12.5.3. Handling d4603 1 a4603 1 "#id2592686">12.5.4. Creating an account from a d4607 1 a4607 1 "#id2592748">12.5.5. Installing score d4611 1 a4611 1 "#id2592929">12.5.6. Packages providing login d4615 1 a4615 1 "#id2593054">12.5.7. Packages containing perl d4619 1 a4619 1 "#id2593073">12.5.8. Packages with hardcoded d4623 1 a4623 1 "#id2593094">12.5.9. Packages installing perl d4631 1 a4631 1 "#id2593450">12.5.11. Packages installing GConf2 d4635 1 a4635 1 "#id2593550">12.5.12. Packages installing d4639 1 a4639 1 "#id2593602">12.5.13. Packages installing X11 d4643 1 a4643 1 "#id2593649">12.5.14. Packages installing GTK2 d4647 1 a4647 1 "#id2593718">12.5.15. Packages installing SGML or d4651 1 a4651 1 "#id2593770">12.5.16. Packages installing d4655 1 a4655 1 "#id2593841">12.5.17. Packages using d4660 1 a4660 1
    12.6. d4673 1 a4673 1
    14.1. d4676 1 a4676 1
    14.2. d4680 1 a4680 1
    14.3. d4683 1 a4683 1
    14.4. d4716 1 a4716 1
    7.4. Other d4723 1 a4723 1
    7.6. d4726 1 a4726 1
    7.7. d5061 1 a5061 1 "id2586071" id="id2586071">7.4. Other d5185 2 a5186 2 "id2586197" id= "id2586197">7.6. 7.7. 8.1. RCS d5282 1 a5282 1
    8.2. d5293 1 a5293 1
    8.5. d5296 1 a5296 1
    8.6. d5300 1 a5300 1
    8.7. d5326 1 a5326 1 "id2586339" id="id2586339">8.1. RCS d5335 1 a5335 1 @@comment $NetBSD: pkgsrc.html,v 1.9 2004/12/02 22:23:46 dillo Exp $ d5344 2 a5345 2 "id2586354" id= "id2586354">8.2. Semi-automatic d5539 2 a5540 2 "id2586743" id= "id2586743">8.5. Manpage-compression

    d5564 1 a5564 1 "id2586785" id="id2586785">8.6. Changing d5584 1 a5584 1 "id2586802" id="id2586802">8.7. Platform d5726 1 a5726 1
    9.1. d5729 1 a5729 1
    9.2. d5735 1 a5735 1
    9.2.1. d5738 1 a5738 1
    9.2.2. d5747 1 a5747 1
    9.3. d5753 1 a5753 1
    9.3.1. d5757 1 a5757 1
    9.3.2. d5808 1 a5808 1 "id2587074" id="id2587074">9.1. Converting d5959 1 a5959 1 "id2587265" id="id2587265">9.2. Writing d5999 2 a6000 2

    9.2.1. Anatomy of a buildlink3.mk d6010 1 a6010 1 # $NetBSD: pkgsrc.html,v 1.9 2004/12/02 22:23:46 dillo Exp $ d6230 2 a6231 2

    9.2.2. Updating 9.3. Writing d6352 2 a6353 2

    9.3.1. Anatomy of a d6478 2 a6479 2

    9.3.2. Global preferences d6537 1 a6537 1
    10.1. d6540 1 a6540 1
    10.2. d6560 1 a6560 1 "id2588507" id="id2588507">10.1. Global d6578 2 a6579 2 "id2588522" id= "id2588522">10.2. Converting packages to d6742 1 a6742 1
    11.2. Main d6939 1 a6939 1 "id2589198" id="id2589198">11.2. Main d7135 3 a7137 3 BUILD_TARGET defaults to “all”. Any of these variables can be set in the package's d7705 1 a7705 1
    12.1. d7711 1 a7711 1 "#id2590534">12.1.1. How to pull in variables from d7715 1 a7715 1 "#id2590685">12.1.2. Restricted d7723 1 a7723 1 "#id2591201">12.1.4. Handling conflicts with other d7727 1 a7727 1 "#id2591251">12.1.5. Packages that cannot or should d7731 1 a7731 1 "#id2591413">12.1.6. Packages which should not be d7739 1 a7739 1 "#id2591505">12.1.8. How to handle compiler d7743 1 a7743 1 "#id2591527">12.1.9. How to handle incrementing d7748 1 a7748 1 "#id2591644">12.1.10. Portability of d7753 1 a7753 1
    12.2. d7759 1 a7759 1 "#id2591672">12.2.1. Packages whose distfiles d7764 1 a7764 1 "#id2591735">12.2.2. How to handle modified d7769 1 a7769 1
    12.3. d7779 1 a7779 1 "#id2592086">12.3.2. Using libtool on GNU packages d7783 1 a7783 1 "#id2592238">12.3.3. GNU d7788 1 a7788 1
    12.4. d7794 1 a7794 1 "#id2592286">12.4.1. CPP defines
    d7798 1 a7798 1
    12.5. d7804 1 a7804 1 "#id2592320">12.5.1. Package configuration d7808 1 a7808 1 "#id2592490">12.5.2. User d7812 1 a7812 1 "#id2592535">12.5.3. Handling d7816 1 a7816 1 "#id2592686">12.5.4. Creating an account from a d7820 1 a7820 1 "#id2592748">12.5.5. Installing score d7824 1 a7824 1 "#id2592929">12.5.6. Packages providing login d7828 1 a7828 1 "#id2593054">12.5.7. Packages containing perl d7832 1 a7832 1 "#id2593073">12.5.8. Packages with hardcoded paths d7836 1 a7836 1 "#id2593094">12.5.9. Packages installing perl d7844 1 a7844 1 "#id2593450">12.5.11. Packages installing GConf2 d7848 1 a7848 1 "#id2593550">12.5.12. Packages installing d7852 1 a7852 1 "#id2593602">12.5.13. Packages installing X11 d7856 1 a7856 1 "#id2593649">12.5.14. Packages installing GTK2 d7860 1 a7860 1 "#id2593718">12.5.15. Packages installing SGML or d7864 1 a7864 1 "#id2593770">12.5.16. Packages installing d7868 1 a7868 1 "#id2593841">12.5.17. Packages using d7873 1 a7873 1
    12.6. d7883 1 a7883 1 "id2590531" id="id2590531">12.1. General d7893 2 a7894 2

    12.1.1. How to pull in d7954 2 a7955 2

    12.1.2. Restricted d8258 2 a8259 2

    12.1.4. Handling conflicts d8306 2 a8307 2

    12.1.5. Packages that cannot d8338 2 a8339 2

    12.1.6. Packages which d8402 2 a8403 2

    12.1.8. How to handle d8428 2 a8429 2

    12.1.9. How to handle d8469 2 a8470 2

    12.1.10. Portability of d8486 2 a8487 2

    12.1.10.1. ${INSTALL}, d8512 1 a8512 1 "id2591669" id="id2591669">12.2. Possible d8522 2 a8523 2

    12.2.1. Packages whose d8584 2 a8585 2

    12.2.2. How to handle d8614 2 a8615 2 "id2591747" id= "id2591747">12.3. Configuration d8843 2 a8844 2

    12.3.2. Using libtool on GNU d8923 2 a8924 2

    12.3.3. GNU d8990 1 a8990 1 "id2592283" id="id2592283">12.4. Building d9000 2 a9001 2

    12.4.1. CPP defines

    d9040 1 a9040 1 "id2592316" id="id2592316">12.5. Package d9050 2 a9051 2

    12.5.1. Package d9123 2 a9124 2

    12.5.2. User d9173 2 a9174 2

    12.5.3. Handling d9233 1 a9233 1 "filename">pkgsrc/mk/bsd.pkg.defaults.mk.

    d9248 2 a9249 2

    12.5.4. Creating an account d9303 2 a9304 2

    12.5.5. Installing score d9317 1 a9317 1 mk/bsd.pkg.defaults.mk, d9341 2 a9342 2

    12.5.6. Packages providing d9377 2 a9378 2

    12.5.7. Packages containing d9396 2 a9397 2

    12.5.8. Packages with d9423 2 a9424 2

    12.5.9. Packages installing d9563 2 a9564 2

    12.5.11. Packages installing d9638 2 a9639 2

    12.5.12. Packages installing d9683 2 a9684 2

    12.5.13. Packages installing d9721 2 a9722 2

    12.5.14. Packages installing d9788 2 a9789 2

    12.5.15. Packages installing d9850 2 a9851 2

    12.5.16. Packages installing d9909 2 a9910 2

    12.5.17. Packages using d9935 1 a9935 1 "id2593854" id="id2593854">12.6. Feedback d10171 1 a10171 1
    14.1. d10174 1 a10174 1
    14.2. d10178 1 a10178 1
    14.3. d10181 1 a10181 1
    14.4. d10191 2 a10192 2 "id2594385" id= "id2594385">14.1. Submitting your d10253 2 a10254 2 "id2594432" id= "id2594432">14.2. Committing: Importing a d10310 1 a10310 1 "id2594563" id="id2594563">14.3. Updating d10361 1 a10361 1 "id2594582" id="id2594582">14.4. Moving a d10462 1 a10462 1
    A.1. d10467 1 a10467 1
    A.1.1. d10470 1 a10470 1
    A.1.2. d10473 1 a10473 1
    A.1.3. d10476 1 a10476 1
    A.1.4. d10482 1 a10482 1
    A.2. Steps d10500 1 a10500 1 "id2594808" id="id2594808">A.1. files

    d10509 2 a10510 2

    A.1.1. Makefile

    d10515 1 a10515 1 # $NetBSD: pkgsrc.html,v 1.9 2004/12/02 22:23:46 dillo Exp $ d10537 2 a10538 2

    A.1.2. DESCR

    d10554 2 a10555 2

    A.1.3. PLIST

    d10560 1 a10560 1 @@comment $NetBSD: pkgsrc.html,v 1.9 2004/12/02 22:23:46 dillo Exp $ a10562 6 info/bison.info info/bison.info-1 info/bison.info-2 info/bison.info-3 info/bison.info-4 info/bison.info-5 d10572 2 a10573 2

    A.1.4. Checking a package with d10611 1 a10611 1 "id2594950" id="id2594950">A.2. Steps for d11029 1 a11029 1
    D.1. d11032 1 a11032 1
    D.2. d11045 1 a11045 1 "id2595665" id="id2595665">D.1. Targets

    d11098 2 a11099 2 "id2595940" id= "id2595940">D.2. Procedure

    d11112 1 a11112 1 “pkgsrc-doc” d11115 1 a11115 1 "quote">pkgsrc-doc-print”for the @ 1.9 log @manually update (MASTER_SITE_IFARCHIVE) XXX: guide's dependency w3m failed to compile @ text @d4300 1 a4300 1 $NetBSD: pkgsrc.html,v 1.8 2004/12/01 09:52:59 wiz Exp $ d5335 1 a5335 1 @@comment $NetBSD: pkgsrc.html,v 1.8 2004/12/01 09:52:59 wiz Exp $ d6010 1 a6010 1 # $NetBSD: pkgsrc.html,v 1.8 2004/12/01 09:52:59 wiz Exp $ d7125 1 a7125 1 "varname">$ALL_TARGET
    as the target to d7135 1 a7135 1 ALL_TARGET defaults to d10515 1 a10515 1 # $NetBSD: pkgsrc.html,v 1.8 2004/12/01 09:52:59 wiz Exp $ d10560 1 a10560 1 @@comment $NetBSD: pkgsrc.html,v 1.8 2004/12/01 09:52:59 wiz Exp $ @ 1.8 log @"the the" -> "the" @ text @d4300 1 a4300 1 $NetBSD: pkgsrc.html,v 1.7 2004/11/22 16:52:08 wiz Exp $ d4782 1 d5335 1 a5335 1 @@comment $NetBSD: pkgsrc.html,v 1.7 2004/11/22 16:52:08 wiz Exp $ d6010 1 a6010 1 # $NetBSD: pkgsrc.html,v 1.7 2004/11/22 16:52:08 wiz Exp $ d10515 1 a10515 1 # $NetBSD: pkgsrc.html,v 1.7 2004/11/22 16:52:08 wiz Exp $ d10560 1 a10560 1 @@comment $NetBSD: pkgsrc.html,v 1.7 2004/11/22 16:52:08 wiz Exp $ @ 1.7 log @Regen for USE_GMAKE removal; quite a lot of unrelated changes, probably because I have newer versions of the software installed, and of course because the section ids are automatic. @ text @d2574 1 a2574 1 a remote FTP server, you can use the the "bin-install" d4300 1 a4300 1 $NetBSD: faq.xml,v 1.2 2004/11/20 13:25:22 hubertf Exp $ d5334 1 a5334 1 @@comment $NetBSD$ d6009 1 a6009 1 # $NetBSD: buildlink3.mk,v 1.7 2004/03/18 09:12:12 jlam Exp $ d10514 1 a10514 1 # $NetBSD$ d10559 1 a10559 1 @@comment $NetBSD$ @ 1.6 log @Re-gen for notice on needed tools to update the pkgsrc guide @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st October 2003), see www.w3.org" /> d11 1 a11 1 "DocBook XSL Stylesheets V1.65.0" /> d22 2 a23 2

    The pkgsrc guide

    d40 2 a41 2

    d53 2 a54 2

    d96 1 a96 1
    1.1. d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2495324">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2495623">3.2.2. FreeBSD
    d152 1 a152 1 "#id2496272">3.2.3. Interix

    d155 1 a155 1 "#id2496362">3.2.4. IRIX

    d158 1 a158 1 "#id2496480">3.2.5. OpenBSD d161 1 a161 1 "#id2496660">3.2.6. Solaris d179 1 a179 1 "#id2496865">4.1.1. Where to get binary d183 1 a183 1 "#id2496905">4.1.2. How to use binary d187 1 a187 1 "#id2497040">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2497129">4.2.1. d202 1 a202 1 "#id2497149">4.2.2. Fetching d206 1 a206 1 "#id2497202">4.2.3. How to build and d210 1 a210 1 "#id2498133">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2563222">5.3.2. Other environmental d243 1 a243 1 "#id2563262">5.3.3. Operation
    d246 1 a246 1 "#id2563469">5.3.4. What it d250 1 a250 1 "#id2563526">5.3.5. Disk space d254 1 a254 1 "#id2563553">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2563916">5.3.7. Building a partial set of d263 1 a263 1
    5.4. d270 1 a270 1 "#id2564042">5.4.1. Example of d282 1 a282 1
    6.1. d286 1 a286 1
    6.2. d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 3 a310 2
    6.8. How do I tell make fetch to do passive d313 1 a313 1
    6.9. d316 4 a319 3
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
    d321 3 a323 3
    6.11. What does Could not find bsd.own.mk mean?
    d325 1 a325 1
    6.12. d352 2 a353 2 "#components.Makefile">7.1. Makefile
    d356 2 a357 2 "#components.distinfo">7.2. distinfo d363 1 a363 1
    7.4. d370 2 a371 2
    7.6. work*
    d373 3 a375 2
    7.7. files/*
    d384 1 a384 1
    8.1. d387 3 a389 2
    8.2. Semi-automatic PLIST generation
    d392 3 a394 1 Tweaking output of make print-PLIST d399 1 a399 1
    8.5. d402 3 a404 3
    8.6. Changing PLIST source with PLIST_SRC
    d406 1 a406 1
    8.7. d421 1 a421 1
    9.1. d425 3 a427 2
    9.2. Writing buildlink3.mk files
    d432 1 a432 1 "#id2567670">9.2.1. Anatomy of a buildlink3.mk d436 4 a439 2 "#id2568110">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d444 3 a446 2
    9.3. Writing builtin.mk files
    d451 2 a452 1 "#id2568270">9.3.1. Anatomy of a builtin.mk d456 1 a456 1 "#id2568566">9.3.2. Global preferences for d468 1 a468 1
    10.1. d471 3 a473 3
    10.2. Converting packages to use bsd.options.mk
    d486 1 a486 1
    11.2. d500 1 a500 1
    12.1. d506 1 a506 1 "#id2570798">12.1.1. How to pull in variables d510 1 a510 1 "#id2570882">12.1.2. Restricted d518 1 a518 1 "#id2571260">12.1.4. Handling conflicts with d522 1 a522 1 "#id2571447">12.1.5. Packages that cannot or d526 1 a526 1 "#id2571473">12.1.6. Packages which should not d534 1 a534 1 "#id2571564">12.1.8. How to handle compiler d538 1 a538 1 "#id2571587">12.1.9. How to handle incrementing d543 1 a543 1 "#id2571704">12.1.10. Portability of d548 1 a548 1
    12.2. d554 1 a554 1 "#id2571732">12.2.1. Packages whose distfiles d559 1 a559 1 "#id2571795">12.2.2. How to handle modified d564 1 a564 1
    12.3. d574 1 a574 1 "#id2572350">12.3.2. Using libtool on GNU d579 1 a579 1 "#id2572435">12.3.3. GNU d584 1 a584 1
    12.4. d590 1 a590 1 "#id2572483">12.4.1. CPP d595 1 a595 1
    12.5. d601 1 a601 1 "#id2572516">12.5.1. Package configuration d605 1 a605 1 "#id2572618">12.5.2. User d609 1 a609 1 "#id2572663">12.5.3. Handling d613 1 a613 1 "#id2572746">12.5.4. Creating an account from a d617 1 a617 1 "#id2572876">12.5.5. Installing score d621 1 a621 1 "#id2573057">12.5.6. Packages providing login d625 1 a625 1 "#id2573182">12.5.7. Packages containing perl d629 1 a629 1 "#id2573201">12.5.8. Packages with hardcoded d633 1 a633 1 "#id2573222">12.5.9. Packages installing perl d641 1 a641 1 "#id2573442">12.5.11. Packages installing d645 1 a645 1 "#id2573610">12.5.12. Packages installing d649 1 a649 1 "#id2573661">12.5.13. Packages installing X11 d653 1 a653 1 "#id2573708">12.5.14. Packages installing GTK2 d657 1 a657 1 "#id2573778">12.5.15. Packages installing SGML d661 1 a661 1 "#id2573830">12.5.16. Packages installing d665 1 a665 1 "#id2573969">12.5.17. Packages using d670 1 a670 1
    12.6. d683 1 a683 1
    14.1. d686 1 a686 1
    14.2. d690 1 a690 1
    14.3. d694 1 a694 1
    14.4. d706 1 a706 1
    A.1. d711 1 a711 1
    A.1.1. d714 1 a714 1
    A.1.2. d717 1 a717 1
    A.1.3. d720 3 a722 2
    A.1.4. Checking a package with pkglint
    d726 1 a726 1
    A.2. Steps d752 1 a752 1
    D.1. d755 1 a755 1
    D.2. d776 1 a776 1
    1.1. d795 2 a796 2 "id2494406" id= "id2494406">1.1. Introduction

    d811 5 a815 4 the pkg_* tools so that installation and de-installation, printing of an inventory of all installed packages and retrieval of one-line comments or more verbose descriptions are all simple.

    d826 2 a827 2 class="pkgname">www/apache - The Apache web server

    d834 2 a835 2 class="pkgname">www/mozilla - The Mozilla web browser

    d842 2 a843 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d850 2 a851 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d990 2 a991 2 stored under /usr/pkgsrc.

    d1015 2 a1016 2 too. Distfiles are usually stored below /usr/pkgsrc/distfiles.

    d1034 7 a1040 6 distfile and stuffed together in a single .tgz file so it can be installed on machines of the same machine architecture without the need to recompile. Packages are usually generated in /usr/pkgsrc/packages; there is also an archive on # for root's shell prompt, and a $ for users' shell prompt, assuming they use the C-shell or tcsh.

    d1101 1 a1101 1
    2.1. As d1104 1 a1104 1
    2.2. Via d1107 1 a1107 1
    2.3. Via d1117 1 a1117 1
    3.1. d1120 1 a1120 1
    3.2. d1126 1 a1126 1 "#id2495324">3.2.1. Darwin (Mac OS d1130 1 a1130 1 "#id2495623">3.2.2. FreeBSD
    d1133 1 a1133 1 "#id2496272">3.2.3. Interix d1136 1 a1136 1 "#id2496362">3.2.4. IRIX d1139 1 a1139 1 "#id2496480">3.2.5. OpenBSD d1142 1 a1142 1 "#id2496660">3.2.6. Solaris d1160 1 a1160 1 "#id2496865">4.1.1. Where to get binary d1164 1 a1164 1 "#id2496905">4.1.2. How to use binary d1168 1 a1168 1 "#id2497040">4.1.3. A word of d1173 1 a1173 1
    4.2. d1179 1 a1179 1 "#id2497129">4.2.1. Requirements
    d1182 1 a1182 1 "#id2497149">4.2.2. Fetching d1186 1 a1186 1 "#id2497202">4.2.3. How to build and d1190 1 a1190 1 "#id2498133">4.2.4. Selecting the d1202 1 a1202 1
    5.1. d1205 1 a1205 1
    5.2. d1219 1 a1219 1 "#id2563222">5.3.2. Other environmental d1223 1 a1223 1 "#id2563262">5.3.3. Operation
    d1226 1 a1226 1 "#id2563469">5.3.4. What it does d1229 1 a1229 1 "#id2563526">5.3.5. Disk space d1233 1 a1233 1 "#id2563553">5.3.6. Setting up a sandbox for d1237 1 a1237 1 "#id2563916">5.3.7. Building a partial set of d1242 1 a1242 1
    5.4. d1249 1 a1249 1 "#id2564042">5.4.1. Example of d1261 1 a1261 1
    6.1. Is d1265 1 a1265 1
    6.2. d1272 1 a1272 1
    6.4. How d1275 1 a1275 1
    6.5. How d1279 1 a1279 1
    6.6. How d1282 1 a1282 1
    6.7. How d1285 3 a1287 2
    6.8. How do I tell make fetch to do passive d1290 1 a1290 1
    6.9. How d1293 4 a1296 3
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc mean?
    d1298 3 a1300 3
    6.11. What does Could not find bsd.own.mk mean?
    d1302 1 a1302 1
    6.12. d1332 1 a1332 1
    2.1. As d1335 1 a1335 1
    2.2. Via d1338 1 a1338 1
    2.3. Via d1352 1 a1352 1 "id2495052" id="id2495052">2.1. As tar d1361 2 a1362 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1370 1 a1370 1 "id2495069" id="id2495069">2.2. Via d1383 6 a1388 6

    in it, see the examples in /usr/share/examples/supfiles, and that the /usr/pkgsrc directory exists. Then, simply run sup -v /path/to/your/supfile.

    d1396 1 a1396 1 "id2495101" id="id2495101">2.3. Via d1408 17 a1424 15 % setenv CVSROOT anoncvs@@anoncvs.NetBSD.org:/cvsroot % setenv CVS_RSH ssh % cd /usr % cvs checkout -P pkgsrc

    This will create the pkgsrc directory in your /usr, and all the package source will be stored under /usr/pkgsrc. To update pkgsrc after the initial checkout, make sure you have CVS_RSH set as above, then do:

    d1426 4 a1429 4 % cd /usr/pkgsrc % cvs -q update -dP d1453 1 a1453 1
    3.1. d1456 1 a1456 1
    3.2. d1461 1 a1461 1
    3.2.1. d1464 1 a1464 1
    3.2.2. d1467 1 a1467 1
    3.2.3. d1470 1 a1470 1
    3.2.4. d1473 1 a1473 1
    3.2.5. d1476 1 a1476 1
    3.2.6. d1488 2 a1489 2 "id2495211" id= "id2495211">3.1. Bootstrapping pkgsrc

    d1537 6 a1542 6 # env CVS_RSH=ssh cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc # cd pkgsrc/bootstrap # ./bootstrap d1548 7 a1554 6 pkgsrc before bootstrapping. The given bootstrap command will use the defaults of /usr/pkg for the prefix where programs will be installed in, and /var/db/pkg for the package database d1571 1 a1571 1 "id2495318" id="id2495318">3.2. Platform d1584 2 a1585 2

    3.2.1. Darwin (Mac OS d1639 8 a1646 8 # cd pkgsrc/bootstrap # ./ufsdiskimage create ~/Documents/NetBSD 512 # megabytes - season to taste # ./ufsdiskimage mount ~/Documents/NetBSD # sudo chown `id -u`:`id -g` /Volumes/NetBSD d1663 10 a1672 10

    By default, /usr will be on your root file system, normally HFS+. It is possible to use the default prefix of /usr/pkg by symlinking /usr/pkg to a directory on a UFS file system. Obviously, another symlink is required if you want to place the package database directory outside the prefix. e.g.

    d1674 2 a1675 2 # ./bootstrap --pkgdbdir=/usr/pkg/pkgdb --pkgsrcdir=/Volumes/ufs/pkgsrc d1681 2 a1682 2 /Volumes/<volume name> when the machine boots. If you are d1717 2 a1718 2

    3.2.2. FreeBSD

    d1734 1 a1734 1 /var/db/pkg. It is d1736 2 a1737 2 location (e.g. /usr/pkgdb) by using the d1746 10 a1755 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d1760 5 a1764 4

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script.

    d1774 2 a1775 2

    3.2.3. Interix

    d1945 2 a1946 2

    3.2.4. IRIX

    d1953 3 a1955 3 the CC environment variable according to your preference. If you do not have a license for the MIPSpro compiler suite, you can d1972 3 a1974 3 conflicting CFLAGS in your environment or the /etc/mk.conf. Particularly, make sure d1976 2 a1977 2 or vice versa. Check your /etc/compiler.defaults!

    d1981 1 a1981 1 WRKOBJDIR to a local d1989 2 a1990 2 Please see pkgsrc/mk/bsd.pkg.defaults.mk and, of d1998 2 a1999 2

    3.2.5. OpenBSD

    d2014 1 a2014 1 /var/db/pkg. It is d2016 2 a2017 2 location (e.g. /usr/pkgdb) by using the d2026 10 a2035 10 # cd /usr/sbin # mv pkg_add pkg_add.orig # mv pkg_create pkg_create.orig # mv pkg_delete pkg_delete.orig # mv pkg_info pkg_info.orig d2040 7 a2046 6

    An example /etc/mk.conf file will be placed in /etc/mk.conf.example file when you use the bootstrap script. OpenBSD's make program uses /etc/mk.conf as well. You can d2065 2 a2066 2

    3.2.6. Solaris

    d2110 2 a2111 2

    3.2.6.1. If you are using d2125 3 a2127 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2132 2 a2133 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2140 2 a2141 2

    3.2.6.2. If you are using d2172 4 a2175 4

    You should set CC, CXX and optionally, CPP in /etc/mk.conf, eg.

    d2190 4 a2193 3 PATH. This includes /usr/ccs/{bin,lib} and eg. /usr/pkg/{bin,sbin}.

    d2218 1 a2218 1
    4.1.1. d2221 1 a2221 1
    4.1.2. d2224 1 a2224 1
    4.1.3. d2229 1 a2229 1
    4.2. d2234 1 a2234 1
    4.2.1. d2237 1 a2237 1
    4.2.2. d2240 1 a2240 1
    4.2.3. d2243 1 a2243 1
    4.2.4. d2270 2 a2271 2

    4.1.1. Where to get binary d2278 5 a2282 5 and its mirrors in the directory /pub/NetBSD/packages for anonymous FTP access. Please pick the right subdirectory there as indicated by uname -p. In that directory, there is a d2284 6 a2289 5 All which includes the actual binaries in .tgz files. The category subdirectories use symbolic links to those files (this is the same directory layout as in /usr/pkgsrc/packages).

    d2293 2 a2294 2 somewhere else, probably somewhere below /cdrom. Please consult your CDROMs d2302 2 a2303 2

    4.1.2. How to use binary d2311 2 a2312 2 following command (be sure tosu to root first):

    d2314 2 a2315 2 # pkg_add /path/to/package.tgz d2320 3 a2322 2 you can do this automatically by giving pkg_add an FTP URL:

    d2324 2 a2325 2 # pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All/package.tgz d2330 2 a2331 2 running uname -rp.

    d2338 3 a2340 3 /usr/pkg/bin in your PATH so you can actually start the just installed program.

    d2347 2 a2348 2

    4.1.3. A word of d2371 1 a2371 1 "id2497051" id="id2497051">4.2. Building d2386 2 a2387 2

    4.2.1. Requirements

    d2406 2 a2407 2

    4.2.2. Fetching d2423 7 a2429 7 a look at pkgsrc/mk/bsd.pkg.defaults.mk to find some examples - in particular, look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY definitions. This may save some of your bandwidth and time.

    d2433 1 a2433 1 editing the /etc/mk.conf d2438 4 a2441 4 make fetch-list will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles.

    d2448 2 a2449 2

    4.2.3. How to build and d2457 2 a2458 2 relevant directory and running make. For example, type

    d2460 4 a2463 3 % cd misc/figlet % make d2469 2 a2470 2 # make install d2487 4 a2490 3 the packages tree - /usr/pkg. Should this not conform to your tastes, set the LOCALBASE variable in your d2492 3 a2494 3 your packages tree. So, to use /usr/local, set LOCALBASE=/usr/local in your d2497 8 a2504 7 with other programs (ie, do not try and use LOCALBASE=/usr). Also, you should not try to add any of your own files or directories (such as src/, obj/, or pkgsrc/) below the LOCALBASE tree. This is to prevent d2509 2 a2510 2

    Some packages look in /etc/mk.conf to alter some d2512 8 a2519 6 pkgsrc/mk/bsd.pkg.defaults.mk to get an overview of what will be set there by default. Environment variables such as LOCALBASE can be set in /etc/mk.conf to save having to remember to set them each time you want to use pkgsrc.

    d2535 4 a2538 3 with PKG_DEBUG_LEVEL=2, then a huge amount of information will be displayed. For example,

    d2540 2 a2541 1 make patch PKG_DEBUG_LEVEL=2 d2551 4 a2554 4 make(1) definition, then the VARNAME definition should be used, in conjunction with the show-var target. e.g. to show the expansion of the DISTFILES:

    d2561 2 a2562 2 % make show-var VARNAME=LOCALBASE d2564 1 a2564 1 % d2580 6 a2585 5 make package. The list of remote FTP sites searched is kept in the variable BINPKG_SITE, which defaults to ftp.NetBSD.org. Any flags that should be added to
    BIN_INSTALL_FLAGS. See pkgsrc/mk/bsd.pkg.defaults.mk for more details.

    d2595 2 a2596 2 has a non-standard setting for LOCALBASE, be sure to set that before d2602 5 a2606 5 default LOCALBASE of /usr/pkg, and that you should not install any if you use a non-standard LOCALBASE.

    d2613 2 a2614 2

    4.2.4. Selecting the d2626 2 a2627 2
    PKGSRC_COMPILER:
    d2637 1 a2637 1

    distcc: d2642 1 a2642 1

    ccache: d2647 2 a2648 2

    gcc: GNU C/C++ Compiler

    d2652 1 a2652 1

    mipspro: d2658 1 a2658 1

    mipspro: d2663 1 a2663 1

    sunpro: d2671 8 a2678 7 "quote">gcc”. You can use ccache and/or distcc with an appropriate PKGSRC_COMPILER setting, e.g. “ccache gcc”. This d2683 2 a2684 2

    GCC_REQD:
    d2714 1 a2714 1
    5.1. d2717 1 a2717 1
    5.2. d2730 1 a2730 1
    5.3.2. d2733 1 a2733 1
    5.3.3. d2736 1 a2736 1
    5.3.4. d2739 1 a2739 1
    5.3.5. d2742 1 a2742 1
    5.3.6. d2746 1 a2746 1
    5.3.7. d2751 1 a2751 1
    5.4. d2757 1 a2757 1
    5.4.1. d2769 1 a2769 1 "id2563004" id="id2563004">5.1. Building a d2788 3 a2790 2 appropriate directory in pkgsrc, and run make package:

    d2792 4 a2795 4 # cd misc/figlet # make package d2800 4 a2803 4 was installed. You can then use the pkg_* tools to manipulate it. Binary packages are created by default in /usr/pkgsrc/packages, in the form of a d2810 1 a2810 1 class="pkgname">misc/figlet example.

    d2823 1 a2823 1 "id2563082" id="id2563082">5.2. Settings d2880 3 a2882 3

    You may want to set things in /etc/mk.conf. Look at pkgsrc/mk/bsd.pkg.defaults.mk for d2884 4 a2887 4 ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts 5.3.1.2. build.conf

    d2912 4 a2915 4

    In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the d2923 2 a2924 1 cvs update.

    d2931 3 a2933 3

    5.3.1.3. pre-build.local

    d2940 7 a2946 7 pre-build stage. If the file pre-build.local exists in /usr/pkgsrc/mk/bulk it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line:

    d2948 3 a2950 3 # echo "I do not have enough disk space to build this pig." \ > pkgsrc/games/crafty-book-enormous/$BROKENF d2963 2 a2964 2

    5.3.2. Other environmental d2970 1 a2970 1

    As /usr/pkg will be d2973 4 a2976 3 drop it into /usr/local/bin (and adjust your login shell in the passwd file), or (re-)install it via /etc/rc.local, so you can d2987 1 a2987 1 rc.local:

    d3005 2 a3006 2

    5.3.3. Operation

    d3025 2 a3026 2 /usr/local, etc. then become root and type:

    d3028 4 a3031 4 # cd /usr/pkgsrc # sh mk/bulk/build d3038 2 a3039 2 # sh mk/bulk/build restart d3044 2 a3045 2 specified by FTP in the build.conf file.

    d3052 2 a3053 2

    5.3.4. What it does

    d3086 5 a3090 5 directory specified in the build.conf file named broken.html, a short version of that report will also be mailed to the build's admin.

    d3096 9 a3104 9 compiled in /usr/pkgsrc/.broken (or .../.broken.${MACHINE} if OBJMACHINE is set), individual build logs of broken builds can be found in the package's directory. These files are used by the bulk-targets to mark broken builds to not waste time trying to rebuild them, and they can be used to debug these broken package builds later.

    d3111 2 a3112 2

    5.3.5. Disk space d3154 2 a3155 2

    5.3.6. Setting up a sandbox d3167 7 a3173 7 sandbox, e.g. /usr/sandbox. After extracting all the sets from a NetBSD installation or doing a make distribution DESTDIR=/usr/sandbox in /usr/src/etc, be sure the following items are present and properly configured:

    d3180 2 a3181 2 # cp /netbsd /usr/sandbox d3186 1 a3186 1

    /dev/*

    d3188 2 a3189 2 # cd /usr/sandbox/dev ; sh MAKEDEV all d3194 1 a3194 1

    /etc/resolv.conf d3198 1 a3198 2 class="pkgname">security/smtpd and mail):

    d3200 2 a3201 2 # cp /etc/resolv.conf /usr/sandbox/etc d3209 2 a3210 2 # cp /etc/mail/sendmail.cf /usr/sandbox/etc/mail d3215 2 a3216 2

    /etc/localtime (for security/smtpd):

    d3221 2 a3222 2 # ln -sf /usr/share/zoneinfo/UTC /usr/sandbox/etc/localtime d3227 1 a3227 1

    /usr/src (system d3231 4 a3234 6 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3236 4 a3239 4 # ln -s ../disk1/cvs . # ln -s cvs/src-1.6 src d3244 3 a3246 2

    Create /var/db/pkg (not part of default install):

    d3248 2 a3249 2 # mkdir /usr/sandbox/var/db/pkg d3254 2 a3255 2

    Create /usr/pkg (not part of default install):

    d3257 2 a3258 2 # mkdir /usr/sandbox/usr/pkg d3263 2 a3264 2

    Checkout pkgsrc via cvs into /usr/sandbox/usr/pkgsrc:

    d3266 4 a3269 4 # cd /usr/sandbox/usr # cvs -d anoncvs@@anoncvs.NetBSD.org:/cvsroot checkout -d -P pkgsrc d3278 5 a3282 5

    Make /usr/sandbox/usr/pkgsrc/packages and .../distfiles point somewhere appropriate. NFS- and/or nullfs-mounts may come in handy!

    d3286 3 a3288 2

    Edit /etc/mk.conf, see Adjust mk/bulk/build.conf to suit your d3300 5 a3304 5

    If you have set CVS_USER in build.conf, make sure that account exists and can do a cvs ${CVS_FLAGS} update d3313 4 a3316 4 # cd /usr/sandbox/usr/pkgsrc # sh mk/bulk/do-sandbox-build d3322 2 a3323 2 be in /usr/sandbox/usr/pkgsrc/packages d3331 2 a3332 2

    5.3.7. Building a partial d3339 6 a3344 6 packages in pkgsrc, the pkgsrc/mk/bulk/build script may be used to build a subset of the packages contained in pkgsrc. By setting defining SPECIFIC_PKGS in /etc/mk.conf, the variables

    d3372 1 a3372 1 SPECIFIC_PKGS in a chroot d3385 1 a3385 1 "id2564027" id="id2564027">5.4. Creating a d3397 6 a3402 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3408 2 a3409 2

    5.4.1. Example of d3417 4 a3420 4 that the binary packages are left in /usr/pkgsrc/packages/All and that sufficient disk space exists in /u2 to hold the ISO 9660 images.

    d3422 6 a3427 6 # mkdir /u2/images # pkg_add /usr/pkgsrc/packages/All/cdpack # cdpack /usr/pkgsrc/packages/All /u2/images d3431 2 a3432 2 (COPYRIGHT, README, etc.) on each CD in the d3436 14 a3449 14 # mkdir /tmp/common # echo "This is a README" > /tmp/common/README # echo "Another file" > /tmp/common/COPYING # mkdir /tmp/common/bin # echo "#!/bin/sh" > /tmp/common/bin/myscript # echo "echo Hello world" >> /tmp/common/bin/myscript # chmod 755 /tmp/common/bin/myscript d3454 2 a3455 2 # cdpack -x /tmp/common /usr/pkgsrc/packages/All /u2/images d3458 4 a3461 4

    Each image will contain README, COPYING, and bin/myscript in their root d3482 1 a3482 1

    6.1. Is d3486 1 a3486 1
    6.2. d3493 1 a3493 1
    6.4. How d3496 1 a3496 1
    6.5. How d3499 1 a3499 1
    6.6. How d3502 1 a3502 1
    6.7. How d3505 4 a3508 2
    6.8. How do I tell make fetch to do passive FTP?
    d3510 1 a3510 1
    6.9. How d3513 3 a3515 2
    6.10. What does Don't know how to make /usr/share/tmac/tmac.andoc d3518 3 a3520 2
    6.11. What does Could not find bsd.own.mk mean?
    d3522 1 a3522 1
    6.12. d3544 1 a3544 1 "id2564301" id="id2564301">6.1. Is there a d3550 2 a3551 2

    Yes, d3555 2 a3556 2 % echo subscribe tech-pkg | mail majordomo@@NetBSD.org d3569 1 a3569 1 "id2564331" id="id2564331">6.2. Where's d3576 2 a3577 2 find a pkgviews User's guide in pkgsrc/mk/buildlink3/PKGVIEWS_UG.

    d3592 1 a3592 1

    The pkgsrc/pkgtools d3608 2 a3609 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3623 2 a3624 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3631 2 a3632 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3639 2 a3640 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3647 4 a3650 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3664 3 a3666 4 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3673 5 a3677 5 class="pkgname">pkgtools/dfdisk: adds extra functionality to pkgsrc, allowing it to fetch distfiles from multiple locations. It currently supports the following methods: multiple CD-ROMs and network FTP/HTTP connections.

    d3684 2 a3685 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3692 3 a3694 3 class="pkgname">devel/cpuflags: will determine the best compiler flags to optimise code for your current CPU and compiler.

    d3708 3 a3710 4 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3717 3 a3719 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3726 2 a3727 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3734 5 a3738 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3745 2 a3746 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3760 3 a3762 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d3769 5 a3773 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d3780 2 a3781 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d3795 3 a3797 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d3804 2 a3805 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d3812 2 a3813 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d3824 1 a3824 1 "id2564584" id="id2564584">6.4. How to use d3834 1 a3834 1 target="_top">this message for more details.

    d3842 1 a3842 1 "id2564596" id="id2564596">6.5. How can I d3849 5 a3853 4 system's own X11 (/usr/X11R6, /usr/openwin, ...), you will have to add the following lines into mk.conf:

    d3865 1 a3865 1 "id2564624" id="id2564624">6.6. How can I d3872 5 a3876 4 system's own X11 (/usr/X11R6, /usr/openwin, ...) you will have to add the following lines into mk.conf:

    d3888 1 a3888 1 "id2564651" id="id2564651">6.7. How to d3913 3 a3915 3 "id2564665" id="id2564665">6.8. How do I tell make fetch to do passive FTP?

    d3921 3 a3923 3 distfiles. From bsd.pkg.mk, FETCH_CMD is assigned the first available command from the following list:

    d3930 1 a3930 1 /usr/bin/ftp, which d3934 2 a3935 2 /etc/mk.conf file: PASSIVE_FETCH=1.

    d3937 3 a3939 3

    Having that option present will prevent /usr/bin/ftp from falling back to active transfers.

    d3947 1 a3947 1 "id2564785" id="id2564785">6.9. How to d3955 3 a3957 2 a make fetch. There is an archive of distfiles on The answer here is to do a make fetch-list in /usr/pkgsrc or one of it's d3968 1 a3968 1 forget to set FETCH_CMD to d3973 6 a3978 6 % cd /usr/pkgsrc % make fetch-list FETCH_CMD=wget DISTDIR=/tmp/distfiles >/tmp/fetch.sh % scp /tmp/fetch.sh work:/tmp d3983 2 a3984 2 % sh /tmp/fetch.sh d3987 2 a3988 2

    then tar up /tmp/distfiles and take it home.

    d3994 3 a3996 2 make fetch-list approach, or fetch the distfiles directly by running:

    d3998 2 a3999 2 % make mirror-distfiles d4002 3 a4004 3

    If you even decide to ignore NO_{SRC,BIN}_ON_{FTP,CDROM}, then you can get everything by running:

    d4006 2 a4007 2 % make fetch NO_SKIP=yes d4016 1 a4016 1 "id2564993" id="id2564993">
    6.10. What does d4026 7 a4032 8 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d4037 4 a4040 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d4048 1 a4048 1 "id2565031" id="id2565031">6.11. What does d4055 4 a4058 4

    You didn't install the compiler set, comp.tgz, when you installed your NetBSD machine. Please get it and install it, by extracting it in /:

    d4060 4 a4063 3 # cd / # tar --unlink -zxvpf .../comp.tgz d4066 4 a4069 4

    comp.tgz is part of every NetBSD release. Get the one that corresponds to your release (determine via uname -r).

    d4077 1 a4077 1 "id2565089" id="id2565089">6.12. Using d4091 3 a4093 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4114 4 a4117 4

    The global variable PKG_SYSCONFBASE (and some others) can be set by the system administrator in /etc/mk.conf to define the place where d4122 2 a4123 2 go to $PREFIX/share should go there.

    d4126 6 a4131 6 (bsd.pkg.mk contains more information). PKG_SYSCONFDIR is where the configuration files for a package may be found (that is, the full path, e.g. /etc or /usr/pkg/etc). This value may be d4137 2 a4138 2

    PKG_SYSCONFBASE is the main config directory under which all package d4140 4 a4143 4 typically want to set it to /etc, or accept the default location of $PREFIX/etc.

    d4147 3 a4149 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d4151 2 a4152 2 found. Defaults to ${SYSCONFBASE}.

    d4156 9 a4164 9

    PKG_SYSCONFVAR is the special suffix used to distinguish any overriding values for a particular package (see next item). It defaults to ${PKGBASE}, but for a collection of related packages that should all have the same PKG_SYSCONFDIR value, it can be set in each of the package Makefiles to a common value.

    d4168 6 a4173 6

    PKG_SYSCONFDIR.${PKG_SYSCONFVAR} overrides the value of ${PKG_SYSCONFDIR} for packages with the same value for PKG_SYSCONFVAR.

    d4176 6 a4181 5 want to set PKG_SYSCONFVAR to “kde” so admins can set PKG_SYSCONFDIR.kde in /etc/mk.conf to define where to d4195 3 a4197 2 share/examples/${PKGNAME} so PLIST can register them.

    d4200 6 a4205 5 place (under the share/examples directory) the variable CONF_FILES should be set to copy them into PKG_SYSCONFDIR. The contents of this variable is formed by pairs of filenames; the first d4207 2 a4208 2 examples directory (registered by PLIST) and the second element specifies d4211 5 a4215 5 INSTALL/DEINSTALL scripts which are created automatically. The package Makefile must also set USE_PKGINSTALL=YES to use these d4218 1 a4218 1 variable PKG_CONFIG prior to d4228 7 a4234 6 files inside EGDIR, which are registered by PLIST. After that, the variable CONF_FILES lists the installed file first and then the target file. Users will also get an automatic message when files are installed using this method.

    d4260 2 a4261 2 class="pkgname">security/audit-packages package. It has two components:

    d4276 2 a4277 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4349 2 a4350 1 "#components.Makefile">7.1. Makefile
    d4353 2 a4354 1 "#components.distinfo">7.2. distinfo d4359 1 a4359 1
    7.4. d4366 2 a4367 2
    7.6. work*
    d4369 2 a4370 2
    7.7. files/*
    d4379 1 a4379 1
    8.1. RCS d4382 3 a4384 2
    8.2. Semi-automatic PLIST generation
    d4387 2 a4388 1 Tweaking output of make print-PLIST d4393 1 a4393 1
    8.5. d4396 3 a4398 2
    8.6. Changing PLIST source with PLIST_SRC
    d4400 1 a4400 1
    8.7. d4415 1 a4415 1
    9.1. d4418 3 a4420 2
    9.2. Writing buildlink3.mk files
    d4425 1 a4425 1 "#id2567670">9.2.1. Anatomy of a buildlink3.mk d4429 4 a4432 2 "#id2568110">9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d4437 3 a4439 2
    9.3. Writing builtin.mk files
    d4444 2 a4445 2 "#id2568270">9.3.1. Anatomy of a builtin.mk file d4448 1 a4448 1 "#id2568566">9.3.2. Global preferences for native d4460 1 a4460 1
    10.1. d4463 3 a4465 3
    10.2. Converting packages to use bsd.options.mk
    d4477 1 a4477 1
    11.2. d4491 1 a4491 1
    12.1. d4497 1 a4497 1 "#id2570798">12.1.1. How to pull in variables d4501 1 a4501 1 "#id2570882">12.1.2. Restricted d4509 1 a4509 1 "#id2571260">12.1.4. Handling conflicts with d4513 1 a4513 1 "#id2571447">12.1.5. Packages that cannot or d4517 1 a4517 1 "#id2571473">12.1.6. Packages which should not be d4525 1 a4525 1 "#id2571564">12.1.8. How to handle compiler d4529 1 a4529 1 "#id2571587">12.1.9. How to handle incrementing d4534 1 a4534 1 "#id2571704">12.1.10. Portability of d4539 1 a4539 1
    12.2. d4545 1 a4545 1 "#id2571732">12.2.1. Packages whose distfiles d4550 1 a4550 1 "#id2571795">12.2.2. How to handle modified d4555 1 a4555 1
    12.3. d4565 1 a4565 1 "#id2572350">12.3.2. Using libtool on GNU d4570 1 a4570 1 "#id2572435">12.3.3. GNU d4575 1 a4575 1
    12.4. d4581 1 a4581 1 "#id2572483">12.4.1. CPP defines
    d4585 1 a4585 1
    12.5. d4591 1 a4591 1 "#id2572516">12.5.1. Package configuration d4595 1 a4595 1 "#id2572618">12.5.2. User d4599 1 a4599 1 "#id2572663">12.5.3. Handling d4603 1 a4603 1 "#id2572746">12.5.4. Creating an account from a d4607 1 a4607 1 "#id2572876">12.5.5. Installing score d4611 1 a4611 1 "#id2573057">12.5.6. Packages providing login d4615 1 a4615 1 "#id2573182">12.5.7. Packages containing perl d4619 1 a4619 1 "#id2573201">12.5.8. Packages with hardcoded d4623 1 a4623 1 "#id2573222">12.5.9. Packages installing perl d4631 1 a4631 1 "#id2573442">12.5.11. Packages installing GConf2 d4635 1 a4635 1 "#id2573610">12.5.12. Packages installing d4639 1 a4639 1 "#id2573661">12.5.13. Packages installing X11 d4643 1 a4643 1 "#id2573708">12.5.14. Packages installing GTK2 d4647 1 a4647 1 "#id2573778">12.5.15. Packages installing SGML or d4651 1 a4651 1 "#id2573830">12.5.16. Packages installing d4655 1 a4655 1 "#id2573969">12.5.17. Packages using d4660 1 a4660 1
    12.6. d4673 1 a4673 1
    14.1. d4676 1 a4676 1
    14.2. d4680 1 a4680 1
    14.3. d4683 1 a4683 1
    14.4. d4706 2 a4707 1 "#components.Makefile">7.1. Makefile
    d4710 2 a4711 1 "#components.distinfo">7.2. distinfo d4716 1 a4716 1
    7.4. Other d4723 2 a4724 2
    7.6. work*
    d4726 2 a4727 2
    7.7. files/*
    d4741 2 a4742 2 "components.Makefile">7.1. Makefile

    d4748 2 a4749 2 package are all controlled by the package's Makefile.

    d4751 22 a4772 22

    There is a Makefile for each package. This file includes the standard bsd.pkg.mk file (referenced as ../../mk/bsd.pkg.mk), which sets all the definitions and actions necessary for the package to compile and install itself. The mandatory variables are the DISTNAME which specifies the base name of the distribution file to be downloaded from the site on the Internet, MASTER_SITES which specifies that site, CATEGORIES which denotes the categories into which the package falls, PKGNAME which is the name of the package, the MAINTAINER's name, and the COMMENT variable, which should contain a one-line description of the package (the package name should not appear, it will be added automatically). The maintainer variable is there so that anyone who quibbles with the (always completely correct) decisions taken by the guy who maintains the package can complain vigorously, or send chocolate as a sign of appreciation.

    d4774 2 a4775 2

    The MASTER_SITES may be set to one of the predefined sites:

    d4811 3 a4813 3

    MASTER_SITE_SUBDIR has been deprecated and should no longer be used.

    d4816 4 a4819 4

    If the package has multiple DISTFILES or multiple PATCHFILES from different sites, set SITES_foo to a list of URI's d4830 2 a4831 2

    Note that the normal default setting of DISTFILES must be made explicit if you d4836 2 a4837 2 CATEGORIES. If more than one is used, they need to be separated by spaces:

    d4854 4 a4857 4

    Add MANCOMPRESSED if manpages are installed in compressed form by the package; see comment in bsd.pkg.mk.

    d4861 1 a4861 1

    Replace /usr/local d4876 3 a4878 3

    Set MAINTAINER to be yourself. If you really can't maintain the package for future updates, set it to tech-pkg@@NetBSD.org>.

    d4885 3 a4887 3 exists, add the variable HOMEPAGE right after MAINTAINER. The value of this d4892 2 a4893 2

    Be sure to set the COMMENT variable to a short d4907 2 a4908 2 "components.distinfo">7.2. distinfo

    d4919 5 a4923 4 security hole. It is generated using the make makesum command. The digest algorithm used was, at one stage, md5, but that was felt lacking compared to sha1, and so sha1 is now the default d4928 10 a4937 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d4943 4 a4946 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d4949 3 a4951 2 patches found in the patches/ directory (see distinfo file. This is a message digest/checksum of all lines in the patch file except the NetBSD RCS Id. This file is generated by invoking make makepatchsum (or make mps if you're in a hurry).

    d4984 2 a4985 2 patch-aa is applied before patch-ab, etc.

    d4987 6 a4992 5

    The patch-* files should be in diff -bu format, and apply without a fuzz to avoid problems. (To force patches to apply with fuzz you can set PATCH_FUZZ_FACTOR=-F2). Furthermore, do d5005 2 a5006 2 CVS tree. Use the pkgdiff from the pkgtools/pkgdiff package to avoid these problems.

    d5013 11 a5023 10 mkpatches from the same package to make a whole set of patches. You just have to backup files before you edit them to filename.orig, e.g. with cp -p filename filename.orig or, easier, by using pkgvi again from the same package. If you upgrade a package this way, you can easily compare the new set of patches with the previously existing one with patchdiff.

    d5027 3 a5029 2 make makepatchsum command, see .

    d5034 2 a5035 2 other maintainers can be listed in $PATCHFILES.

    d5039 2 a5040 2 pkgsrc tree in the $LOCALPATCHES directory. The directory d5044 7 a5050 6 stored inside these dirs (also known as $LOCALPATCHES/$PKGPATH). For example if you want to keep a private patch for pkgsrc/graphics/png, keep it in $LOCALPATCHES/graphics/png/mypatch. All files in the named directory are expected to be patch d5060 1 a5060 1 "id2566134" id="id2566134">
    7.4. Other d5068 2 a5069 2
    DESCR
    d5080 2 a5081 2
    PLIST
    d5111 2 a5112 2
    INSTALL
    d5123 2 a5124 2 commands in PLIST. See DEINSTALL d5155 2 a5156 2
    MESSAGE
    d5164 3 a5166 3 easily by using MESSAGE_SUBST in the package's Makefile:

    d5172 2 a5173 2 "quote">somevalue” in MESSAGE.

    d5184 3 a5186 2 "id2566396" id="id2566396">
    7.6. work*

    d5191 6 a5196 5

    When you type make the distribution files are unpacked into this directory. It can be removed by running make clean. Besides the sources, this directory is also used to keep various timestamp d5202 1 a5202 1 WRKSRC accordingly, e.g. d5205 2 a5206 2 class="pkgname">editors/sam again, but the quick answer is:

    d5211 2 a5212 2

    Please note that the old NO_WRKSUBDIR has been deprecated and d5214 6 a5219 5 a subdir with the name of DISTNAME but some different name, set WRKSRC to point to the proper name in ${WRKDIR}. See lang/tcl and x11/tk for examples, and here is another one:

    d5231 4 a5234 4 work by default. If the same pkgsrc tree should be used on several different platforms, the variable OBJMACHINE can be set in /etc/mk.conf to d5236 2 a5237 2 work.i386 or work.sparc.

    d5245 3 a5247 2 "id2566484" id="id2566484">7.7. files/*

    d5258 3 a5260 3 diff the file against /dev/null and use the patch mechanism to manage the creation of this file.

    d5278 1 a5278 1
    8.1. RCS d5281 3 a5283 2
    8.2. Semi-automatic PLIST generation
    d5286 2 a5287 1 Tweaking output of make print-PLIST d5292 1 a5292 1
    8.5. d5295 3 a5297 2
    8.6. Changing PLIST source with PLIST_SRC
    d5299 1 a5299 1
    8.7. d5307 1 a5307 1

    The PLIST file contains a d5310 3 a5312 3 package (relative to the ${PREFIX} directory it's been installed in) plus some additional statements - see the PLIST file (or files, see below!).

    d5325 1 a5325 1 "id2566538" id="id2566538">8.1. RCS d5332 1 a5332 1 PLIST file you write:

    d5343 3 a5345 3 "id2566621" id= "id2566621">8.2. Semi-automatic PLIST generation

    d5350 4 a5353 4

    You can use the make print-PLIST command to output a PLIST that matches any new files since the package was extracted. See make print-PLIST

    d5376 14 a5389 14 you may have noticed that make print-PLIST outputs a set of @@comments instead of real @@dirrm lines. You can also do this for specific directories and files, so that the results of that command are very close to reality. This helps a lot during the update of packages.

    The PRINT_PLIST_AWK variable takes a set of AWK patterns and actions that are used to filter the output of print-PLIST. You can append any chunk of AWK scripting you like to it, but be careful with d5392 2 a5393 2

    For example, to get all files inside the libdata/foo directory removed from the d5400 1 a5400 1

    And to get all the @@dirrm d5402 1 a5402 1 converted to @@comments:

    d5426 3 a5428 3
    ${MACHINE_ARCH}, ${MACHINE_GNU_ARCH}
    d5436 8 a5443 8 “${MACHINE_ARCH}” will be replaced by what uname -p gives. The same is done if the string ${MACHINE_GNU_ARCH} is embedded in PLIST somewhere - use this on packages that have GNU autoconf created configure scripts.

    d5450 4 a5453 4 "quote">$ARCH” that was replaced by the output of uname -m, but that's no d5458 4 a5461 4
    ${OPSYS}, ${LOWER_OPSYS}, ${OS_VERSION}
    d5466 2 a5467 2 variables in the PLIST:

    d5472 4 a5475 4

    ${OPSYS} - output of “uname -s

    d5479 4 a5482 3

    ${LOWER_OPSYS} - lowercase common name (eg. “solaris”)

    d5486 4 a5489 4

    ${OS_VERSION} - “uname -r

    d5495 2 a5496 2
    ${PKGLOCALEDIR}
    d5506 2 a5507 2 in share or lib by default.

    d5513 2 a5514 2 default, please look in bsd.pkg.mk (and search for MESSAGE_SUBST (see
    8.5. Manpage-compression

    d5545 11 a5555 11 MANZ is set (in bsd.own.mk), and uncompressed otherwise. To handle this in the PLIST file, the suffix “.gz” is appended/removed automatically for manpages according to MANZ and MANCOMPRESSED being set or not, see above for details. This modification of the PLIST file is done on a copy of it, not PLIST itself.

    d5563 3 a5565 3 "id2566916" id="id2566916">8.6. Changing PLIST source with PLIST_SRC d5570 4 a5573 4

    To use one or more files as source for the PLIST used in generating the binary package, set the variable PLIST_SRC to the names of that file(s). d5583 1 a5583 1 "id2566933" id="id2566933">8.7. Platform d5597 1 a5597 1

    PLIST.common

    d5601 1 a5601 1

    PLIST.${OPSYS}

    d5605 2 a5606 1

    PLIST.common_end

    d5611 6 a5616 6

    If PLIST.${OPSYS} exists, these files are used instead of PLIST. This allows packages which behave in this way to be handled gracefully. Manually overriding PLIST_SRC for other more exotic uses is also possible.

    d5661 3 a5663 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d5677 2 a5678 2 % cd .../pkgsrc % ls -d */*-dirs d5683 2 a5684 2 USE_DIRS variable takes a list of package names (without the “share/applications, it should have the following line in it:

    d5697 4 a5700 3

    After regenerating the PLIST using make print-PLIST, you should get the right (commented out) lines.

    d5702 2 a5703 2

    Note that, even if your package is using $X11BASE, it must not depend on the d5705 2 a5706 2 part and pkgsrc (in particular, mk/dirs.mk) will take care of it.

    d5725 1 a5725 1
    9.1. d5728 3 a5730 2
    9.2. Writing buildlink3.mk files
    d5734 1 a5734 1
    9.2.1. d5737 5 a5741 2
    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk d5746 3 a5748 2
    9.3. Writing builtin.mk files
    d5752 3 a5754 2
    9.3.1. Anatomy of a builtin.mk file
    d5756 1 a5756 1
    9.3.2. d5773 3 a5775 3 into BUILDLINK_DIR, which by default is a subdirectory of WRKDIR.

    d5780 9 a5788 8 the normal compiler tools that translate -I${LOCALBASE}/include and -L${LOCALBASE}/lib into references to BUILDLINK_DIR. The wrapper scripts also make native compiler on some operating systems look like GCC, so that packages that expect GCC won't require modifications to build with those native compilers.

    d5796 3 a5798 3 normal system header and library paths, e.g. /usr/include, /usr/lib, etc., are always searched -- d5807 1 a5807 1 "id2567137" id="id2567137">
    9.1. Converting d5821 3 a5823 2

    Set USE_BUILDLINK3 to “yes”.

    d5830 2 a5831 2 sure is the check ${WRKDIR}/.work.log to see if the d5836 5 a5840 5

    Don't override PREFIX from within the package Makefile, e.g. Java VMs, standalone shells, etc., because the code to symlink files into ${BUILDLINK_DIR} looks for files d5842 2 a5843 2 pkgname”.

    d5848 2 a5849 2 "emphasis">only
    the buildlink3.mk files that you list d5867 3 a5869 3

    There are several buildlink3.mk files in pkgsrc/mk that handle special package d5875 1 a5875 1

    bdb.buildlink3.mk d5877 3 a5879 3 implementation based on the values of BDB_ACCEPTED and BDB_DEFAULT.

    d5883 5 a5887 5

    curses.buildlink3.mk If the system comes with neither Curses nor NCurses, this will take care to install the devel/ncurses package.

    d5893 3 a5895 3

    krb5.buildlink3.mk uses the value of KRB5_ACCEPTED to choose between d5902 4 a5905 3

    motif.buildlink3.mk checks for a system-provided Motif installation or adds a dependency on x11/lesstif or x11/openmotif;

    d5915 4 a5918 4

    ossaudio.buildlink3.mk defines several variables that may be used by packages that use the Open Sound System (OSS) API;

    d5922 4 a5925 4

    pgsql.buildlink3.mk will accept either Postgres 7.3 or 7.4, whichever is found installed. See the file for more information.

    d5929 5 a5933 4

    pthread.buildlink3.mk uses the value of PTHREAD_OPTS and checks for native pthreads or adds a dependency on devel/pth as needed;

    d5940 4 a5943 3

    xaw.buildlink3.mk uses the value of XAW_TYPE to choose a particular Athena widgets library.

    d5948 2 a5949 2

    The comments in those buildlink3.mk files provide a more d5958 3 a5960 2 "id2567532" id="id2567532">9.2. Writing buildlink3.mk files d5965 10 a5974 9

    A package's buildlink3.mk file is included by Makefiles to indicate the need to compile and link against header files and libraries provided by the package. A buildlink3.mk file should always provide enough information to add the correct type of dependency relationship and include any other buildlink3.mk files that it needs to find headers and libraries that it needs in turn.

    d5976 2 a5977 2

    To generate an initial buildlink3.mk file for further editing, d5981 4 a5984 4 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d5986 6 a5991 6 % cd pkgsrc/category/pkgdir % createbuildlink -3 >buildlink3.mk d5998 2 a5999 2

    9.2.1. Anatomy of a buildlink3.mk d6005 3 a6007 3

    The following real-life example buildlink3.mk is taken from pkgsrc/graphics/tiff:

    d6032 6 a6037 5

    The header and footer manipulate BUILDLINK_DEPTH, which is common across all buildlink3.mk files and is used to track at what depth we are including buildlink3.mk files.

    d6040 2 a6041 2 pkg is added. BUILDLINK_DEPENDS is the d6046 9 a6054 9 buildlink3.mk file for pkg has been included at some point. BUILDLINK_PACKAGES is the global list of packages for which buildlink3.mk files have been included. It must always be appended to within a buildlink3.mk file.

    d6057 2 a6058 2 inclusion and controls how the dependency on pkg is added. Several d6064 12 a6075 11

    BUILDLINK_DEPENDS. pkg is the actual dependency recorded in the installed package; this should always be set using += to ensure that we're appending to any pre-existing list of values. This variable should be set to the first version of the package that had the last change in the major number of a shared library or that had a major API change.

    d6079 5 a6083 5

    BUILDLINK_PKGSRCDIR.pkg is the location of the pkg pkgsrc d6088 11 a6098 10

    BUILDLINK_DEPMETHOD.pkg (not shown above) controls whether we use BUILD_DEPENDS or DEPENDS to add the dependency on pkg. The build dependency is selected by setting BUILDLINK_DEPMETHOD.pkg to d6104 10 a6113 9

    BUILDLINK_INCDIRS. pkg and BUILDLINK_LIBDIRS.pkg (not shown above) are lists of subdirectories of ${BUILDLINK_PREFIX.pkg} to add to the header and library search paths. These d6121 12 a6132 11

    BUILDLINK_CPPFLAGS.pkg (not shown above) is the list of preprocessor flags to add to CPPFLAGS, which are passed on to the configure and build phases. The “-I” option should be avoided and instead be handled using BUILDLINK_INCDIRS.pkg as above.

    d6140 2 a6141 2 symlinked into ${BUILDLINK_DIR} and how their names d6147 10 a6156 8

    BUILDLINK_FILES.pkg (not shown above) is a shell glob pattern relative to ${BUILDLINK_PREFIX.pkg} to be symlinked into ${BUILDLINK_DIR}, e.g. include/*.h.

    d6160 7 a6166 7

    BUILDLINK_FILES_CMD.pkg (not shown above) is a shell pipeline that outputs to stdout a list of files relative to ${BUILDLINK_PREFIX.pkg}. The d6168 7 a6174 7 ${BUILDLINK_DIR}. By default, this takes the +CONTENTS of a pkg and filters it through ${BUILDLINK_CONTENTS_FILTER.pkg}.

    d6178 18 a6195 16

    BUILDLINK_CONTENTS_FILTER.pkg (not shown above) is a filter command that filters +CONTENTS input into a list of files relative to ${BUILDLINK_PREFIX.pkg} on stdout. By default for overwrite packages, BUILDLINK_CONTENTS_FILTER.pkg outputs the contents of the include and lib directories in the package +CONTENTS, and for pkgviews packages, it outputs any libtool archives in lib d6200 4 a6203 4

    BUILDLINK_TRANSFORM.pkg (not shown above) is a list of sed arguments used to d6205 1 a6205 1 destination filename, e.g. .

    d6212 11 a6222 9

    The last section includes any buildlink3.mk needed for pkg's library dependencies. Including these buildlink3.mk files means that the headers and libraries for these dependencies are also symlinked into ${BUILDLINK_DIR} whenever the pkg buildlink3.mk file is included.

    d6229 6 a6234 5

    9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk files

    d6240 4 a6243 4 dependency listed in BUILDLINK_DEPENDS.pkg after a package update:

    d6260 15 a6274 14

    In these cases, BUILDLINK_DEPENDS.pkg should be adjusted to require at least the new package version. In some cases, the packages that depend on this new version may need their PKGREVISIONs increased and, if they have buildlink3.mk files, their BUILDLINK_DEPENDS.pkg adjusted, too. This is needed so that binary packages made using it will require the correct package dependency and not settle for an older one which will not contain the necessary shared libraries.

    d6277 8 a6284 8 BUILDLINK_DEPENDS.pkg as we don't want to cause unneeded package deletions and rebuilds. In many cases, new versions of packages work just fine with older dependencies. See Section 12.1.3, “Handling dependencies” and BUILDLINK_RECOMMENDED and RECOMMENDED definitions.

    d6299 2 a6300 2 "id2568189" id="id2568189">
    9.3. Writing builtin.mk files

    d6307 6 a6312 6 base system. Aside from a buildlink3.mk file, these packages should also include a builtin.mk file that includes the necessary checks to decide whether using the built-in software or the pkgsrc software is appropriate.

    d6315 1 a6315 1 pkg are:

    d6320 6 a6325 6

    It should set USE_BUILTIN.pkg to either “yes” or “no” after it is included.

    d6331 4 a6334 4 USE_BUILTIN.pkg which is already set before the builtin.mk file is included.

    d6341 2 a6342 2 careful attention to Makefile coding.

    d6351 4 a6354 3

    9.3.1. Anatomy of a builtin.mk file

    d6403 21 a6423 19

    The first section sets IS_BUILTIN.pkg depending on if pkg really exists in the base system. This should not be a base system software with similar functionality to pkg; it should only be “yes” if the actual package is included as part of the base system. This variable is only used internally within the builtin.mk file.

    The second section sets BUILTIN_PKG.pkg to the version of pkg in the base system if it exists (if IS_BUILTIN.pkg is d6425 2 a6426 2 variable is only used internally within the builtin.mk file.

    d6428 18 a6445 18

    The third section sets USE_BUILTIN.pkg and is required in all builtin.mk files. The code in this section must make the determination whether the built-in software is adequate to satisfy the dependencies listed in BUILDLINK_DEPENDS.pkg. This is typically done by comparing BUILTIN_PKG.pkg against each of the dependencies in BUILDLINK_DEPENDS.pkg. USE_BUILTIN.pkg builtin.mk file. Note that USE_BUILTIN.pkg may be d6452 2 a6453 2 IS_BUILTIN.pkg is d6459 7 a6465 7

    The last section is guarded by CHECK_BUILTIN.pkg, and includes code that uses the value of USE_BUILTIN.pkg set in the previous section. This typically includes, e.g., adding d6467 4 a6470 4 additional files to symlink into ${BUILDLINK_DIR} (via BUILDLINK_FILES.pkg).

    d6477 2 a6478 2

    9.3.2. Global preferences d6488 3 a6490 3 setting PREFER_PKGSRC and PREFER_NATIVE. These variables take values of either “PREFER_PKGSRC tells pkgsrc to use the pkgsrc versions of software, while PREFER_NATIVE tells pkgsrc to use the built-in versions. Preferences are determined by the most specific instance of the package in either PREFER_PKGSRC or PREFER_NATIVE. If a package is specified in neither or in both variables, then PREFER_PKGSRC has precedence over PREFER_NATIVE. For example, to require using pkgsrc versions of software for all but the most basic bits on a NetBSD system, you can set:

    d6513 4 a6516 4 "emphasis">must
    have a builtin.mk file to be listed in PREFER_NATIVE, otherwise it is simply ignored in that list.

    d6536 1 a6536 1
    10.1. d6539 3 a6541 3
    10.2. Converting packages to use bsd.options.mk
    d6546 2 a6547 2 different sets of features. bsd.options.mk is a framework in pkgsrc d6559 1 a6559 1 "id2568638" id="id2568638">10.1. Global d6565 2 a6566 2

    Global default options are listed in PKG_DEFAULT_OPTIONS, which is a list of d6569 1 a6569 1 /etc/mk.conf.

    d6577 4 a6580 3 "id2568653" id= "id2568653">10.2. Converting packages to use bsd.options.mk

    d6585 6 a6590 5

    The following example shows how bsd.options.mk should be use in a package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile.

    d6632 1 a6632 1 bsd.options.mk. It converts d6634 4 a6637 4 PKG_OPTIONS.pkg value. These sections will be removed over time as the old options are in turn deprecated and removed.

    d6646 2 a6647 2

    PKG_OPTIONS_VAR is a list of the name of the PKG_OPTIONS.pkg” but any package-specific value may be used. This d6660 4 a6663 4

    PKG_SUPPORTED_OPTIONS is a list of build options supported by the package. This variable should be set in a package Makefile.

    d6667 6 a6672 6

    ${PKG_OPTIONS_VAR} (the variables named in PKG_OPTIONS_VAR) are variables that list the selected build options and override any default options given in PKG_DEFAULT_OPTIONS. If any of the d6692 2 a6693 2

    This variable should be set in /etc/mk.conf.

    d6704 4 a6707 4

    PKG_OPTIONS contains the list of the selected build options, properly filtered to remove unsupported and duplicate options.

    d6714 6 a6719 6 every option listed in PKG_SUPPORTED_OPTIONS, and there should be clear documentation on what turning on the option will do in the comments preceding each section. The correct way to check for an option is to check whether it is listed in PKG_OPTIONS.

    d6741 1 a6741 1
    11.2. Main d6759 2 a6760 2 in a central Makefile, pkgsrc/mk/bsd.pkg.mk.

    d6778 6 a6783 6

    The automatic variable PREFIX indicates where all files of the final program shall be installed. It is usually set to LOCALBASE (/usr/pkg), or CROSSBASE for pkgs in the d6785 3 a6787 3 The value of PREFIX needs to be put into the various places in the program's source where paths to these files are encoded. See PREFIX always points to the location where the current pkg will be installed. When referring to a pkg's own d6810 2 a6811 2

    LOCALBASE is where all non-X11 pkgs are installed. If you need to d6819 2 a6820 2

    X11BASE is where the actual X11 distribution (from xsrc, etc.) is d6830 3 a6832 3 installed in either X11BASE or LOCALBASE.

    d6835 5 a6839 5 LOCALBASE whenever possible. Note that you will need to set USE_X11 in them to request the presence of X11 and to get the right compilation flags.

    d6842 2 a6843 2 be installed under LOCALBASE: those that come with d6845 4 a6848 4 they must be placed under X11BASE. To accomplish this, set either USE_X11BASE or USE_IMAKE in your d6851 14 a6864 13

    Some notes: USE_X11 and USE_X11BASE are mutually exclusive. If you need to find includes or libraries installed by a pkg that has USE_IMAKE or USE_X11BASE in its pkg Makefile, you need to use both ${X11BASE} and ${LOCALBASE}. To force installation of all X11 packages in LOCALBASE, the pkgtools/xpkgwedge is enabled by default.

    d6871 1 a6871 1

    X11PREFIX should be d6873 4 a6876 4 package. X11PREFIX will be set to X11BASE if xpkgwedge is not installed, and to LOCALBASE if xpkgwedge is d6882 7 a6888 6 have some packages installed in X11BASE and some in LOCALBASE. To determine the prefix of an installed package, the EVAL_PREFIX definition can be used. It takes pairs in the format “DIRNAME will be set to the prefix of the installed package <package>, or d6899 2 a6900 2

    The following lines are taken from pkgsrc/wm/scwm/Makefile:

    d6902 1 a6902 1 EVAL_PREFIX+= GTKDIR=gtk+ d6909 2 a6910 2 packages evaluated using EVAL_PREFIX, by using a definition d6916 1 a6916 1

    where GTKDIR d6918 1 a6918 1 EVAL_PREFIX pair.

    d6922 1 a6922 1

    Within ${PREFIX}, d6925 3 a6927 2 ${PREFIX}/man, not ${PREFIX}/share/man.

    d6938 1 a6938 1 "id2569330" id="id2569330">11.2. Main d6945 1 a6945 1 in bsd.pkg.mk are:

    d6953 7 a6959 7 variables DISTFILES and PATCHFILES (as defined in the package's Makefile) are present on the local system in /usr/pkgsrc/distfiles. If they are not present, an attempt will be made to fetch them using commands of the form:

    d6965 12 a6976 12 possibilities in turn: first, MASTER_SITE_OVERRIDE is tried, then the sites specified in either SITES_file if defined, else MASTER_SITES or PATCH_SITES, as applies, then finally the value of MASTER_SITE_BACKUP. The order of all except the first can be optionally sorted by the user, via setting either MASTER_SORT_AWK or MASTER_SORT_REGEX.

    d6999 2 a7000 2 format, most commonly .tar.gz.

    d7004 2 a7005 2 be put into EXTRACT_ONLY.

    d7007 28 a7034 27

    If the distfiles are not in .tar.gz format, they can be extracted by setting either EXTRACT_SUFX, or EXTRACT_CMD, EXTRACT_BEFORE_ARGS and EXTRACT_AFTER_ARGS. In the former case, pkgsrc knows how to extract a number of suffixes (.tar.gz, .tgz, .tar.gz2, .tbz, .tar.Z, .tar, .shar.gz, .shar.bz2, .shar.Z, .shar, .Z, .bz2 and .gz; see the definition of the various DECOMPRESS_CMD variables bsd.pkg.mk for a complete list). Here's an example on how to use the other variables for a program that comes with a compressed shell archive whose name ends in .msg.gz:

    d7047 14 a7060 12 PATCHFILES, those present in the patches subdirectory of the package as well as in $LOCALPATCHES/$PKGPATH (e.g. /usr/local/patches/graphics/png) are applied. Patchfiles ending in .Z or .gz are uncompressed before they are applied, files ending in .orig or .rej are ignored. Any special options to patch(1) can be handed in PATCH_DIST_ARGS. See HAS_CONFIGURE. If the d7088 8 a7095 7 GNU_CONFIGURE should be specified instead. In either case, any arguments to the configure script can be specified in the CONFIGURE_ARGS variable, and the configure script's name can be set in CONFIGURE_SCRIPT if it differs from the default “sysutils/top package:

    d7109 6 a7114 6 by setting USE_IMAKE to “YES”. (If you only want the package installed in $X11PREFIX but xmkmf not being run, set USE_X11BASE instead!)

    d7121 9 a7129 7 will be built by invoking $MAKE_PROGRAM on $MAKEFILE with $ALL_TARGET as the target to build. The default MAKE_PROGRAM is “gmake” if USE_GMAKE is set, d7131 2 a7132 2 otherwise. MAKEFILE is set to “ALL_TARGET defaults to d7146 10 a7155 9 files. As in the build-target, $MAKE_PROGRAM is invoked on $MAKEFILE here, but with the $INSTALL_TARGET instead, the latter defaulting to “install” (plus “install.man”, if USE_IMAKE is set).

    d7163 3 a7165 2 e.g. make build will also perform the equivalent of:

    d7220 3 a7222 3

    If you did a make install and you noticed some file was not installed properly, you can repeat the d7238 2 a7239 2

    PKG_VERBOSE
    d7249 2 a7250 2
    DEINSTALLDEPENDS
    d7257 3 a7259 3 make deinstall DEINSTALLDEPENDS=1 is done in pkgsrc/x11/kde, d7281 6 a7286 5 performing a series of make deinstall and make install (or whatever UPDATE_TARGET is set to) for these packages.

    d7290 8 a7297 7 package updating in case a previous make update was interrupted for some reason. However, in this case, make sure you don't call make clean or otherwise remove the list of dependent packages in WRKDIR. Otherwise you lose the d7302 8 a7309 7

    Resuming an interrupted make update will only work as long as the package tree remains unchanged. If the source code for one of the packages to be updated has been changed, resuming make update will most certainly fail!

    d7312 4 a7315 4 the command line or in /etc/mk.conf to alter the behaviour of make update:

    d7319 2 a7320 2
    UPDATE_TARGET
    d7325 2 a7326 2 Defaults to DEPENDS_TARGET if set, d7329 4 a7332 4 make update. e.g. make update UPDATE_TARGET=package

    d7335 2 a7336 2
    NOCLEAN
    d7348 4 a7351 3 make or make update.

    d7354 2 a7355 2
    REINSTALL
    d7359 2 a7360 2 (making DEPENDS_TARGET). This may be d7364 2 a7365 2 running make update.

    d7368 2 a7369 2
    DEPENDS_TARGET
    d7377 8 a7384 8 prerequisite packages. Only set DEPENDS_TARGET if you want to disable recursive updates. Use UPDATE_TARGET instead to just set a specific target for each package to be installed during make update (see above).

    d7394 14 a7407 13 would get updated if make update was called from the current directory. This target should not be used if the current package (or any of its depending packages) have already been de-installed (e.g., after calling make update) or you may lose some packages you intended to update. As a rule of thumb: only use this target before the first time you run make update and only if you have a dirty package tree (e.g., if you used NOCLEAN).

    d7410 3 a7412 3 you can either perform a make clean at the top of the tree, or use the following sequence of commands d7416 4 a7419 3 make update for the first time, otherwise you lose all the packages you wanted to update!):

    d7421 6 a7426 6 # make clean-update # make clean CLEANDEPENDS=YES # make update d7430 4 a7433 4 the command line or in /etc/mk.conf to alter the behaviour of make clean-update:

    d7437 2 a7438 2
    CLEAR_DIRLIST
    d7441 12 a7452 11

    After make clean, do not reconstruct the list of directories to update for this package. Only use this if make update successfully installed all packages you wanted to update. Normally, this is done automatically on make update, but may have been suppressed by the NOCLEAN variable (see d7473 2 a7474 2

    This target generates a README.html file, which can be d7478 21 a7498 21 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7504 2 a7505 2

    Use this target to create a file README-all.html which contains a d7509 2 a7510 2 This file is compiled from the pkgsrc/*/README.html files, so be d7512 3 a7514 2 "emphasis">after a make readme.

    d7524 5 a7528 5 This target also produces README.html files, and can be made to refer to URLs based on CDROM_PKG_URL_HOST and CDROM_PKG_URL_DIR.

    d7535 4 a7538 4 are needed to build the package. (DISTFILES and PATCHFILES, but not patches/*)

    d7574 2 a7575 2 the current package's DEPENDS. Useful if out of date d7585 3 a7587 3 default if PKG_DEVELOPER is set in /etc/mk.conf.

    d7596 4 a7599 4 PLIST from a find -newer work/.extract_done. An attempt is made to care for shared libs etc., but it is d7602 4 a7605 4 into PLIST. On upgrades, it's useful to diff the output of this command against an already existing PLIST file.

    d7610 1 a7610 1 PLIST, as the d7617 4 a7620 3 “Tweaking output of make print-PLIST” for more information on this target.

    d7629 2 a7630 2 (and it's depends, if PKG_DEPENDS is set properly. See d7652 3 a7654 3 not, make bulk-package will be executed, but the installed binary not be removed.

    d7667 3 a7669 3

    None of the package's files (Makefile, ...) were modified since it was built.

    d7704 1 a7704 1
    12.1. d7710 1 a7710 1 "#id2570798">12.1.1. How to pull in variables from d7714 1 a7714 1 "#id2570882">12.1.2. Restricted d7722 1 a7722 1 "#id2571260">12.1.4. Handling conflicts with other d7726 1 a7726 1 "#id2571447">12.1.5. Packages that cannot or should d7730 1 a7730 1 "#id2571473">12.1.6. Packages which should not be d7738 1 a7738 1 "#id2571564">12.1.8. How to handle compiler d7742 1 a7742 1 "#id2571587">12.1.9. How to handle incrementing d7747 1 a7747 1 "#id2571704">12.1.10. Portability of d7752 1 a7752 1
    12.2. d7758 1 a7758 1 "#id2571732">12.2.1. Packages whose distfiles d7763 1 a7763 1 "#id2571795">12.2.2. How to handle modified d7768 1 a7768 1
    12.3. d7778 1 a7778 1 "#id2572350">12.3.2. Using libtool on GNU packages d7782 1 a7782 1 "#id2572435">12.3.3. GNU d7787 1 a7787 1
    12.4. d7793 1 a7793 1 "#id2572483">12.4.1. CPP defines
    d7797 1 a7797 1
    12.5. d7803 1 a7803 1 "#id2572516">12.5.1. Package configuration d7807 1 a7807 1 "#id2572618">12.5.2. User d7811 1 a7811 1 "#id2572663">12.5.3. Handling d7815 1 a7815 1 "#id2572746">12.5.4. Creating an account from a d7819 1 a7819 1 "#id2572876">12.5.5. Installing score d7823 1 a7823 1 "#id2573057">12.5.6. Packages providing login d7827 1 a7827 1 "#id2573182">12.5.7. Packages containing perl d7831 1 a7831 1 "#id2573201">12.5.8. Packages with hardcoded paths d7835 1 a7835 1 "#id2573222">12.5.9. Packages installing perl d7843 1 a7843 1 "#id2573442">12.5.11. Packages installing GConf2 d7847 1 a7847 1 "#id2573610">12.5.12. Packages installing d7851 1 a7851 1 "#id2573661">12.5.13. Packages installing X11 d7855 1 a7855 1 "#id2573708">12.5.14. Packages installing GTK2 d7859 1 a7859 1 "#id2573778">12.5.15. Packages installing SGML or d7863 1 a7863 1 "#id2573830">12.5.16. Packages installing d7867 1 a7867 1 "#id2573969">12.5.17. Packages using d7872 1 a7872 1
    12.6. d7882 1 a7882 1 "id2570795" id="id2570795">12.1. General d7892 2 a7893 2

    12.1.1. How to pull in d7900 3 a7902 2 be overridden via MAKECONF or /etc/mk.conf is that /etc/mk.conf) in one of the .if* statements, the file /etc/mk.conf must be included before d7915 7 a7921 6 including /etc/mk.conf, should it exist, or MAKECONF, should it exist, include the pkgsrc/mk/bsd.prefs.mk file in the package Makefile before any preprocessor-like .if, .ifdef, or .ifndef statements:

    d7930 3 a7932 3

    If you wish to set the CFLAGS variable in /etc/mk.conf please make sure to d7938 5 a7942 5

    Using CFLAGS= (i.e. without the “+”) may lead to problems with packages that need to add their own flags. Also, you may want to take a look at the devel/cpuflags package if you're interested in optimization for the current CPU.

    d7953 2 a7954 2

    12.1.2. Restricted d7968 1 a7968 1

    RESTRICTED

    d7977 2 a7978 1

    NO_BIN_ON_CDROM

    d7981 2 a7982 2 variable to ${RESTRICTED} whenever a binary d7987 1 a7987 1

    NO_BIN_ON_FTP

    d7990 2 a7991 2 Set this variable to ${RESTRICTED} whenever a binary d7997 2 a7998 1

    NO_SRC_ON_CDROM

    d8001 2 a8002 2 this variable to ${RESTRICTED} if re-distribution d8008 1 a8008 1

    NO_SRC_ON_FTP

    d8011 2 a8012 2 variable to ${RESTRICTED} if re-distribution d8019 4 a8022 4

    Please note that the use of NO_PACKAGE, IGNORE, NO_CDROM, or other generic make d8041 5 a8045 5 dependency. pkgsrc supports the BUILD_DEPENDS and DEPENDS definitions, as well as dependencies via buildlink3.mk, which is the preferred d8053 1 a8053 1 follows: The DEPENDS d8056 2 a8057 2 is later installed, whilst the BUILD_DEPENDS definition does not, d8063 1 a8063 1 BUILD_DEPENDS.

    d8065 3 a8067 3

    The format for a BUILD_DEPENDS and a DEPENDS definition is:

    d8085 3 a8087 3 that package has a buildlink3.mk file available, use it:

    d8096 4 a8099 4 to build itself and there is no buildlink3.mk file available, use the BUILD_DEPENDS definition:

    d8107 5 a8111 5 link and again there is no buildlink3.mk file available, this is specified using the DEPENDS definition. An example of this is the print/lyx package, which uses the xpm library, version 3.4j to build:

    d8140 1 a8140 1 DEPENDS.

    d8162 1 a8162 1 RECOMMENDED:

    d8167 2 a8168 2

    In addition to the above DEPENDS line, this denotes that d8171 5 a8175 4 recommended. RECOMMENDED entries will be turned into dependencies unless explicitly ignored (in which case a warning will be printed). Packages that are built with d8184 1 a8184 1 RECOMMENDED, see d8195 3 a8197 3 buildlink3.mk file, this is specified using the DEPENDS variable. The print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8218 3 a8220 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8236 6 a8241 6

    Please also note the BUILD_USES_MSGFMT and BUILD_USES_GETTEXT_M4 definitions, which are provided as convenience definitions. The former works out whether msgfmt(1) is part of the base system, and, if it isn't, installs the devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8257 2 a8258 2

    12.1.4. Handling conflicts d8269 2 a8270 2

    In this case you can set CONFLICTS to a space separated list of d8277 6 a8282 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8287 2 a8288 2

    and in pkgsrc/x11/Xaw-Xpm/Makefile:

    d8305 2 a8306 2

    12.1.5. Packages that cannot d8315 11 a8325 10 exceptions should be noted with NOT_FOR_PLATFORM. If the package builds and runs on a small handful of platforms, set ONLY_FOR_PLATFORM instead. If the package should be skipped (for example, because it provides functionality already provided by the system), set PKG_SKIP_REASON to a descriptive message. If the package should fail because some preconditions are not met, set PKG_FAIL_REASON to a descriptive d8328 1 a8328 1

    IGNORE is deprecated d8337 2 a8338 2

    12.1.6. Packages which d8345 3 a8347 3 has been installed, the PKG_PRESERVE definition should be set in the package Makefile. This will be carried into any d8370 2 a8371 2 in localsrc/security/advisories/pkg-vulnerabilities, d8373 14 a8386 13 to both /pub/NetBSD/packages/distfiles/pkg-vulnerabilities and /pub/NetBSD/packages/distfiles/vulnerabilities on ftp.NetBSD.org using localsrc/security/advisories/Makefile. In addition, if a buildlink3.mk file exists for an affected package, bumping PKGREVISION and creating a corresponding BUILDLINK_RECOMMENDED.pkg entry should be considered. See buildlink3.mk files and BUILDLINK_* definitions.

    d8401 2 a8402 2

    12.1.8. How to handle d8415 1 a8415 1 MACHINE_ARCH and compiler d8417 3 a8419 3 file/MACHINE_ARCH/compiler combination, and documenting it in pkgsrc/doc/HACKS. See that file for a d8427 2 a8428 2

    12.1.9. How to handle d8436 2 a8437 2 useful to change the version number in PKGNAME. To avoid conflicting with d8442 4 a8445 4 PKGREVISION=1 (2, ...). The “nb” is treated like a “.” by the pkg tools. e.g.

    d8451 2 a8452 2

    will result in a PKGNAME of “PKGREVISION should be removed. e.g. on a new minor release of the above package, things should be like:

    d8468 2 a8469 2

    12.1.10. Portability of d8485 2 a8486 2

    12.1.10.1. ${INSTALL}, d8492 2 a8493 2

    The BSD-compatible install supplied with some d8511 1 a8511 1 "id2571729" id="id2571729">12.2. Possible d8521 2 a8522 2

    12.2.1. Packages whose d8530 8 a8537 7 set DYNAMIC_MASTER_SITES and a make fetch will call files/getsite.sh with the name of each file to download as an argument, expecting it to output the URL of the directory from which to download it. graphics/ns-cult3d is an example of this usage.

    d8545 6 a8550 6 can set _FETCH_MESSAGE to a macro which displays a message explaining the situation. _FETCH_MESSAGE must be executable shell commands, not just a message. (Generally, it executes ${ECHO}). As of this writing, the d8554 23 a8576 25 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8583 2 a8584 2

    12.2.2. How to handle d8599 2 a8600 2 ftp.NetBSD.org's /pub/NetBSD/packages/distfiles d8613 2 a8614 2 "id2571806" id= "id2571806">12.3. Configuration d8641 5 a8645 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d8653 3 a8655 2

    Add USE_LIBTOOL=yes to the package Makefile.

    d8664 5 a8668 5 CC, if only libraries are being built in a given Makefile. This one command will build both PIC and non-PIC library objects, so you need not have separate shared and non-shared library rules.

    d8683 9 a8691 9 .la extension, and the objects are changed to have a .lo extension. Change OBJS as necessary. This automatically creates all of the .a, .so.major.minor, and ELF symlinks (if necessary) in the build directory. Be sure to include “In the PLIST, include all of the .a, .la, and .so, .so.major and .so.major.minor files.

    d8750 2 a8751 2

    When linking shared object (.so) files, i.e. files that are d8757 3 a8759 2

    The PLIST file gets the foo.so entry.

    d8782 1 a8782 1 .la file. e.g.

    d8789 3 a8791 3 ${LIBTOOL} --mode=link ${CC} -o someprog ../somelib/somelib.la d8809 2 a8810 2 library name to .la. e.g.

    d8815 2 a8816 2

    This will install the static .a, shared library, any needed d8824 9 a8832 7

    In your PLIST, include all of the .a, .la, and .so, .so.CURRENT and .so.CURRENT.REVISION files (this is a change from the previous behaviour).

    d8842 2 a8843 2

    12.3.2. Using libtool on GNU d8849 3 a8851 3

    Add USE_LIBTOOL=yes to the package Makefile. This will override the package's own libtool in most cases. For older libtool using d8854 11 a8864 2 location by doing make configure; find work*/ -name libtool.

    d8866 1 a8866 9

    LIBTOOL_OVERRIDE specifies which libtool scripts, relative to WRKSRC, to override. By default, it is set to “libtool */libtool */*/libtool”. If this does not match the location of the package's libtool script(s), set it as appropriate.

    If you do not need *.a d8868 1 a8868 1 SHLIBTOOL_OVERRIDE d8874 2 a8875 2 the libtool buildlink3.mk (and set USE_BUILDLINK3=YES).

    d8893 3 a8895 2 i.e. libfoo.la, not foo.la

    d8910 2 a8911 2 LTDL_SET_PRELOADED_SYMBOLS d8922 2 a8923 2

    12.3.3. GNU d8933 5 a8937 5 fragments are provided in pkgsrc/mk/autoconf.mk and pkgsrc/mk/automake.mk to help dealing with these tools. See comments in these files for details.

    d8970 2 a8971 2 provided for you in mk/automake.mk.

    d8978 2 a8979 2 problems with your package you can set AUTOMAKE_OVERRIDE=NO in the package d8989 1 a8989 1 "id2572480" id="id2572480">12.4. Building d8999 2 a9000 2

    12.4.1. CPP defines

    d9012 2 a9013 2 defined in <sys/param.h> on said d9039 1 a9039 1 "id2572513" id="id2572513">12.5. Package d9049 2 a9050 2

    12.5.1. Package d9057 2 a9058 2 configuration files in ${PKG_SYSCONFDIR}, which is passed d9060 1 a9060 1 PKG_SYSCONFDIR may be d9067 7 a9073 7

    PKG_SYSCONFBASE is the main config directory under which all package configuration files are to be found. This defaults to ${PREFIX}/etc, but may be overridden in /etc/mk.conf.

    d9077 3 a9079 3

    PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the d9082 4 a9085 4 all be found under the httpd/ subdirectory of ${PKG_SYSCONFBASE}. This should be set in the package Makefile.

    d9089 10 a9098 9

    By default, PKG_SYSCONFDIR is set to ${PKG_SYSCONFBASE}/${PKG_SYSCONFSUBDIR}, but this may be overridden by setting PKG_SYSCONFDIR.${PKG_SYSCONFVAR} for a particular package, where PKG_SYSCONFVAR defaults to ${PKGBASE}. This is not meant to be set by a package Makefile, but is d9100 2 a9101 2 PKG_SYSCONFDIR setting for a particular package with a special d9108 8 a9115 6 PKG_SYSCONFBASE and PKG_SYSCONFDIR.${PKG_SYSCONFVAR}. Users will typically want to set PKG_SYSCONFBASE to /etc, or to accept the default location of ${PREFIX}/etc.

    d9122 2 a9123 2

    12.5.2. User d9153 1 a9153 1

    The INTERACTIVE_STAGE d9156 2 a9157 2 should be set in the package's Makefile. e.g.

    d9172 2 a9173 2

    12.5.3. Handling d9193 4 a9196 4 works by setting the LICENSE variable to a string identifying the license, e.g. in graphics/graphviz:

    d9207 2 a9208 1 % make d9216 5 a9220 5

    The license can be viewed with make show-license, and if it is considered appropriate, the line printed above can be added to /etc/mk.conf to indicate acceptance of the particular license:

    d9226 7 a9232 7 license text should be added to pkgsrc/licenses for displaying. A list of known licenses can be seen in this directory as well as by looking at the list of (commented out) ACCEPTABLE_LICENSES variable settings in pkgsrc/mk/bsd.pkg.defaults.mk.

    d9239 2 a9240 2 done by setting _ACCEPTABLE=yes.

    d9247 2 a9248 2

    12.5.4. Creating an account d9256 2 a9257 2 pre-install time. The first is PKG_GROUPS, which is a list of d9259 2 a9260 2 optional. The second is PKG_USERS, which is a list of elements d9282 4 a9285 3 /nonexistent, and login shell /sbin/nologin unless they are specified as part of the user element.

    d9287 9 a9295 9

    The package Makefile must also set USE_PKGINSTALL=YES. This will cause the users and groups to be created at pre-install time, and the admin will be prompted to remove them at post-deinstall time. Automatic creation of the users and groups can be toggled on and off by setting the PKG_CREATE_USERGROUP variable prior to package installation.

    d9302 2 a9303 2

    12.5.5. Installing score d9316 7 a9322 7 mk/bsd.pkg.defaults.mk, control this behaviour: SETGIDGAME, GAMEDATAMODE, GAMEGRP, GAMEMODE, GAMEOWN.

    d9325 2 a9326 2 is disabled; setting SETGIDGAME=YES will set all the other d9330 4 a9333 4 ownership or access permissions but rely on INSTALL_GAME and INSTALL_GAME_DATA to set these correctly.

    d9340 2 a9341 2

    12.5.6. Packages providing d9348 9 a9356 8 shell, the variable PKG_SHELL should contain the full pathname of the shell executable installed by this package. The package Makefile must also set USE_PKGINSTALL=YES to use the automatically generated INSTALL/DEINSTALL scripts.

    d9364 6 a9369 6

    The shell is registered into /etc/shells file automatically in the post-install target by the generated INSTALL script and removed in the deinstall target by the DEINSTALL script.

    d9376 2 a9377 2

    12.5.7. Packages containing d9384 5 a9388 5 set REPLACE_PERL to ensure that the proper interpreter path is set. REPLACE_PERL should contain a list of scripts, relative to WRKSRC, that you want adjusted.

    d9395 2 a9396 2

    12.5.8. Packages with d9406 3 a9408 3 in your Makefile (we shall use tclsh in this example):

    d9422 2 a9423 2

    12.5.9. Packages installing d9430 7 a9436 7 include the Makefile fragment ../../lang/perl5/module.mk. It provides a do-configure target for the standard perl configuration for such modules as well as various hooks to tune this configuration. See comments in this file for details.

    d9441 6 a9446 6 the PLIST corresponding to the files listed in the installed .packlist file generated by most perl5 modules. This is invoked by defining PERL5_PACKLIST to a space-separated list of paths to packlist files, e.g.:

    d9451 4 a9454 4

    The variables PERL5_SITELIB, PERL5_SITEARCH, and PERL5_ARCHLIB represent the three d9458 1 a9458 1 for in the PLIST.

    d9481 2 a9482 2 ${PREFIX}/${INFO_DIR},

    d9487 2 a9488 2 ${PREFIX}/${INFO_DIR}/dir,

    d9493 2 a9494 2 INFO_FILES variable in the package Makefile.

    d9499 1 a9499 1

    INFO_DIR defaults to d9501 4 a9504 4 be overridden in the package Makefile. INSTALL and DEINSTALL scripts will be generated to handle registration of the info files in the Info d9513 2 a9514 2 must define the variable USE_MAKEINFO in its Makefile. If a d9517 3 a9519 3 should be noted with the TEXINFO_REQD variable in the package Makefile. By default, a d9521 5 a9525 5 not provide a makeinfo command or if it does not match the required minimum, a build dependency on the devel/gtexinfo package will be added automatically.

    d9532 6 a9537 5 install-info command as the registration of info files is the task of the package INSTALL script, and it must use the appropriate makeinfo command.

    d9540 5 a9544 4 creates overriding scripts for the install-info and makeinfo commands in a directory listed early in PATH.

    d9546 10 a9555 9

    The script overriding install-info has no effect except the logging of a message. The script overriding makeinfo logs a message and according to the value of USE_MAKEINFO and TEXINFO_REQD either run the appropriate makeinfo command or exit on error.

    d9562 2 a9563 2

    12.5.11. Packages installing d9569 3 a9571 3

    If a package installs .schemas or .entries files, used by GConf2, you d9578 4 a9581 4

    Include ../../devel/GConf2/schemas.mk instead of its buildlink3.mk file. This takes d9592 5 a9596 5 .schemas files under ${PREFIX}/share/gconf/schemas. If they get installed under ${PREFIX}/etc, you will need to d9611 7 a9617 6

    Define the GCONF2_SCHEMAS variable in your Makefile with a list of all .schemas files installed by the package, if any. Names must not contain any directories in them.

    d9621 7 a9627 6

    Define the GCONF2_ENTRIES variable in your Makefile with a list of all .entries files installed by the package, if any. Names must not contain any directories in them.

    d9637 2 a9638 2

    12.5.12. Packages installing d9644 4 a9647 4

    If a package installs .omf files, used by scrollkeeper, you need to take some extra steps to make sure they get registered in the database:

    d9652 4 a9655 4

    Include ../../textproc/scrollkeeper/omf.mk instead of its buildlink3.mk file. This takes d9664 2 a9665 2 the libdata/scrollkeeper directory, d9670 3 a9672 3

    Remove the share/omf directory from the PLIST. It will be handled by scrollkeeper.

    d9682 2 a9683 2

    12.5.13. Packages installing d9692 4 a9695 3 This can be automatically done by using mk/fonts.mk, which you need to include in your Makefile.

    d9698 6 a9703 5 directories where fonts are installed in the FONTS_type_DIRS variables, where type can be one of “TTF”, d9706 2 a9707 2 sure that the database file fonts.dir is not listed in the d9720 2 a9721 2

    12.5.14. Packages installing d9734 6 a9739 5

    Include ../../x11/gtk2/modules.mk instead of its buildlink3.mk file. This takes care of rebuilding the database at installation and deinstallation time.

    d9743 3 a9745 3

    Set GTK2_IMMODULES=YES if your package installs GTK2 immodules.

    d9749 3 a9751 2

    Set GTK2_LOADERS=YES if your package installs GTK2 loaders.

    d9761 2 a9762 2

    libdata/gtk-2.0/gdk-pixbuf.loaders

    d9766 2 a9767 2

    libdata/gtk-2.0/gtk.immodules

    d9775 1 a9775 1 the libdata/gtk-2.0 d9787 2 a9788 2

    12.5.15. Packages installing d9802 4 a9805 4

    Include ../../textproc/xmlcatmgr/catalogs.mk in your Makefile, which takes care of registering those files in d9811 3 a9813 3

    Set SGML_CATALOGS to the full path of any SGML catalogs installed by the package.

    d9817 2 a9818 2

    Set XML_CATALOGS to the full path of any XML catalogs installed by d9823 2 a9824 2

    Set SGML_ENTRIES to individual entries to be added to the SGML d9833 2 a9834 2

    Set XML_ENTRIES to individual entries to be added to the XML d9849 2 a9850 2

    12.5.16. Packages installing d9857 6 a9862 5 database by installing .xml files inside ${PREFIX}/share/mime/packages, you need to take some extra steps to ensure that the database is kept consistent with respect to these new files:

    d9867 10 a9876 9

    Include ../../databases/shared-mime-info/mimedb.mk (avoid using the buildlink3.mk file from this same directory, which is reserved for inclusion from other buildlink3.mk files). It takes care of rebuilding the MIME database at installation and deinstallation time, and disallows any access to it directly from the d9882 1 a9882 1 the share/mime d9885 2 a9886 2 under share/mime/packages. The former d9895 3 a9897 3

    Remove any share/mime/* directories from the PLIST. They will be handled by the d9908 2 a9909 2

    12.5.17. Packages using d9916 2 a9917 2 the ../../textproc/intltool/buildlink3.mk d9934 1 a9934 1 "id2573982" id="id2573982">12.6. Feedback d9972 3 a9974 3

    Be sure to set PKG_DEVELOPER=1 in /etc/mk.conf

    d9981 4 a9984 4 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d9986 10 a9995 10 % mkdir /usr/pkgsrc/category/examplepkg % cd /usr/pkgsrc/category/examplepkg % url2pkg http://www.example.com/path/to/distfile.tar.gz d10000 1 a10000 1

    Edit the Makefile as d10005 1 a10005 1

    Fill in the DESCR d10010 2 a10011 2

    Run make configure

    d10016 2 a10017 2 and the configure step to the package's Makefile.

    d10024 14 a10037 13 % make % pkgvi ${WRKSRC}/some/file/that/does/not/compile % mkpatches % patchdiff % mv ${WRKDIR}/.newpatches/* patches % make mps % make clean d10042 6 a10047 4 build phase. mkpatches, patchdiff and pkgvi are from the pkgtools/pkgdiff package.

    d10054 6 a10059 4

    Look at the Makefile, fix if necessary; see Section 7.1, “Makefile”.

    d10063 2 a10064 1

    Generate a PLIST:

    d10066 10 a10075 10 # make install # make print-PLIST >PLIST # make deinstall # make install # make deinstall d10078 2 a10079 2

    You usually need to be root to do this. Look if there are d10082 2 a10083 2 # make print-PLIST d10087 1 a10087 1 PLIST, add them.

    d10091 2 a10092 2

    Now that the PLIST is OK, install the package again and make a binary d10095 4 a10098 4 # make reinstall # make package d10105 2 a10106 2 # pkg_delete blub d10111 3 a10113 3

    Repeat the above make print-PLIST command, which shouldn't find anything now:

    d10115 2 a10116 2 # make print-PLIST d10123 2 a10124 2 # pkgadd .../blub.tgz d10133 2 a10134 2

    Run pkglint from pkgtools/pkglint, and fix the problems it reports:

    d10140 2 a10141 1 # pkglint d10170 1 a10170 1
    14.1. d10173 1 a10173 1
    14.2. d10177 1 a10177 1
    14.3. d10180 1 a10180 1
    14.4. d10190 2 a10191 2 "id2574444" id= "id2574444">14.1. Submitting your d10223 2 a10224 2 Finally, send-pr with category d10252 2 a10253 2 "id2574491" id= "id2574491">14.2. Committing: Importing a d10263 7 a10269 7 the cvs import command is so that it knows where to place the files in the repository. Newly created packages should be imported with a vendor tag of “TNF” and a release tag of “pkgsrc-base”, e.g:

    d10279 2 a10280 1 the category's Makefile.

    d10283 3 a10285 3 include part of the DESCR file, so people reading the mailing lists know what the package is/does.

    d10288 4 a10291 4 pkgsrc/doc/CHANGES. It's very important to keep this file up to date and conforming to the existing format, because it will be used by scripts to automatically update pages on 14.3. Updating d10360 1 a10360 1 "id2574710" id="id2574710">14.4. Moving a d10378 2 a10379 2 % cvs -d user@@cvs.NetBSD.org:/cvsroot export -D today pkgsrc/category/package d10386 3 a10388 3

    Fix CATEGORIES and any DEPENDS paths that just did “cvs import the modified package in the new place.

    d10403 4 a10406 4 % cd /usr/pkgsrc % grep /package */*/Makefile* */*/buildlink* d10416 3 a10418 2

    cvs rm (-f) the package at the old location.

    d10422 2 a10423 2

    Remove from oldcategory/Makefile.

    d10427 2 a10428 2

    Add to newcategory/Makefile.

    d10434 2 a10435 2 % cvs commit oldcategory/package oldcategory/Makefile newcategory/Makefile d10461 1 a10461 1
    A.1. d10466 1 a10466 1
    A.1.1. d10469 1 a10469 1
    A.1.2. d10472 1 a10472 1
    A.1.3. d10475 3 a10477 2
    A.1.4. Checking a package with pkglint
    d10481 1 a10481 1
    A.2. Steps d10488 5 a10492 4 would want to have bison when Berkeley yacc is already present in the tree is beyond us, but it's useful for the purposes of this exercise.

    d10499 1 a10499 1 "id2575004" id="id2575004">
    A.1. files

    d10508 2 a10509 2

    A.1.1. Makefile

    d10536 2 a10537 2

    A.1.2. DESCR

    d10553 2 a10554 2

    A.1.3. PLIST

    d10577 4 a10580 3

    A.1.4. Checking a package with pkglint

    d10588 6 a10593 5 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10595 2 a10596 1 $ pkglint d10606 2 a10607 2 e.g. pkglint -v for a very verbose check.

    d10616 1 a10616 1 "id2575078" id="id2575078">A.2. Steps for d10625 8 a10632 8 # cd /usr/pkgsrc/lang # mkdir bison # cd bison # mkdir patches d10635 3 a10637 3

    Create Makefile, DESCR and PLIST (see # make fetch d10659 2 a10660 2

    Generate the checksum of the distfile into distinfo:

    d10662 2 a10663 2 # make makesum d10668 2 a10669 1 # make d10724 2 a10725 2 # make install d10741 3 a10743 3 remove it with pkg_delete bison. Should you decide that you want a binary package, do this now:

    d10745 2 a10746 2 # make package d10757 2 a10758 2 # make clean d10797 2 a10798 1 # make d10869 3 a10871 3 # # make install d10886 1 a10886 1 # d10901 2 a10902 2 # make package d10909 1 a10909 1 # d11011 3 a11013 3

    If necessary, create a symlink ln -s `uname -m` `uname -p` (amiga -> m68k, ...)

    d11034 1 a11034 1
    D.1. d11037 1 a11037 1
    D.2. d11050 1 a11050 1 "id2575861" id="id2575861">D.1. Targets

    d11055 2 a11056 2

    The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files d11062 4 a11065 3

    pkgsrc/doc/pkgsrc.txt, which replaces pkgsrc/Packages.txt

    d11069 2 a11070 2

    pkgsrc/doc/pkgsrc.html

    d11074 2 a11075 2

    http://www.NetBSD.org/Documentation/pkgsrc/: d11084 2 a11085 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.pdf: d11090 2 a11091 2

    http://www.NetBSD.org/Documentation/pkgsrc/pkgsrc.ps: d11103 2 a11104 2 "id2576068" id= "id2576068">D.2. Procedure

    d11124 4 a11127 4 found in pkgsrc/meta-pkgs/netbsd-doc and pkgsrc/meta-pkgs/netbsd-doc-print.

    d11131 2 a11132 2

    Edit the XML file(s) in pkgsrc/doc/guide/files.

    d11136 4 a11139 4

    Run make extract && make do-lint in pkgsrc/doc/guide to check the XML syntax, and fix it if needed.

    d11143 4 a11146 3

    Run make in pkgsrc/doc/guide to build the HTML and ASCII version.

    d11150 4 a11153 3

    If all is well, run make install-doc to put the generated files into pkgsrc/doc.

    d11157 2 a11158 2

    cvs commit pkgsrc/doc/guide/files

    d11162 3 a11164 2

    cvs commit -m re-generate pkgsrc/doc/pkgsrc.{html,txt}

    d11170 5 a11174 4 pkgsrc guide automatically, also run make install-htdoc HTDOCSDIR=../../../htdocs (or similar, adjust HTDOCSDIR!).

    d11178 2 a11179 2

    cvs commit htdocs/Documentation/pkgsrc

    @ 1.5 log @re-gen @ text @d743 1 a743 1
    D.2. d4253 1 a4253 1 $NetBSD: faq.xml,v 1.1.1.1 2004/10/21 14:27:43 grant Exp $ d10864 1 a10864 1
    D.2. d10908 12 d10929 2 a10930 2 "id2576046" id= "id2576046">D.2. Procedure d10940 17 d10958 1 a10958 1 "filename">pkgsrc/doc/guide/files

    d10962 2 a10963 2

    Run make do-lint in d10971 1 a10971 8 the HTML and ASCII version

  • Run make OUTPUT=pdf in pkgsrc/doc/guide to build the PDF version.

    d10986 1 a10986 1

    cvs commit d10996 1 a10996 1 adjust HTDOCSDIR!)

    @ 1.4 log @Re-generate for today's changes (editing.xml) @ text @d289 3 a291 3
    6.3. Utilities for package management (pkgtools)
    d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 1 a308 1
    6.8. d312 1 a312 1
    6.9. d315 1 a315 1
    6.10. d319 1 a319 1
    6.11. d323 1 a323 1
    6.12. d361 1 a361 1
    7.4. d368 1 a368 1
    7.6. d371 1 a371 1
    7.7. d381 1 a381 1
    8.1. d384 1 a384 1
    8.2. d393 1 a393 1
    8.5. d396 1 a396 1
    8.6. d400 1 a400 1
    8.7. d415 1 a415 1
    9.1. d419 1 a419 1
    9.2. d425 1 a425 1 "#id2567717">9.2.1. Anatomy of a buildlink3.mk d429 1 a429 1 "#id2568157">9.2.2. Updating d435 1 a435 1
    9.3. d441 1 a441 1 "#id2568386">9.3.1. Anatomy of a builtin.mk d445 1 a445 1 "#id2568613">9.3.2. Global preferences for d457 1 a457 1
    10.1. d460 1 a460 1
    10.2. d475 1 a475 1
    11.2. d489 1 a489 1
    12.1. d495 1 a495 1 "#id2570845">12.1.1. How to pull in variables d499 1 a499 1 "#id2570929">12.1.2. Restricted d507 1 a507 1 "#id2571444">12.1.4. Handling conflicts with d511 1 a511 1 "#id2571494">12.1.5. Packages that cannot or d515 1 a515 1 "#id2571520">12.1.6. Packages which should not d523 1 a523 1 "#id2571611">12.1.8. How to handle compiler d527 1 a527 1 "#id2571634">12.1.9. How to handle incrementing d532 1 a532 1 "#id2571751">12.1.10. Portability of d537 1 a537 1
    12.2. d543 1 a543 1 "#id2571779">12.2.1. Packages whose distfiles d548 1 a548 1 "#id2571978">12.2.2. How to handle modified d553 1 a553 1
    12.3. d563 1 a563 1 "#id2572397">12.3.2. Using libtool on GNU d568 1 a568 1 "#id2572482">12.3.3. GNU d573 1 a573 1
    12.4. d579 1 a579 1 "#id2572530">12.4.1. CPP d584 1 a584 1
    12.5. d590 1 a590 1 "#id2572563">12.5.1. Package configuration d594 1 a594 1 "#id2572733">12.5.2. User d598 1 a598 1 "#id2572778">12.5.3. Handling d602 1 a602 1 "#id2572861">12.5.4. Creating an account from a d606 1 a606 1 "#id2572992">12.5.5. Installing score d610 1 a610 1 "#id2573035">12.5.6. Packages providing login d614 1 a614 1 "#id2573161">12.5.7. Packages containing perl d618 1 a618 1 "#id2573248">12.5.8. Packages with hardcoded d622 1 a622 1 "#id2573269">12.5.9. Packages installing perl d630 1 a630 1 "#id2573557">12.5.11. Packages installing d634 1 a634 1 "#id2573657">12.5.12. Packages installing d638 1 a638 1 "#id2573708">12.5.13. Packages installing X11 d642 1 a642 1 "#id2573824">12.5.14. Packages installing GTK2 d646 1 a646 1 "#id2573893">12.5.15. Packages installing SGML d650 1 a650 1 "#id2573945">12.5.16. Packages installing d654 1 a654 1 "#id2574016">12.5.17. Packages using d659 1 a659 1
    12.6. d672 1 a672 1
    14.1. d675 1 a675 1
    14.2. d679 1 a679 1
    14.3. d683 1 a683 1
    14.4. d695 1 a695 1
    A.1. d700 1 a700 1
    A.1.1. d703 1 a703 1
    A.1.2. d706 1 a706 1
    A.1.3. d709 1 a709 1
    A.1.4. d714 1 a714 1
    A.2. Steps d740 1 a740 1
    D.1. d743 1 a743 1
    D.2. d1254 1 a1254 1
    6.3. d1258 1 a1258 1
    6.4. How d1261 1 a1261 1
    6.5. How d1265 1 a1265 1
    6.6. How d1268 1 a1268 1
    6.7. How d1271 1 a1271 1
    6.8. How d1275 1 a1275 1
    6.9. How d1278 1 a1278 1
    6.10. d1282 1 a1282 1
    6.11. d1286 1 a1286 1
    6.12. d3452 1 a3452 1
    6.3. d3456 1 a3456 1
    6.4. How d3459 1 a3459 1
    6.5. How d3462 1 a3462 1
    6.6. How d3465 1 a3465 1
    6.7. How d3468 1 a3468 1
    6.8. How d3471 1 a3471 1
    6.9. How d3474 1 a3474 1
    6.10. What d3478 1 a3478 1
    6.11. What d3481 1 a3481 1
    6.12. d3544 3 a3546 2 "id2564344" id="id2564344">6.3. Utilities for package management (pkgtools) d3632 11 d3647 9 d3785 1 a3785 1 "id2564501" id="id2564501">6.4. How to use d3803 1 a3803 1 "id2564581" id="id2564581">6.5. How can I d3825 1 a3825 1 "id2564609" id="id2564609">6.6. How can I d3847 1 a3847 1 "id2564636" id="id2564636">6.7. How to d3872 1 a3872 1 "id2564650" id="id2564650">6.8. How do I d3906 1 a3906 1 "id2564701" id="id2564701">6.9. How to d3973 1 a3973 1 "id2564978" id="id2564978">6.10. What does d4006 1 a4006 1 "id2565016" id="id2565016">6.11. What does d4034 1 a4034 1 "id2565074" id="id2565074">6.12. Using d4310 1 a4310 1
    7.4. d4317 1 a4317 1
    7.6. d4320 1 a4320 1
    7.7. d4330 1 a4330 1
    8.1. RCS d4333 1 a4333 1
    8.2. d4342 1 a4342 1
    8.5. d4345 1 a4345 1
    8.6. d4348 1 a4348 1
    8.7. d4363 1 a4363 1
    9.1. d4366 1 a4366 1
    9.2. d4372 1 a4372 1 "#id2567717">9.2.1. Anatomy of a buildlink3.mk d4376 1 a4376 1 "#id2568157">9.2.2. Updating d4382 1 a4382 1
    9.3. d4388 1 a4388 1 "#id2568386">9.3.1. Anatomy of a builtin.mk d4392 1 a4392 1 "#id2568613">9.3.2. Global preferences for native d4404 1 a4404 1
    10.1. d4407 1 a4407 1
    10.2. d4421 1 a4421 1
    11.2. d4435 1 a4435 1
    12.1. d4441 1 a4441 1 "#id2570845">12.1.1. How to pull in variables d4445 1 a4445 1 "#id2570929">12.1.2. Restricted d4453 1 a4453 1 "#id2571444">12.1.4. Handling conflicts with d4457 1 a4457 1 "#id2571494">12.1.5. Packages that cannot or d4461 1 a4461 1 "#id2571520">12.1.6. Packages which should not be d4469 1 a4469 1 "#id2571611">12.1.8. How to handle compiler d4473 1 a4473 1 "#id2571634">12.1.9. How to handle incrementing d4478 1 a4478 1 "#id2571751">12.1.10. Portability of d4483 1 a4483 1
    12.2. d4489 1 a4489 1 "#id2571779">12.2.1. Packages whose distfiles d4494 1 a4494 1 "#id2571978">12.2.2. How to handle modified d4499 1 a4499 1
    12.3. d4509 1 a4509 1 "#id2572397">12.3.2. Using libtool on GNU d4514 1 a4514 1 "#id2572482">12.3.3. GNU d4519 1 a4519 1
    12.4. d4525 1 a4525 1 "#id2572530">12.4.1. CPP defines
    d4529 1 a4529 1
    12.5. d4535 1 a4535 1 "#id2572563">12.5.1. Package configuration d4539 1 a4539 1 "#id2572733">12.5.2. User d4543 1 a4543 1 "#id2572778">12.5.3. Handling d4547 1 a4547 1 "#id2572861">12.5.4. Creating an account from a d4551 1 a4551 1 "#id2572992">12.5.5. Installing score d4555 1 a4555 1 "#id2573035">12.5.6. Packages providing login d4559 1 a4559 1 "#id2573161">12.5.7. Packages containing perl d4563 1 a4563 1 "#id2573248">12.5.8. Packages with hardcoded d4567 1 a4567 1 "#id2573269">12.5.9. Packages installing perl d4575 1 a4575 1 "#id2573557">12.5.11. Packages installing GConf2 d4579 1 a4579 1 "#id2573657">12.5.12. Packages installing d4583 1 a4583 1 "#id2573708">12.5.13. Packages installing X11 d4587 1 a4587 1 "#id2573824">12.5.14. Packages installing GTK2 d4591 1 a4591 1 "#id2573893">12.5.15. Packages installing SGML or d4595 1 a4595 1 "#id2573945">12.5.16. Packages installing d4599 1 a4599 1 "#id2574016">12.5.17. Packages using d4604 1 a4604 1
    12.6. d4617 1 a4617 1
    14.1. d4620 1 a4620 1
    14.2. d4624 1 a4624 1
    14.3. d4627 1 a4627 1
    14.4. d4658 1 a4658 1
    7.4. Other d4665 1 a4665 1
    7.6. d4668 1 a4668 1
    7.7. a4925 41

    Patch files which are optional and will depend on local site configuration can be included with names matching the pattern patches/patch-optional-*. Their suffixes should match the configuration options. The selected optional patch file names should be assigned to the variable OPTIONAL_PATCHFILES. They will not be applied by default.

    For example if a package data file needs patching to indicate the default local printer paper size as specified in the $PAPERSIZE file you can include patches for all the possible paper sizes other than the one the package comes configured for by default. In this case you might have a patch called "patch-optional-Letter-papersize" and/or another patch called "patch-optional-A4-papersize". In your Makefile you would select between them with the following construct:

                
       PATCHDIR=    ${.CURDIR}/patches
       .if exists(${PATCHDIR}/patch-optional-${PAPERSIZE}-papersize)
            OPTIONAL_PATCHFILES+= ${PATCHDIR}/patch-optional-${PAPERSIZE}-papersize
       .endif 
    

    Note that you have to define the value of PATCHDIR in order to use it in a “.if” statement like this as otherwise it's not defined until too late during the processing of the Makefile. You should use a “.if” statement in order to avoid problems should the configuration item ($PAPERSIZE in this example) be set to an unexpected value.

    d4966 1 a4966 1 "7.2. distinfo">Section 7.2, d4995 1 a4995 1 "id2566249" id="id2566249">
    7.4. Other d5119 1 a5119 1 "id2566443" id="id2566443">7.6. 7.7. 8.1. RCS d5212 1 a5212 1
    8.2. d5221 1 a5221 1
    8.5. d5224 1 a5224 1
    8.6. d5227 1 a5227 1
    8.7. d5253 1 a5253 1 "id2566585" id="id2566585">8.1. RCS d5271 2 a5272 2 "id2566600" id= "id2566600">8.2. Semi-automatic 8.5. Manpage-compression d5490 1 a5490 1 "id2566963" id="id2566963">8.6. Changing d5510 1 a5510 1 "id2566980" id="id2566980">8.7. Platform d5650 1 a5650 1
    9.1. d5653 1 a5653 1
    9.2. d5658 1 a5658 1
    9.2.1. d5661 1 a5661 1
    9.2.2. d5667 1 a5667 1
    9.3. d5672 1 a5672 1
    9.3.1. d5675 1 a5675 1
    9.3.2. d5725 1 a5725 1 "id2567252" id="id2567252">9.1. Converting d5872 1 a5872 1 "id2567579" id="id2567579">9.2. Writing d5910 2 a5911 2

    9.2.1. Anatomy of a buildlink3.mk d6130 2 a6131 2

    9.2.2. Updating 9.3. Writing d6249 2 a6250 2

    9.3.1. Anatomy of a d6372 2 a6373 2

    9.3.2. Global preferences d6431 1 a6431 1
    10.1. d6434 1 a6434 1
    10.2. d6454 1 a6454 1 "id2568685" id="id2568685">10.1. Global d6472 2 a6473 2 "id2568700" id= "id2568700">10.2. Converting packages to d6634 1 a6634 1
    11.2. Main d6828 1 a6828 1 "id2569445" id="id2569445">11.2. Main d7577 1 a7577 1
    12.1. d7583 1 a7583 1 "#id2570845">12.1.1. How to pull in variables from d7587 1 a7587 1 "#id2570929">12.1.2. Restricted d7595 1 a7595 1 "#id2571444">12.1.4. Handling conflicts with other d7599 1 a7599 1 "#id2571494">12.1.5. Packages that cannot or should d7603 1 a7603 1 "#id2571520">12.1.6. Packages which should not be d7611 1 a7611 1 "#id2571611">12.1.8. How to handle compiler d7615 1 a7615 1 "#id2571634">12.1.9. How to handle incrementing d7620 1 a7620 1 "#id2571751">12.1.10. Portability of d7625 1 a7625 1
    12.2. d7631 1 a7631 1 "#id2571779">12.2.1. Packages whose distfiles d7636 1 a7636 1 "#id2571978">12.2.2. How to handle modified d7641 1 a7641 1
    12.3. d7651 1 a7651 1 "#id2572397">12.3.2. Using libtool on GNU packages d7655 1 a7655 1 "#id2572482">12.3.3. GNU d7660 1 a7660 1
    12.4. d7666 1 a7666 1 "#id2572530">12.4.1. CPP defines
    d7670 1 a7670 1
    12.5. d7676 1 a7676 1 "#id2572563">12.5.1. Package configuration d7680 1 a7680 1 "#id2572733">12.5.2. User d7684 1 a7684 1 "#id2572778">12.5.3. Handling d7688 1 a7688 1 "#id2572861">12.5.4. Creating an account from a d7692 1 a7692 1 "#id2572992">12.5.5. Installing score d7696 1 a7696 1 "#id2573035">12.5.6. Packages providing login d7700 1 a7700 1 "#id2573161">12.5.7. Packages containing perl d7704 1 a7704 1 "#id2573248">12.5.8. Packages with hardcoded paths d7708 1 a7708 1 "#id2573269">12.5.9. Packages installing perl d7716 1 a7716 1 "#id2573557">12.5.11. Packages installing GConf2 d7720 1 a7720 1 "#id2573657">12.5.12. Packages installing d7724 1 a7724 1 "#id2573708">12.5.13. Packages installing X11 d7728 1 a7728 1 "#id2573824">12.5.14. Packages installing GTK2 d7732 1 a7732 1 "#id2573893">12.5.15. Packages installing SGML or d7736 1 a7736 1 "#id2573945">12.5.16. Packages installing d7740 1 a7740 1 "#id2574016">12.5.17. Packages using d7745 1 a7745 1
    12.6. d7755 1 a7755 1 "id2570842" id="id2570842">12.1. General d7765 2 a7766 2

    12.1.1. How to pull in d7824 2 a7825 2

    12.1.2. Restricted d8127 2 a8128 2

    12.1.4. Handling conflicts d8175 2 a8176 2

    12.1.5. Packages that cannot d8206 2 a8207 2

    12.1.6. Packages which d8269 2 a8270 2

    12.1.8. How to handle d8295 2 a8296 2

    12.1.9. How to handle d8336 2 a8337 2

    12.1.10. Portability of d8353 2 a8354 2

    12.1.10.1. ${INSTALL}, d8379 1 a8379 1 "id2571776" id="id2571776">12.2. Possible d8389 2 a8390 2

    12.2.1. Packages whose d8452 2 a8453 2

    12.2.2. How to handle d8482 2 a8483 2 "id2571990" id= "id2571990">12.3. Configuration d8705 2 a8706 2

    12.3.2. Using libtool on GNU d8783 2 a8784 2

    12.3.3. GNU d8850 1 a8850 1 "id2572526" id="id2572526">12.4. Building d8860 2 a8861 2

    12.4.1. CPP defines

    d8900 1 a8900 1 "id2572560" id="id2572560">12.5. Package d8910 2 a8911 2

    12.5.1. Package d8980 2 a8981 2

    12.5.2. User d9030 2 a9031 2

    12.5.3. Handling d9104 2 a9105 2

    12.5.4. Creating an account d9158 2 a9159 2

    12.5.5. Installing score d9196 2 a9197 2

    12.5.6. Packages providing d9231 2 a9232 2

    12.5.7. Packages containing d9250 2 a9251 2

    12.5.8. Packages with d9277 2 a9278 2

    12.5.9. Packages installing d9414 2 a9415 2

    12.5.11. Packages installing d9487 2 a9488 2

    12.5.12. Packages installing d9532 2 a9533 2

    12.5.13. Packages installing d9568 2 a9569 2

    12.5.14. Packages installing d9633 2 a9634 2

    12.5.15. Packages installing d9695 2 a9696 2

    12.5.16. Packages installing d9752 2 a9753 2

    12.5.17. Packages using d9778 1 a9778 1 "id2574029" id="id2574029">12.6. Feedback d10007 1 a10007 1
    14.1. d10010 1 a10010 1
    14.2. d10014 1 a10014 1
    14.3. d10017 1 a10017 1
    14.4. d10027 2 a10028 2 "id2574491" id= "id2574491">14.1. Submitting your d10089 2 a10090 2 "id2574538" id= "id2574538">14.2. Committing: Importing a d10145 1 a10145 1 "id2574738" id="id2574738">14.3. Updating d10196 1 a10196 1 "id2574825" id="id2574825">14.4. Moving a d10295 1 a10295 1
    A.1. d10300 1 a10300 1
    A.1.1. d10303 1 a10303 1
    A.1.2. d10306 1 a10306 1
    A.1.3. d10309 1 a10309 1
    A.1.4. d10314 1 a10314 1
    A.2. Steps d10331 1 a10331 1 "id2575051" id="id2575051">A.1. files

    d10340 2 a10341 2

    A.1.1. Makefile

    d10368 2 a10369 2

    A.1.2. DESCR

    d10385 2 a10386 2

    A.1.3. PLIST

    d10409 2 a10410 2

    A.1.4. Checking a package with d10445 1 a10445 1 "id2575193" id="id2575193">A.2. Steps for d10861 1 a10861 1
    D.1. d10864 1 a10864 1
    D.2. d10877 1 a10877 1 "id2575976" id="id2575976">D.1. Targets

    d10917 2 a10918 2 "id2576025" id= "id2576025">D.2. Procedure

    @ 1.3 log @We run on DragonFlyBSD too! @ text @d10953 7 d10969 1 a10969 3 version. Dont' omit this, as this does a very strict SGML test, and doing this properly is important for getting proper documentation on the web server!

    d10975 1 a10975 1 into pkgserc/doc.

    d10987 14 @ 1.2 log @update @ text @d59 1 a59 1

    The pkgsrc Developers Group

    d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.2 2004/10/21 15:07:47 grant Exp $

    d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2495317">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2495616">3.2.2. FreeBSD
    d152 1 a152 1 "#id2496264">3.2.3. Interix

    d155 1 a155 1 "#id2496355">3.2.4. IRIX
  • d158 1 a158 1 "#id2496472">3.2.5. OpenBSD
    d161 1 a161 1 "#id2496652">3.2.6. Solaris d179 1 a179 1 "#id2496857">4.1.1. Where to get binary d183 1 a183 1 "#id2496898">4.1.2. How to use binary d187 1 a187 1 "#id2497032">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2497053">4.2.1. d202 1 a202 1 "#id2497142">4.2.2. Fetching d206 1 a206 1 "#id2497194">4.2.3. How to build and d210 1 a210 1 "#id2498125">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2563214">5.3.2. Other environmental d243 1 a243 1 "#id2563255">5.3.3. Operation
    d246 1 a246 1 "#id2563462">5.3.4. What it d250 1 a250 1 "#id2563518">5.3.5. Disk space d254 1 a254 1 "#id2563545">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2563909">5.3.7. Building a partial set of d263 1 a263 1
    5.4. d270 1 a270 1 "#id2564035">5.4.1. Example of d282 1 a282 1
    6.1. d286 1 a286 1
    6.2. d289 1 a289 1
    6.3. d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 1 a308 1
    6.8. d312 1 a312 1
    6.9. d315 1 a315 1
    6.10. d319 1 a319 1
    6.11. d323 1 a323 1
    6.12. d361 1 a361 1
    7.4. d368 1 a368 1
    7.6. d371 1 a371 1
    7.7. d381 1 a381 1
    8.1. d384 1 a384 1
    8.2. d393 1 a393 1
    8.5. d396 1 a396 1
    8.6. d400 1 a400 1
    8.7. d415 1 a415 1
    9.1. d419 1 a419 1
    9.2. d425 1 a425 1 "#id2567709">9.2.1. Anatomy of a buildlink3.mk d429 1 a429 1 "#id2568150">9.2.2. Updating d435 1 a435 1
    9.3. d441 1 a441 1 "#id2568378">9.3.1. Anatomy of a builtin.mk d445 1 a445 1 "#id2568537">9.3.2. Global preferences for d457 1 a457 1
    10.1. d460 1 a460 1
    10.2. d475 1 a475 1
    11.2. d489 1 a489 1
    12.1. d495 1 a495 1 "#id2570770">12.1.1. How to pull in variables d499 1 a499 1 "#id2570853">12.1.2. Restricted d507 1 a507 1 "#id2571436">12.1.4. Handling conflicts with d511 1 a511 1 "#id2571486">12.1.5. Packages that cannot or d515 1 a515 1 "#id2571512">12.1.6. Packages which should not d523 1 a523 1 "#id2571604">12.1.8. How to handle compiler d527 1 a527 1 "#id2571626">12.1.9. How to handle incrementing d532 1 a532 1 "#id2571675">12.1.10. Portability of d537 1 a537 1
    12.2. d543 1 a543 1 "#id2571703">12.2.1. Packages whose distfiles d548 1 a548 1 "#id2571902">12.2.2. How to handle modified d553 1 a553 1
    12.3. d563 1 a563 1 "#id2572390">12.3.2. Using libtool on GNU d568 1 a568 1 "#id2572474">12.3.3. GNU d573 1 a573 1
    12.4. d579 1 a579 1 "#id2572522">12.4.1. CPP d584 1 a584 1
    12.5. d590 1 a590 1 "#id2572555">12.5.1. Package configuration d594 1 a594 1 "#id2572726">12.5.2. User d598 1 a598 1 "#id2572771">12.5.3. Handling d602 1 a602 1 "#id2572922">12.5.4. Creating an account from a d606 1 a606 1 "#id2573052">12.5.5. Installing score d610 1 a610 1 "#id2573096">12.5.6. Packages providing login d614 1 a614 1 "#id2573222">12.5.7. Packages containing perl d618 1 a618 1 "#id2573240">12.5.8. Packages with hardcoded d622 1 a622 1 "#id2573261">12.5.9. Packages installing perl d630 1 a630 1 "#id2573549">12.5.11. Packages installing d634 1 a634 1 "#id2573650">12.5.12. Packages installing d638 1 a638 1 "#id2573701">12.5.13. Packages installing X11 d642 1 a642 1 "#id2573816">12.5.14. Packages installing GTK2 d646 1 a646 1 "#id2573885">12.5.15. Packages installing SGML d650 1 a650 1 "#id2573938">12.5.16. Packages installing d654 1 a654 1 "#id2574008">12.5.17. Packages using d659 1 a659 1
    12.6. d672 1 a672 1
    14.1. d675 1 a675 1
    14.2. d679 1 a679 1
    14.3. d683 1 a683 1
    14.4. d695 1 a695 1
    A.1. d700 1 a700 1
    A.1.1. d703 1 a703 1
    A.1.2. d706 1 a706 1
    A.1.3. d709 1 a709 1
    A.1.4. d714 1 a714 1
    A.2. Steps d740 1 a740 1
    D.1. d743 1 a743 1
    D.2. d863 5 d873 3 a875 2

    Interix

    d1087 1 a1087 1
    2.1. As d1090 1 a1090 1
    2.2. Via d1093 1 a1093 1
    2.3. Via d1103 1 a1103 1
    3.1. d1106 1 a1106 1
    3.2. d1112 1 a1112 1 "#id2495317">3.2.1. Darwin (Mac OS d1116 1 a1116 1 "#id2495616">3.2.2. FreeBSD
    d1119 1 a1119 1 "#id2496264">3.2.3. Interix d1122 1 a1122 1 "#id2496355">3.2.4. IRIX d1125 1 a1125 1 "#id2496472">3.2.5. OpenBSD d1128 1 a1128 1 "#id2496652">3.2.6. Solaris d1146 1 a1146 1 "#id2496857">4.1.1. Where to get binary d1150 1 a1150 1 "#id2496898">4.1.2. How to use binary d1154 1 a1154 1 "#id2497032">4.1.3. A word of d1159 1 a1159 1
    4.2. d1165 1 a1165 1 "#id2497053">4.2.1. Requirements
    d1168 1 a1168 1 "#id2497142">4.2.2. Fetching d1172 1 a1172 1 "#id2497194">4.2.3. How to build and d1176 1 a1176 1 "#id2498125">4.2.4. Selecting the d1188 1 a1188 1
    5.1. d1191 1 a1191 1
    5.2. d1205 1 a1205 1 "#id2563214">5.3.2. Other environmental d1209 1 a1209 1 "#id2563255">5.3.3. Operation
    d1212 1 a1212 1 "#id2563462">5.3.4. What it does d1215 1 a1215 1 "#id2563518">5.3.5. Disk space d1219 1 a1219 1 "#id2563545">5.3.6. Setting up a sandbox for d1223 1 a1223 1 "#id2563909">5.3.7. Building a partial set of d1228 1 a1228 1
    5.4. d1235 1 a1235 1 "#id2564035">5.4.1. Example of d1247 1 a1247 1
    6.1. Is d1251 1 a1251 1
    6.2. d1254 1 a1254 1
    6.3. d1258 1 a1258 1
    6.4. How d1261 1 a1261 1
    6.5. How d1265 1 a1265 1
    6.6. How d1268 1 a1268 1
    6.7. How d1271 1 a1271 1
    6.8. How d1275 1 a1275 1
    6.9. How d1278 1 a1278 1
    6.10. d1282 1 a1282 1
    6.11. d1286 1 a1286 1
    6.12. d1316 1 a1316 1
    2.1. As d1319 1 a1319 1
    2.2. Via d1322 1 a1322 1
    2.3. Via d1336 1 a1336 1 "id2495045" id="id2495045">2.1. As tar d1354 1 a1354 1 "id2495062" id="id2495062">2.2. Via d1380 1 a1380 1 "id2495094" id="id2495094">2.3. Via d1435 1 a1435 1
    3.1. d1438 1 a1438 1
    3.2. d1443 1 a1443 1
    3.2.1. d1446 1 a1446 1
    3.2.2. d1449 1 a1449 1
    3.2.3. d1452 1 a1452 1
    3.2.4. d1455 1 a1455 1
    3.2.5. d1458 1 a1458 1
    3.2.6. d1470 2 a1471 2 "id2495204" id= "id2495204">3.1. Bootstrapping pkgsrc d1552 1 a1552 1 "id2495310" id="id2495310">3.2. Platform d1565 2 a1566 2

    3.2.1. Darwin (Mac OS d1698 2 a1699 2

    3.2.2. FreeBSD

    d1754 2 a1755 2

    3.2.3. Interix

    d1925 2 a1926 2

    3.2.4. IRIX

    d1978 2 a1979 2

    3.2.5. OpenBSD

    d2044 2 a2045 2

    3.2.6. Solaris

    d2089 2 a2090 2

    3.2.6.1. If you are using d2119 2 a2120 2

    3.2.6.2. If you are using d2196 1 a2196 1
    4.1.1. d2199 1 a2199 1
    4.1.2. d2202 1 a2202 1
    4.1.3. d2207 1 a2207 1
    4.2. d2212 1 a2212 1
    4.2.1. d2215 1 a2215 1
    4.2.2. d2218 1 a2218 1
    4.2.3. d2221 1 a2221 1
    4.2.4. d2248 2 a2249 2

    4.1.1. Where to get binary d2279 2 a2280 2

    4.1.2. How to use binary d2323 2 a2324 2

    4.1.3. A word of d2347 1 a2347 1 "id2497044" id="id2497044">4.2. Building d2362 2 a2363 2

    4.2.1. Requirements

    d2382 2 a2383 2

    4.2.2. Fetching d2424 2 a2425 2

    4.2.3. How to build and d2579 2 a2580 2

    4.2.4. Selecting the d2679 1 a2679 1
    5.1. d2682 1 a2682 1
    5.2. d2695 1 a2695 1
    5.3.2. d2698 1 a2698 1
    5.3.3. d2701 1 a2701 1
    5.3.4. d2704 1 a2704 1
    5.3.5. d2707 1 a2707 1
    5.3.6. d2711 1 a2711 1
    5.3.7. d2716 1 a2716 1
    5.4. d2722 1 a2722 1
    5.4.1. d2734 1 a2734 1 "id2498280" id="id2498280">5.1. Building a d2787 1 a2787 1 "id2563075" id="id2563075">5.2. Settings d2869 2 a2870 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d2967 2 a2968 2

    5.3.3. Operation

    d3014 2 a3015 2

    5.3.4. What it does

    d3073 2 a3074 2

    5.3.5. Disk space d3116 2 a3117 2

    5.3.6. Setting up a sandbox d3294 2 a3295 2

    5.3.7. Building a partial d3348 1 a3348 1 "id2563952" id="id2563952">5.4. Creating a d3371 2 a3372 2

    5.4.1. Example of d3445 1 a3445 1
    6.1. Is d3449 1 a3449 1
    6.2. d3452 1 a3452 1
    6.3. d3456 1 a3456 1
    6.4. How d3459 1 a3459 1
    6.5. How d3462 1 a3462 1
    6.6. How d3465 1 a3465 1
    6.7. How d3468 1 a3468 1
    6.8. How d3471 1 a3471 1
    6.9. How d3474 1 a3474 1
    6.10. What d3478 1 a3478 1
    6.11. What d3481 1 a3481 1
    6.12. d3503 1 a3503 1 "id2564294" id="id2564294">6.1. Is there a d3528 1 a3528 1 "id2564324" id="id2564324">6.2. Where's d3544 1 a3544 1 "id2564337" id="id2564337">6.3. Utilities d3764 1 a3764 1 "id2564562" id="id2564562">6.4. How to use d3782 1 a3782 1 "id2564642" id="id2564642">6.5. How can I d3804 1 a3804 1 "id2564669" id="id2564669">6.6. How can I d3826 1 a3826 1 "id2564697" id="id2564697">6.7. How to d3851 1 a3851 1 "id2564711" id="id2564711">6.8. How do I d3885 1 a3885 1 "id2564762" id="id2564762">6.9. How to d3952 1 a3952 1 "id2564970" id="id2564970">6.10. What does d3985 1 a3985 1 "id2565009" id="id2565009">6.11. What does d4013 1 a4013 1 "id2565066" id="id2565066">6.12. Using d4289 1 a4289 1
    7.4. d4296 1 a4296 1
    7.6. d4299 1 a4299 1
    7.7. d4309 1 a4309 1
    8.1. RCS d4312 1 a4312 1
    8.2. d4321 1 a4321 1
    8.5. d4324 1 a4324 1
    8.6. d4327 1 a4327 1
    8.7. d4342 1 a4342 1
    9.1. d4345 1 a4345 1
    9.2. d4351 1 a4351 1 "#id2567709">9.2.1. Anatomy of a buildlink3.mk d4355 1 a4355 1 "#id2568150">9.2.2. Updating d4361 1 a4361 1
    9.3. d4367 1 a4367 1 "#id2568378">9.3.1. Anatomy of a builtin.mk d4371 1 a4371 1 "#id2568537">9.3.2. Global preferences for native d4383 1 a4383 1
    10.1. d4386 1 a4386 1
    10.2. d4400 1 a4400 1
    11.2. d4414 1 a4414 1
    12.1. d4420 1 a4420 1 "#id2570770">12.1.1. How to pull in variables d4424 1 a4424 1 "#id2570853">12.1.2. Restricted d4432 1 a4432 1 "#id2571436">12.1.4. Handling conflicts with d4436 1 a4436 1 "#id2571486">12.1.5. Packages that cannot or d4440 1 a4440 1 "#id2571512">12.1.6. Packages which should not be d4448 1 a4448 1 "#id2571604">12.1.8. How to handle compiler d4452 1 a4452 1 "#id2571626">12.1.9. How to handle incrementing d4457 1 a4457 1 "#id2571675">12.1.10. Portability of d4462 1 a4462 1
    12.2. d4468 1 a4468 1 "#id2571703">12.2.1. Packages whose distfiles d4473 1 a4473 1 "#id2571902">12.2.2. How to handle modified d4478 1 a4478 1
    12.3. d4488 1 a4488 1 "#id2572390">12.3.2. Using libtool on GNU d4493 1 a4493 1 "#id2572474">12.3.3. GNU d4498 1 a4498 1
    12.4. d4504 1 a4504 1 "#id2572522">12.4.1. CPP defines
    d4508 1 a4508 1
    12.5. d4514 1 a4514 1 "#id2572555">12.5.1. Package configuration d4518 1 a4518 1 "#id2572726">12.5.2. User d4522 1 a4522 1 "#id2572771">12.5.3. Handling d4526 1 a4526 1 "#id2572922">12.5.4. Creating an account from a d4530 1 a4530 1 "#id2573052">12.5.5. Installing score d4534 1 a4534 1 "#id2573096">12.5.6. Packages providing login d4538 1 a4538 1 "#id2573222">12.5.7. Packages containing perl d4542 1 a4542 1 "#id2573240">12.5.8. Packages with hardcoded d4546 1 a4546 1 "#id2573261">12.5.9. Packages installing perl d4554 1 a4554 1 "#id2573549">12.5.11. Packages installing GConf2 d4558 1 a4558 1 "#id2573650">12.5.12. Packages installing d4562 1 a4562 1 "#id2573701">12.5.13. Packages installing X11 d4566 1 a4566 1 "#id2573816">12.5.14. Packages installing GTK2 d4570 1 a4570 1 "#id2573885">12.5.15. Packages installing SGML or d4574 1 a4574 1 "#id2573938">12.5.16. Packages installing d4578 1 a4578 1 "#id2574008">12.5.17. Packages using d4583 1 a4583 1
    12.6. d4596 1 a4596 1
    14.1. d4599 1 a4599 1
    14.2. d4603 1 a4603 1
    14.3. d4606 1 a4606 1
    14.4. d4637 1 a4637 1
    7.4. Other d4644 1 a4644 1
    7.6. d4647 1 a4647 1
    7.7. d5015 1 a5015 1 "id2566242" id="id2566242">7.4. Other d5139 1 a5139 1 "id2566436" id="id2566436">7.6. 7.7. 8.1. RCS d5232 1 a5232 1
    8.2. d5241 1 a5241 1
    8.5. d5244 1 a5244 1
    8.6. d5247 1 a5247 1
    8.7. d5273 1 a5273 1 "id2566578" id="id2566578">8.1. RCS d5291 2 a5292 2 "id2566593" id= "id2566593">8.2. Semi-automatic 8.5. Manpage-compression

    d5510 1 a5510 1 "id2566955" id="id2566955">8.6. Changing d5530 1 a5530 1 "id2566972" id="id2566972">8.7. Platform d5670 1 a5670 1
    9.1. d5673 1 a5673 1
    9.2. d5678 1 a5678 1
    9.2.1. d5681 1 a5681 1
    9.2.2. d5687 1 a5687 1
    9.3. d5692 1 a5692 1
    9.3.1. d5695 1 a5695 1
    9.3.2. d5745 1 a5745 1 "id2567313" id="id2567313">9.1. Converting d5892 1 a5892 1 "id2567640" id="id2567640">9.2. Writing d5930 2 a5931 2

    9.2.1. Anatomy of a buildlink3.mk d6150 2 a6151 2

    9.2.2. Updating 9.3. Writing d6269 2 a6270 2

    9.3.1. Anatomy of a d6392 2 a6393 2

    9.3.2. Global preferences d6451 1 a6451 1
    10.1. d6454 1 a6454 1
    10.2. d6474 1 a6474 1 "id2568610" id="id2568610">10.1. Global d6492 2 a6493 2 "id2568625" id= "id2568625">10.2. Converting packages to d6654 1 a6654 1
    11.2. Main d6848 1 a6848 1 "id2569369" id="id2569369">11.2. Main d7597 1 a7597 1
    12.1. d7603 1 a7603 1 "#id2570770">12.1.1. How to pull in variables from d7607 1 a7607 1 "#id2570853">12.1.2. Restricted d7615 1 a7615 1 "#id2571436">12.1.4. Handling conflicts with other d7619 1 a7619 1 "#id2571486">12.1.5. Packages that cannot or should d7623 1 a7623 1 "#id2571512">12.1.6. Packages which should not be d7631 1 a7631 1 "#id2571604">12.1.8. How to handle compiler d7635 1 a7635 1 "#id2571626">12.1.9. How to handle incrementing d7640 1 a7640 1 "#id2571675">12.1.10. Portability of d7645 1 a7645 1
    12.2. d7651 1 a7651 1 "#id2571703">12.2.1. Packages whose distfiles d7656 1 a7656 1 "#id2571902">12.2.2. How to handle modified d7661 1 a7661 1
    12.3. d7671 1 a7671 1 "#id2572390">12.3.2. Using libtool on GNU packages d7675 1 a7675 1 "#id2572474">12.3.3. GNU d7680 1 a7680 1
    12.4. d7686 1 a7686 1 "#id2572522">12.4.1. CPP defines
    d7690 1 a7690 1
    12.5. d7696 1 a7696 1 "#id2572555">12.5.1. Package configuration d7700 1 a7700 1 "#id2572726">12.5.2. User d7704 1 a7704 1 "#id2572771">12.5.3. Handling d7708 1 a7708 1 "#id2572922">12.5.4. Creating an account from a d7712 1 a7712 1 "#id2573052">12.5.5. Installing score d7716 1 a7716 1 "#id2573096">12.5.6. Packages providing login d7720 1 a7720 1 "#id2573222">12.5.7. Packages containing perl d7724 1 a7724 1 "#id2573240">12.5.8. Packages with hardcoded paths d7728 1 a7728 1 "#id2573261">12.5.9. Packages installing perl d7736 1 a7736 1 "#id2573549">12.5.11. Packages installing GConf2 d7740 1 a7740 1 "#id2573650">12.5.12. Packages installing d7744 1 a7744 1 "#id2573701">12.5.13. Packages installing X11 d7748 1 a7748 1 "#id2573816">12.5.14. Packages installing GTK2 d7752 1 a7752 1 "#id2573885">12.5.15. Packages installing SGML or d7756 1 a7756 1 "#id2573938">12.5.16. Packages installing d7760 1 a7760 1 "#id2574008">12.5.17. Packages using d7765 1 a7765 1
    12.6. d7775 1 a7775 1 "id2570766" id="id2570766">12.1. General d7785 2 a7786 2

    12.1.1. How to pull in d7844 2 a7845 2

    12.1.2. Restricted d8147 2 a8148 2

    12.1.4. Handling conflicts d8195 2 a8196 2

    12.1.5. Packages that cannot d8226 2 a8227 2

    12.1.6. Packages which d8289 2 a8290 2

    12.1.8. How to handle d8315 2 a8316 2

    12.1.9. How to handle d8356 2 a8357 2

    12.1.10. Portability of d8373 2 a8374 2

    12.1.10.1. ${INSTALL}, d8399 1 a8399 1 "id2571700" id="id2571700">12.2. Possible d8409 2 a8410 2

    12.2.1. Packages whose d8472 2 a8473 2

    12.2.2. How to handle d8502 2 a8503 2 "id2571914" id= "id2571914">12.3. Configuration d8725 2 a8726 2

    12.3.2. Using libtool on GNU d8803 2 a8804 2

    12.3.3. GNU d8870 1 a8870 1 "id2572519" id="id2572519">12.4. Building d8880 2 a8881 2

    12.4.1. CPP defines

    d8920 1 a8920 1 "id2572552" id="id2572552">12.5. Package d8930 2 a8931 2

    12.5.1. Package d9000 2 a9001 2

    12.5.2. User d9050 2 a9051 2

    12.5.3. Handling d9124 2 a9125 2

    12.5.4. Creating an account d9178 2 a9179 2

    12.5.5. Installing score d9216 2 a9217 2

    12.5.6. Packages providing d9251 2 a9252 2

    12.5.7. Packages containing d9270 2 a9271 2

    12.5.8. Packages with d9297 2 a9298 2

    12.5.9. Packages installing d9434 2 a9435 2

    12.5.11. Packages installing d9507 2 a9508 2

    12.5.12. Packages installing d9552 2 a9553 2

    12.5.13. Packages installing d9588 2 a9589 2

    12.5.14. Packages installing d9653 2 a9654 2

    12.5.15. Packages installing d9715 2 a9716 2

    12.5.16. Packages installing d9772 2 a9773 2

    12.5.17. Packages using d9798 1 a9798 1 "id2574022" id="id2574022">12.6. Feedback d10027 1 a10027 1
    14.1. d10030 1 a10030 1
    14.2. d10034 1 a10034 1
    14.3. d10037 1 a10037 1
    14.4. d10047 2 a10048 2 "id2574484" id= "id2574484">14.1. Submitting your d10109 2 a10110 2 "id2574531" id= "id2574531">14.2. Committing: Importing a d10165 1 a10165 1 "id2574730" id="id2574730">14.3. Updating d10216 1 a10216 1 "id2574818" id="id2574818">14.4. Moving a d10315 1 a10315 1
    A.1. d10320 1 a10320 1
    A.1.1. d10323 1 a10323 1
    A.1.2. d10326 1 a10326 1
    A.1.3. d10329 1 a10329 1
    A.1.4. d10334 1 a10334 1
    A.2. Steps d10351 1 a10351 1 "id2575044" id="id2575044">A.1. files

    d10360 2 a10361 2

    A.1.1. Makefile

    d10388 2 a10389 2

    A.1.2. DESCR

    d10405 2 a10406 2

    A.1.3. PLIST

    d10429 2 a10430 2

    A.1.4. Checking a package with d10465 1 a10465 1 "id2575186" id="id2575186">A.2. Steps for d10881 1 a10881 1
    D.1. d10884 1 a10884 1
    D.2. d10897 1 a10897 1 "id2575900" id="id2575900">D.1. Targets

    d10937 2 a10938 2 "id2575949" id= "id2575949">D.2. Procedure

    @ 1.1 log @initial commit of the pkgsrc guide for distribution with pkgsrc. @ text @d4 1 a4 1 "HTML Tidy for NetBSD (vers 1st August 2004), see www.w3.org" /> d22 2 a23 2

    The pkgsrc guide

    d27 1 a27 1

    Documentation on the NetBSD package d58 2 d69 2 a70 2

    $NetBSD: pkgsrc.xml,v 1.1.1.1 2004/10/21 14:27:40 grant Exp $

    d96 1 a96 1
    1.1. d110 1 a110 1
    I. pkgsrc d120 1 a120 1
    2.1. d123 1 a123 1
    2.2. d126 1 a126 1
    2.3. d136 1 a136 1
    3.1. d139 1 a139 1
    3.2. d145 1 a145 1 "#id2495382">3.2.1. Darwin (Mac OS d149 1 a149 1 "#id2495681">3.2.2. FreeBSD
    d152 1 a152 1 "#id2496397">3.2.3. Interix

    d155 1 a155 1 "#id2496488">3.2.4. IRIX

    d158 1 a158 1 "#id2496605">3.2.5. OpenBSD

    d161 1 a161 1 "#id2496786">3.2.6. Solaris

    d179 1 a179 1 "#id2496922">4.1.1. Where to get binary d183 1 a183 1 "#id2496963">4.1.2. How to use binary d187 1 a187 1 "#id2497165">4.1.3. A word of d192 1 a192 1
    4.2. d198 1 a198 1 "#id2497187">4.2.1. d202 1 a202 1 "#id2497275">4.2.2. Fetching d206 1 a206 1 "#id2497328">4.2.3. How to build and d210 1 a210 1 "#id2498259">4.2.4. Selecting the d222 1 a222 1
    5.1. d225 1 a225 1
    5.2. d239 1 a239 1 "#id2563348">5.3.2. Other environmental d243 1 a243 1 "#id2563388">5.3.3. Operation
    d246 1 a246 1 "#id2563595">5.3.4. What it d250 1 a250 1 "#id2563652">5.3.5. Disk space d254 1 a254 1 "#id2563678">5.3.6. Setting up a sandbox for d258 1 a258 1 "#id2564042">5.3.7. Building a partial set of d263 1 a263 1
    5.4. d270 1 a270 1 "#id2564168">5.4.1. Example of d282 1 a282 1
    6.1. d286 1 a286 1
    6.2. d289 1 a289 1
    6.3. d293 1 a293 1
    6.4. d296 1 a296 1
    6.5. d300 1 a300 1
    6.6. d304 1 a304 1
    6.7. d308 1 a308 1
    6.8. d312 1 a312 1
    6.9. d315 1 a315 1
    6.10. d319 1 a319 1
    6.11. d323 1 a323 1
    6.12. d338 1 a338 1
    II. d361 1 a361 1
    7.4. d368 1 a368 1
    7.6. d371 1 a371 1
    7.7. d381 1 a381 1
    8.1. d384 1 a384 1
    8.2. d393 1 a393 1
    8.5. d396 1 a396 1
    8.6. d400 1 a400 1
    8.7. d415 1 a415 1
    9.1. d419 1 a419 1
    9.2. d425 1 a425 1 "#id2567774">9.2.1. Anatomy of a buildlink3.mk d429 1 a429 1 "#id2568283">9.2.2. Updating d435 1 a435 1
    9.3. d441 1 a441 1 "#id2568512">9.3.1. Anatomy of a builtin.mk d445 1 a445 1 "#id2568739">9.3.2. Global preferences for d457 1 a457 1
    10.1. d460 1 a460 1
    10.2. d475 1 a475 1
    11.2. d489 1 a489 1
    12.1. d495 1 a495 1 "#id2570971">12.1.1. How to pull in variables d499 1 a499 1 "#id2571054">12.1.2. Restricted d507 1 a507 1 "#id2571501">12.1.4. Handling conflicts with d511 1 a511 1 "#id2571620">12.1.5. Packages that cannot or d515 1 a515 1 "#id2571645">12.1.6. Packages which should not d523 1 a523 1 "#id2571737">12.1.8. How to handle compiler d527 1 a527 1 "#id2571760">12.1.9. How to handle incrementing d532 1 a532 1 "#id2571809">12.1.10. Portability of d537 1 a537 1
    12.2. d543 1 a543 1 "#id2571905">12.2.1. Packages whose distfiles d548 1 a548 1 "#id2572036">12.2.2. How to handle modified d553 1 a553 1
    12.3. d563 1 a563 1 "#id2572523">12.3.2. Using libtool on GNU d568 1 a568 1 "#id2572608">12.3.3. GNU d573 1 a573 1
    12.4. d579 1 a579 1 "#id2572656">12.4.1. CPP d584 1 a584 1
    12.5. d590 1 a590 1 "#id2572689">12.5.1. Package configuration d594 2 a595 2 "#id2572859">12.5.2. User Interaction
    d598 1 a598 1 "#id2572904">12.5.3. Handling d602 1 a602 1 "#id2572987">12.5.4. Creating an account from a d606 1 a606 1 "#id2573049">12.5.5. Installing score d610 1 a610 1 "#id2573093">12.5.6. Packages providing login d614 1 a614 1 "#id2573424">12.5.7. Packages containing perl d618 1 a618 1 "#id2573442">12.5.8. Packages with hardcoded d622 1 a622 1 "#id2573463">12.5.9. Packages installing perl d630 1 a630 1 "#id2573751">12.5.11. Packages installing d634 1 a634 1 "#id2573851">12.5.12. Packages installing d638 1 a638 1 "#id2573902">12.5.13. Packages installing X11 d642 1 a642 1 "#id2574018">12.5.14. Packages installing GTK2 d646 1 a646 1 "#id2574087">12.5.15. Packages installing SGML d650 1 a650 1 "#id2574139">12.5.16. Packages installing d654 1 a654 1 "#id2574210">12.5.17. Packages using d659 1 a659 1
    12.6. d672 1 a672 1
    14.1. d675 1 a675 1
    14.2. d679 3 a681 3
    14.3. Updating a Package to a Newer Version
    d683 2 a684 2
    14.4. Moving a Package in pkgsrc
    d695 1 a695 1
    A.1. d700 1 a700 1
    A.1.1. d703 1 a703 1
    A.1.2. d706 1 a706 1
    A.1.3. d709 1 a709 1
    A.1.4. d714 1 a714 1
    A.2. Steps d734 13 d764 1 a764 1
    1.1. d783 2 a784 2 "id2494471" id= "id2494471">1.1. Introduction d813 2 a814 2 class="pkgname">www/apache - The Apache web server

    d821 2 a822 2 class="pkgname">www/mozilla - The Mozilla web browser

    d829 2 a830 2 class="pkgname">meta-pkgs/gnome - The GNOME Desktop Environment

    d837 2 a838 2 class="pkgname">meta-pkgs/kde3 - The K Desktop Environment

    d912 5 a916 5 "Part I. pkgsrc user's guide">pkgsrc user's guide, describes how one can use one of the packages in the Package Collection, either by installing a precompiled binary package, or by building one's own copy using the NetBSD package system. The second part, pkgsrc developer's guide, explains how to prepare a package so it can be easily built by other NetBSD users without knowing about the package's building details.

    d1067 1 a1067 1 "users-guide">pkgsrc user's guide d1081 1 a1081 1
    2.1. As d1084 1 a1084 1
    2.2. Via d1087 1 a1087 1
    2.3. Via d1097 1 a1097 1
    3.1. d1100 1 a1100 1
    3.2. d1106 1 a1106 1 "#id2495382">3.2.1. Darwin (Mac OS d1110 1 a1110 1 "#id2495681">3.2.2. FreeBSD
    d1113 1 a1113 1 "#id2496397">3.2.3. Interix d1116 1 a1116 1 "#id2496488">3.2.4. IRIX d1119 1 a1119 1 "#id2496605">3.2.5. OpenBSD d1122 1 a1122 1 "#id2496786">3.2.6. Solaris d1140 1 a1140 1 "#id2496922">4.1.1. Where to get binary d1144 1 a1144 1 "#id2496963">4.1.2. How to use binary d1148 1 a1148 1 "#id2497165">4.1.3. A word of d1153 1 a1153 1
    4.2. d1159 1 a1159 1 "#id2497187">4.2.1. Requirements
    d1162 1 a1162 1 "#id2497275">4.2.2. Fetching d1166 1 a1166 1 "#id2497328">4.2.3. How to build and d1170 1 a1170 1 "#id2498259">4.2.4. Selecting the d1182 1 a1182 1
    5.1. d1185 1 a1185 1
    5.2. d1199 1 a1199 1 "#id2563348">5.3.2. Other environmental d1203 1 a1203 1 "#id2563388">5.3.3. Operation
    d1206 1 a1206 1 "#id2563595">5.3.4. What it does d1209 1 a1209 1 "#id2563652">5.3.5. Disk space d1213 1 a1213 1 "#id2563678">5.3.6. Setting up a sandbox for d1217 1 a1217 1 "#id2564042">5.3.7. Building a partial set of d1222 1 a1222 1
    5.4. d1229 1 a1229 1 "#id2564168">5.4.1. Example of d1241 1 a1241 1
    6.1. Is d1245 1 a1245 1
    6.2. d1248 1 a1248 1
    6.3. d1252 1 a1252 1
    6.4. How d1255 1 a1255 1
    6.5. How d1259 1 a1259 1
    6.6. How d1262 1 a1262 1
    6.7. How d1265 1 a1265 1
    6.8. How d1269 1 a1269 1
    6.9. How d1272 1 a1272 1
    6.10. d1276 1 a1276 1
    6.11. d1280 1 a1280 1
    6.12. d1310 1 a1310 1
    2.1. As d1313 1 a1313 1
    2.2. Via d1316 1 a1316 1
    2.3. Via d1330 1 a1330 1 "id2495110" id="id2495110">2.1. As tar d1339 2 a1340 2 target="_top">ftp.NetBSD.org and unpack it into /usr/pkgsrc.

    d1348 1 a1348 1 "id2495127" id="id2495127">2.2. Via d1374 1 a1374 1 "id2495159" id="id2495159">2.3. Via d1429 1 a1429 1
    3.1. d1432 1 a1432 1
    3.2. d1437 1 a1437 1
    3.2.1. d1440 1 a1440 1
    3.2.2. d1443 1 a1443 1
    3.2.3. d1446 1 a1446 1
    3.2.4. d1449 1 a1449 1
    3.2.5. d1452 1 a1452 1
    3.2.6. d1464 2 a1465 2 "id2495269" id= "id2495269">3.1. Bootstrapping pkgsrc d1546 1 a1546 1 "id2495376" id="id2495376">3.2. Platform d1559 2 a1560 2

    3.2.1. Darwin (Mac OS d1692 2 a1693 2

    3.2.2. FreeBSD

    d1748 2 a1749 2

    3.2.3. Interix

    d1775 1 a1775 1 Installing Interix/SFU d1919 2 a1920 2

    3.2.4. IRIX

    d1972 2 a1973 2

    3.2.5. OpenBSD

    d2038 2 a2039 2

    3.2.6. Solaris

    d2083 2 a2084 2

    3.2.6.1. If you are using d2098 3 a2100 3 class="pkgname">lang/gcc or install a binary gcc package, then remove gcc used during bootstrapping.

    d2105 2 a2106 2 target= "_top">http://www.sun.com/bigadmin/common/freewareSearch.html.

    d2113 2 a2114 2

    3.2.6.2. If you are using d2190 1 a2190 1
    4.1.1. d2193 1 a2193 1
    4.1.2. d2196 1 a2196 1
    4.1.3. d2201 1 a2201 1
    4.2. d2206 1 a2206 1
    4.2.1. d2209 1 a2209 1
    4.2.2. d2212 1 a2212 1
    4.2.3. d2215 1 a2215 1
    4.2.4. d2242 2 a2243 2

    4.1.1. Where to get binary d2273 2 a2274 2

    4.1.2. How to use binary d2317 2 a2318 2

    4.1.3. A word of d2341 1 a2341 1 "id2497177" id="id2497177">4.2. Building d2349 2 a2350 2 "Part II. pkgsrc developer's guide">Part II, “pkgsrc developer's guide”.

    d2356 2 a2357 2

    4.2.1. Requirements

    d2376 2 a2377 2

    4.2.2. Fetching d2418 2 a2419 2

    4.2.3. How to build and d2573 2 a2574 2

    4.2.4. Selecting the d2673 1 a2673 1
    5.1. d2676 1 a2676 1
    5.2. d2689 1 a2689 1
    5.3.2. d2692 1 a2692 1
    5.3.3. d2695 1 a2695 1
    5.3.4. d2698 1 a2698 1
    5.3.5. d2701 1 a2701 1
    5.3.6. d2705 1 a2705 1
    5.3.7. d2710 1 a2710 1
    5.4. d2716 1 a2716 1
    5.4.1. d2728 1 a2728 1 "id2498413" id="id2498413">5.1. Building a d2768 1 a2768 1 class="pkgname">misc/figlet example.

    d2781 1 a2781 1 "id2563208" id="id2563208">5.2. Settings d2863 2 a2864 2

    5.3.1.2. 5.3.1.3. 5.3.2. Other environmental d2961 2 a2962 2

    5.3.3. Operation

    d3008 2 a3009 2

    5.3.4. What it does

    d3067 2 a3068 2

    5.3.5. Disk space d3110 2 a3111 2

    5.3.6. Setting up a sandbox d3154 2 a3155 1 class="pkgname">security/smtpd and mail):

    d3176 1 a3176 1 class="pkgname">security/smtpd):

    d3188 6 a3193 4 class="pkgname">sysutils/aperture, net/ppp-mppe):

    d3288 2 a3289 2

    5.3.7. Building a partial d3342 1 a3342 1 "id2564085" id="id2564085">5.4. Creating a d3354 6 a3359 6 class="pkgname">pkgtools/cdpack package provides a simple tool for creating the ISO 9660 images. cdpack arranges the packages on the CD-ROMs in a way that keeps all the dependencies for given package on the same CD as that package.

    d3365 2 a3366 2

    5.4.1. Example of d3439 1 a3439 1
    6.1. Is d3443 1 a3443 1
    6.2. d3446 1 a3446 1
    6.3. d3450 1 a3450 1
    6.4. How d3453 1 a3453 1
    6.5. How d3456 1 a3456 1
    6.6. How d3459 1 a3459 1
    6.7. How d3462 1 a3462 1
    6.8. How d3465 1 a3465 1
    6.9. How d3468 1 a3468 1
    6.10. What d3472 1 a3472 1
    6.11. What d3475 1 a3475 1
    6.12. d3497 1 a3497 1 "id2564359" id="id2564359">6.1. Is there a d3522 1 a3522 1 "id2564457" id="id2564457">6.2. Where's d3538 1 a3538 1 "id2564470" id="id2564470">6.3. Utilities d3560 2 a3561 2 class="pkgname">pkgtools/x11-links: symlinks for use by buildlink

    d3575 2 a3576 2 class="pkgname">pkgtools/digest: calculates SHA1 checksums (and other kinds)

    d3583 2 a3584 2 class="pkgname">pkgtools/libnbcompat: compat library for pkg tools

    d3591 2 a3592 2 class="pkgname">pkgtools/mtree: installed on non-BSD systems due to lack of native mtree

    d3599 4 a3602 4 class="pkgname">pkgtools/pkg_install: up-to-date replacement for /usr/sbin/pkg_install, or for use on operating systems where pkg_install is not present

    d3616 4 a3619 3 class="pkgname">pkgtools/pkg_tarup: create a binary package from an already-installed package. used by 'make replace' to save the old package

    d3626 2 a3627 2 class="pkgname">pkgtools/xpkgwedge: put X11 packages someplace else (enabled by default)

    d3641 4 a3644 3 class="pkgname">pkgtools/pkg_chk: installs pkg_chk, which reports on packages whose installed versions do not match the latest pkgsrc entries

    d3651 3 a3653 3 class="pkgname">pkgtools/pkgdep: makes dependency graphs of packages, to aid in choosing a strategy for updating

    d3660 2 a3661 2 class="pkgname">pkgtools/pkgdepgraph: make graph from above (uses graphviz)

    d3668 5 a3672 5 class="pkgname">pkgtools/pkglint: This provides two distinct abilities: check a pkgsrc entry for correctness (pkglint) check for and remove out-of-date distfiles and binary packages (lintpkgsrc)

    d3679 2 a3680 2 class="pkgname">pkgtools/pkgsurvey: report what packages you have installed

    d3694 3 a3696 3 class="pkgname">pkgtools/pkgdiff: automate making and maintaining patches for a package (includes pkgdiff, pkgvi, mkpatches, ...)

    d3703 5 a3707 5 class="pkgname">pkgtools/rpm2pkg, pkgtools/url2pkg: aids in converting to pkgsrc

    d3714 2 a3715 2 class="pkgname">pkgtools/gensolpkg: convert pkgsrc to a Solaris package

    d3729 3 a3731 3 class="pkgname">pkgtools/pkgconflict: find packages that conflict but aren't marked as such

    d3738 2 a3739 2 class="pkgname">pkgtools/pkg_comp: build packages in a chrooted area

    d3746 2 a3747 2 class="pkgname">pkgtools/libkver: spoof kernel version for chrooted cross builds

    d3758 1 a3758 1 "id2564695" id="id2564695">6.4. How to use d3768 1 a3768 1 target="_top">this message for more details.

    d3776 1 a3776 1 "id2564707" id="id2564707">6.5. How can I d3798 1 a3798 1 "id2564803" id="id2564803">6.6. How can I d3820 1 a3820 1 "id2564830" id="id2564830">6.7. How to d3845 1 a3845 1 "id2564844" id="id2564844">6.8. How do I d3879 1 a3879 1 "id2564896" id="id2564896">6.9. How to d3946 1 a3946 1 "id2565104" id="id2565104">6.10. What does d3956 8 a3963 7 class="pkgname">pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the “text” set on your machine (nroff, ...). It is recommended to do that to format manpages.

    d3968 4 a3971 4 class="pkgname">pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf.

    d3979 1 a3979 1 "id2565142" id="id2565142">6.11. What does d4007 1 a4007 1 "id2565200" id="id2565200">6.12. Using d4021 3 a4023 3 class="pkgname">security/sudo) and then put the following into your /etc/mk.conf:

    d4186 2 a4187 2 class="pkgname">security/audit-packages package. It has two components:

    d4202 2 a4203 2 target= "_top">ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/pkg-vulnerabilities

    d4258 2 a4259 1 "developers-guide">pkgsrc developer's guide

    d4283 1 a4283 1
    7.4. d4290 1 a4290 1
    7.6. d4293 1 a4293 1
    7.7. d4303 1 a4303 1
    8.1. RCS d4306 1 a4306 1
    8.2. d4315 1 a4315 1
    8.5. d4318 1 a4318 1
    8.6. d4321 1 a4321 1
    8.7. d4336 1 a4336 1
    9.1. d4339 1 a4339 1
    9.2. d4345 1 a4345 1 "#id2567774">9.2.1. Anatomy of a buildlink3.mk d4349 1 a4349 1 "#id2568283">9.2.2. Updating d4355 1 a4355 1
    9.3. d4361 1 a4361 1 "#id2568512">9.3.1. Anatomy of a builtin.mk d4365 1 a4365 1 "#id2568739">9.3.2. Global preferences for native d4377 1 a4377 1
    10.1. d4380 1 a4380 1
    10.2. d4394 1 a4394 1
    11.2. d4408 1 a4408 1
    12.1. d4414 1 a4414 1 "#id2570971">12.1.1. How to pull in variables d4418 1 a4418 1 "#id2571054">12.1.2. Restricted d4426 1 a4426 1 "#id2571501">12.1.4. Handling conflicts with d4430 1 a4430 1 "#id2571620">12.1.5. Packages that cannot or d4434 1 a4434 1 "#id2571645">12.1.6. Packages which should not be d4442 1 a4442 1 "#id2571737">12.1.8. How to handle compiler d4446 1 a4446 1 "#id2571760">12.1.9. How to handle incrementing d4451 1 a4451 1 "#id2571809">12.1.10. Portability of d4456 1 a4456 1
    12.2. d4462 1 a4462 1 "#id2571905">12.2.1. Packages whose distfiles d4467 1 a4467 1 "#id2572036">12.2.2. How to handle modified d4472 1 a4472 1
    12.3. d4482 1 a4482 1 "#id2572523">12.3.2. Using libtool on GNU d4487 1 a4487 1 "#id2572608">12.3.3. GNU d4492 1 a4492 1
    12.4. d4498 1 a4498 1 "#id2572656">12.4.1. CPP defines
    d4502 1 a4502 1
    12.5. d4508 1 a4508 1 "#id2572689">12.5.1. Package configuration d4512 2 a4513 2 "#id2572859">12.5.2. User Interaction
    d4516 1 a4516 1 "#id2572904">12.5.3. Handling d4520 1 a4520 1 "#id2572987">12.5.4. Creating an account from a d4524 1 a4524 1 "#id2573049">12.5.5. Installing score d4528 1 a4528 1 "#id2573093">12.5.6. Packages providing login d4532 1 a4532 1 "#id2573424">12.5.7. Packages containing perl d4536 1 a4536 1 "#id2573442">12.5.8. Packages with hardcoded d4540 1 a4540 1 "#id2573463">12.5.9. Packages installing perl d4548 1 a4548 1 "#id2573751">12.5.11. Packages installing GConf2 d4552 1 a4552 1 "#id2573851">12.5.12. Packages installing d4556 1 a4556 1 "#id2573902">12.5.13. Packages installing X11 d4560 1 a4560 1 "#id2574018">12.5.14. Packages installing GTK2 d4564 1 a4564 1 "#id2574087">12.5.15. Packages installing SGML or d4568 1 a4568 1 "#id2574139">12.5.16. Packages installing d4572 1 a4572 1 "#id2574210">12.5.17. Packages using d4577 1 a4577 1
    12.6. d4590 1 a4590 1
    14.1. d4593 1 a4593 1
    14.2. d4597 2 a4598 2
    14.3. Updating a Package to a Newer Version
    d4600 2 a4601 2
    14.4. Moving a Package in pkgsrc
    d4631 1 a4631 1
    7.4. Other d4638 1 a4638 1
    7.6. d4641 1 a4641 1
    7.7. d4842 10 a4851 10 class="pkgname">pkgtools/digest utility calculates all of the digests in the distinfo file, and it provides various different algorithms. At the current time, the algorithms provided are: md5, rmd160, sha1, sha256, sha384 and sha512.

    d4857 4 a4860 4 class="pkgname">www/navigator). These are kept in the same distinfo file and care should be taken when upgrading such a package to ensure distfile information is not lost.

    d4961 2 a4962 2 class="pkgname">pkgtools/pkgdiff package to avoid these problems.

    d5009 1 a5009 1 "id2566375" id="id2566375">7.4. Other d5133 1 a5133 1 "id2566569" id="id2566569">7.6. editors/sam again, but the quick answer is:

    d5167 5 a5171 5 class="pkgname">lang/tcl and x11/tk for examples, and here is another one:

    d5191 1 a5191 1 "id2566657" id="id2566657">7.7. 8.1. RCS d5226 1 a5226 1
    8.2. d5235 1 a5235 1
    8.5. d5238 1 a5238 1
    8.6. d5241 1 a5241 1
    8.7. d5267 1 a5267 1 "id2566711" id="id2566711">8.1. RCS d5285 2 a5286 2 "id2566726" id= "id2566726">8.2. Semi-automatic 8.5. Manpage-compression

    d5504 1 a5504 1 "id2567089" id="id2567089">8.6. Changing d5524 1 a5524 1 "id2567106" id="id2567106">8.7. Platform d5601 3 a5603 3 class="pkgname">textproc/scrollkeeper, which removes the shared directory share/omf.

    d5664 1 a5664 1
    9.1. d5667 1 a5667 1
    9.2. d5672 1 a5672 1
    9.2.1. d5675 1 a5675 1
    9.2.2. d5681 1 a5681 1
    9.3. d5686 1 a5686 1
    9.3.1. d5689 1 a5689 1
    9.3.2. d5739 1 a5739 1 "id2567378" id="id2567378">9.1. Converting d5820 1 a5820 1 class="pkgname">devel/ncurses package.

    d5838 4 a5841 4 class="pkgname">x11/lesstif or x11/openmotif;

    d5865 1 a5865 1 class="pkgname">devel/pth as needed;

    d5886 1 a5886 1 "id2567637" id="id2567637">9.2. Writing d5907 4 a5910 4 class="pkgname">pkgtools/createbuildlink package is highly recommended. For most packages, the following command will generate a good starting point for buildlink3.mk files:

    d5924 2 a5925 2

    9.2.1. Anatomy of a buildlink3.mk d6144 2 a6145 2

    9.2.2. Updating 9.3. Writing d6263 2 a6264 2

    9.3.1. Anatomy of a d6386 2 a6387 2

    9.3.2. Global preferences d6445 1 a6445 1
    10.1. d6448 1 a6448 1
    10.2. d6468 1 a6468 1 "id2568811" id="id2568811">10.1. Global d6486 2 a6487 2 "id2568826" id= "id2568826">10.2. Converting packages to d6648 1 a6648 1
    11.2. Main d6772 2 a6773 2 class="pkgname">pkgtools/xpkgwedge is enabled by default.

    d6842 1 a6842 1 "id2569571" id="id2569571">11.2. Main d7000 1 a7000 1 class="pkgname">sysutils/top package:

    d7367 21 a7387 21 class="pkgname">www/mozilla or www/links. The generated files contain references to any packages which are in the PACKAGES directory on the local host. The generated files can be made to refer to URLs based on FTP_PKG_URL_HOST and FTP_PKG_URL_DIR. For example, if I wanted to generate README.html files which pointed to binary packages on the local machine, in the directory /usr/packages, set FTP_PKG_URL_HOST=file://localhost and FTP_PKG_URL_DIR=/usr/packages. The ${PACKAGES} directory and its subdirectories will be searched for all the binary packages.

    d7591 1 a7591 1
    12.1. d7597 1 a7597 1 "#id2570971">12.1.1. How to pull in variables from d7601 1 a7601 1 "#id2571054">12.1.2. Restricted d7609 1 a7609 1 "#id2571501">12.1.4. Handling conflicts with other d7613 1 a7613 1 "#id2571620">12.1.5. Packages that cannot or should d7617 1 a7617 1 "#id2571645">12.1.6. Packages which should not be d7625 1 a7625 1 "#id2571737">12.1.8. How to handle compiler d7629 1 a7629 1 "#id2571760">12.1.9. How to handle incrementing d7634 1 a7634 1 "#id2571809">12.1.10. Portability of d7639 1 a7639 1
    12.2. d7645 1 a7645 1 "#id2571905">12.2.1. Packages whose distfiles d7650 1 a7650 1 "#id2572036">12.2.2. How to handle modified d7655 1 a7655 1
    12.3. d7665 1 a7665 1 "#id2572523">12.3.2. Using libtool on GNU packages d7669 1 a7669 1 "#id2572608">12.3.3. GNU d7674 1 a7674 1
    12.4. d7680 1 a7680 1 "#id2572656">12.4.1. CPP defines
    d7684 1 a7684 1
    12.5. d7690 1 a7690 1 "#id2572689">12.5.1. Package configuration d7694 2 a7695 2 "#id2572859">12.5.2. User Interaction
    d7698 1 a7698 1 "#id2572904">12.5.3. Handling d7702 1 a7702 1 "#id2572987">12.5.4. Creating an account from a d7706 1 a7706 1 "#id2573049">12.5.5. Installing score d7710 1 a7710 1 "#id2573093">12.5.6. Packages providing login d7714 1 a7714 1 "#id2573424">12.5.7. Packages containing perl d7718 1 a7718 1 "#id2573442">12.5.8. Packages with hardcoded paths d7722 1 a7722 1 "#id2573463">12.5.9. Packages installing perl d7730 1 a7730 1 "#id2573751">12.5.11. Packages installing GConf2 d7734 1 a7734 1 "#id2573851">12.5.12. Packages installing d7738 1 a7738 1 "#id2573902">12.5.13. Packages installing X11 d7742 1 a7742 1 "#id2574018">12.5.14. Packages installing GTK2 d7746 1 a7746 1 "#id2574087">12.5.15. Packages installing SGML or d7750 1 a7750 1 "#id2574139">12.5.16. Packages installing d7754 1 a7754 1 "#id2574210">12.5.17. Packages using d7759 1 a7759 1
    12.6. d7769 1 a7769 1 "id2570968" id="id2570968">12.1. General d7779 2 a7780 2

    12.1.1. How to pull in d7830 2 a7831 2 class="pkgname">devel/cpuflags package if you're interested in optimization for the current CPU.

    d7838 2 a7839 2

    12.1.2. Restricted d7997 3 a7999 2 class="pkgname">print/lyx package, which uses the xpm library, version 3.4j to build:

    d8083 4 a8086 3 class="pkgname">print/lyx package needs to be able to execute the latex binary from the teTeX package when it runs, and that is specified:

    d8102 3 a8104 3 class="pkgname">print/ghostscript5 package (it relies on the jpeg sources being present in source form during the build):

    d8128 7 a8134 7 class="pkgname">devel/gettext package. The latter adds a build dependency on either an installed version of an older gettext package, or if it isn't, installs the devel/gettext-m4 package.

    d8141 2 a8142 2

    12.1.4. Handling conflicts d8161 6 a8166 6 class="pkgname">x11/Xaw3d and x11/Xaw-Xpm install provide the same shared library, thus you set in pkgsrc/x11/Xaw3d/Makefile:

    d8189 2 a8190 2

    12.1.5. Packages that cannot d8220 2 a8221 2

    12.1.6. Packages which d8283 2 a8284 2

    12.1.8. How to handle d8309 2 a8310 2

    12.1.9. How to handle d8350 2 a8351 2

    12.1.10. Portability of d8367 2 a8368 2

    12.1.10.1. ${INSTALL}, d8393 1 a8393 1 "id2571901" id="id2571901">12.2. Possible d8403 2 a8404 2

    12.2.1. Packages whose d8420 2 a8421 2 class="pkgname">graphics/ns-cult3d is an example of this usage.

    d8435 25 a8459 23 class="pkgname">audio/realplayer, cad/simian, devel/ipv6socket, emulators/vmware-module, fonts/acroread-jpnfont, sysutils/storage-manager, www/ap-aolserver, www/openacs. Try to be consistent with them.

    d8466 2 a8467 2

    12.2.2. How to handle d8496 2 a8497 2 "id2572048" id= "id2572048">12.3. Configuration d8524 5 a8528 5 class="pkgname">devel/libtool pkg can help here, as it just “knows” how to build both static and dynamic libraries from a set of source files, thus being platform independent.

    d8719 2 a8720 2

    12.3.2. Using libtool on GNU d8797 2 a8798 2

    12.3.3. GNU d8864 1 a8864 1 "id2572652" id="id2572652">12.4. Building d8874 2 a8875 2

    12.4.1. CPP defines

    d8914 1 a8914 1 "id2572685" id="id2572685">12.5. Package d8924 2 a8925 2

    12.5.1. Package d8994 3 a8996 3

    12.5.2. User Interaction

    d9044 2 a9045 2

    12.5.3. Handling d9070 1 a9070 1 class="pkgname">graphics/graphviz:

    d9118 2 a9119 2

    12.5.4. Creating an account d9172 2 a9173 2

    12.5.5. Installing score d9210 2 a9211 2

    12.5.6. Packages providing d9245 2 a9246 2

    12.5.7. Packages containing d9264 2 a9265 2

    12.5.8. Packages with d9291 2 a9292 2

    12.5.9. Packages installing d9396 2 a9397 2 class="pkgname">devel/gtexinfo package will be added automatically.

    d9428 2 a9429 2

    12.5.11. Packages installing d9501 2 a9502 2

    12.5.12. Packages installing d9546 2 a9547 2

    12.5.13. Packages installing d9582 2 a9583 2

    12.5.14. Packages installing d9647 2 a9648 2

    12.5.15. Packages installing d9709 2 a9710 2

    12.5.16. Packages installing d9766 2 a9767 2

    12.5.17. Packages using d9792 1 a9792 1 "id2574224" id="id2574224">12.6. Feedback d9839 4 a9842 3 class="pkgname">pkgtools/url2pkg, create a directory for a new package, change into it, then run url2pkg:

    d9905 1 a9905 1 class="pkgname">pkgtools/pkgdiff package.

    d9989 2 a9990 2 class="pkgname">pkgtools/pkglint, and fix the problems it reports:

    d10021 1 a10021 1
    14.1. d10024 1 a10024 1
    14.2. d10028 2 a10029 2
    14.3. Updating a Package to a Newer Version
    d10031 2 a10032 2
    14.4. Moving a Package in pkgsrc
    d10041 2 a10042 2 "id2574685" id= "id2574685">14.1. Submitting your d10103 2 a10104 2 "id2574732" id= "id2574732">14.2. Committing: Importing a d10159 2 a10160 2 "id2575000" id="id2575000">14.3. Updating a Package to a Newer Version

    d10210 2 a10211 2 "id2575019" id="id2575019">14.4. Moving a Package in pkgsrc

    d10309 1 a10309 1
    A.1. d10314 1 a10314 1
    A.1.1. d10317 1 a10317 1
    A.1.2. d10320 1 a10320 1
    A.1.3. d10323 1 a10323 1
    A.1.4. d10328 1 a10328 1
    A.2. Steps d10345 1 a10345 1 "id2575177" id="id2575177">A.1. files

    d10354 2 a10355 2

    A.1.1. Makefile

    d10382 2 a10383 2

    A.1.2. DESCR

    d10399 2 a10400 2

    A.1.3. PLIST

    d10423 2 a10424 2

    A.1.4. Checking a package with d10433 5 a10437 5 class="pkgname">pkgtools/pkglint which helps to check the contents of these files. After installation it is quite easy to use, just change to the directory of the package you wish to examine and execute pkglint:

    d10459 1 a10459 1 "id2575319" id="id2575319">A.2. Steps for d10859 121 @