BASH 114
Recipe Openresty qi package manager Guest on 27th November 2020 05:39:35 PM
  1. #       Contrucción de receta para Openresty
  2. #      
  3. #       Copyright (c) 2020 Ricardo García Jiménez, <ricardog08@disroot.org>.
  4. #
  5. #       Autorizado en virtud de la Licencia de Apache, Versión 2.0 (la "Licencia");
  6. #       se prohíbe utilizar este archivo excepto en cumplimiento de la Licencia.
  7. #       Podrá obtener una copia de la Licencia en:
  8. #
  9. #               http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. #       A menos que lo exijan las leyes pertinentes o se haya establecido por escrito,
  12. #       el software distribuido en virtud de la Licencia se distribuye “TAL CUAL”,
  13. #       SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sean expresas o implícitas.
  14. #       Véase la Licencia para consultar el texto específico relativo a los permisos
  15. #       y limitaciones establecidos en la Licencia.
  16.  
  17.  
  18. # Cuando un comando falla finaliza el script
  19. set -e
  20.  
  21. program=openresty   # Nombre del programa
  22. version=1.19.3.1    # Versión del programa
  23. arch=${arch}        # Arquitectura que constituye el nombre del paquete.
  24. release=1           # Número de lanzamiento del paquete.
  25.  
  26. # Nombre del directorio que contiene el código fuente del programa al descomprimir el tarball.
  27. # Algunos programas establecen difentes nombres para tarball y para el directorio descomprimido.
  28. #srcdir=
  29.  
  30. pkgcategory=network    # Categoria del paquete.
  31.  
  32. # Nombre del tarball del código fuente a través de la red.
  33. tarname=${program}-${version}.tar.gz
  34.  
  35. # Origen del código fuente del programa a través de la red.
  36. fetch=https://openresty.org/download/${tarname}
  37.  
  38. # Sito web oficial del programa.
  39. homepage=https://openresty.org/en/
  40.  
  41. # Descripción breve y descripción extendida, separa por un espacio, del programa.
  42. description='
  43. A dynamic web platform based on NGINX and LuaJIT.
  44.  
  45. Openresty is a web platform that integrates an improved version
  46. of the NGINX core, and not a fork of NGINX, being a server
  47. of web applications that executes scripts written in the
  48. Lua programming language with its own LuaJIT 2 engine.
  49. '
  50.  
  51. # Abreviación de la licencia del programa.
  52. license='BSD'
  53.  
  54. # Documentación adicional, autores, cambios, nuevas funcionalidades,
  55. # agradecimientos, versión del programa, lista de tareas, licencia, etc,
  56. # dentro del talball del código fuente del programa.
  57. docs='COPYRIGHT README.markdown'
  58. docsdir=${docdir}/${program}-${version}
  59.  
  60. # Función especial que compila el código fuente del programa
  61. # y construye el paquete.
  62. build(){
  63.  
  64.         # Descomprime el tarball del código fuente.
  65.         unpack "${tardir}/${tarname}"
  66.        
  67.         # Cambia al directorio del código fuente del programa
  68.         cd ${srcdir}
  69.  
  70.         # Establece permisos adecuados a todo los archivos
  71.         # del código fuente del programa.
  72.         chmod -R u+w,go-w,a+rX-s .
  73.        
  74.         # Sección de compilación del programa.
  75.         ./configure \
  76.                         --build=$(cc -dumpmachine) \
  77.                         --prefix="/usr/${program}" \
  78.                         --user=nobody \
  79.                         --group=nobody \
  80.                         --with-http_iconv_module \
  81.                         --with-threads \
  82.                         --with-file-aio \
  83.                         --with-http_ssl_module \
  84.                         --with-http_v2_module \
  85.                         --with-http_realip_module \
  86.                         --with-http_addition_module \
  87.                         --with-http_geoip_module \
  88.                         --with-http_sub_module \
  89.                         --with-http_dav_module \
  90.                         --with-http_flv_module \
  91.                         --with-http_mp4_module \
  92.                         --with-http_gunzip_module \
  93.                         --with-http_gzip_static_module \
  94.                         --with-http_auth_request_module \
  95.                         --with-http_secure_link_module \
  96.                         --with-http_degradation_module \
  97.                         --with-http_slice_module \
  98.                         --with-http_stub_status_module \
  99.                         --with-mail \
  100.                         --with-mail_ssl_module \
  101.                         --with-stream \
  102.                         --with-stream_ssl_module \
  103.                         --with-stream_realip_module \
  104.                         --with-stream_geoip_module \
  105.                         --with-stream_ssl_preread_module \
  106.                         --with-compat \
  107.                         --with-pcre-jit
  108.                        
  109.         make -j${jobs} V=1
  110.         make -j${jobs} DESTDIR=${destdir} install
  111.  
  112.         # Comprime los man pages.
  113.         if test -d "${destdir}/${mandir}"
  114.         then
  115.                 (
  116.                         cd "${destdir}/${mandir}"
  117.                         find . -type f -exec lzip -9 {} +
  118.                         find . -type l | while read -r file
  119.                         do
  120.                                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
  121.                                 rm -- "$file"
  122.                         done
  123.                 )
  124.         fi
  125.  
  126.         # Copia la documentación adicional.
  127.         mkdir -p "${destdir}${docsdir}"
  128.         cp -p ${docs} "${destdir}${docsdir}"
  129.  
  130. }

Paste Reisub es para el código fuente y el texto de depuración general.

Iniciar sesión o Registrarse para editar, eliminar y mantener un seguimiento de sus pegados y mucho más.

Pasta cruda

Iniciar sesión o Registrarse para editar o bifurcar este pegado. Es gratis.