mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-08 23:18:10 -05:00
* Update makedepend homepage * Update mapserver homepage * Update mediainfo homepage * Update mediainfo_gui homepage * Update misctools homepage * Update mkfontscale homepage * Update mm_common homepage * Update mono homepage * Update mpfr homepage * Update msttcorefonts homepage * Update mtdev homepage * Update muparser homepage * Update musl_c_ares homepage * Update musl_cyrus_sasl homepage * Update musl_krb5 homepage * Update musl_lz4 homepage * Update musl_xz homepage * Update musl_zstd homepage * Update mypaint homepage * Update mypaint_brushes homepage * Update mypaint_brushes_1 homepage * Update ncat homepage * Update ncftp homepage * Update netbeans homepage * Update netpbm homepage * Update nmon homepage * Update ocaml homepage * Update onevpl homepage * Update openexr homepage * Update opensp homepage * Update optipng homepage * Update p11kit homepage * Update p7zip_gui homepage * Update pacparser homepage * Update parted homepage * Update patch homepage * Update patchelf homepage * Update patchutils homepage * Update pdfcrack homepage * Update percona_boost homepage * Update percona_server homepage * Update percona_toolkit homepage * Update php5 homepage * Update php71 homepage * Update php72 homepage * Update php73 homepage * Update php74 homepage * Update php80 homepage * Update php81 homepage * Update php82 homepage * Update php83 homepage * Update pixman homepage * Update plplot homepage * Update pocl homepage * Update potrace homepage * Update powershell homepage * Update printproto homepage * Update protobuf homepage * Update pthread_stubs homepage * Update pygobject homepage * Update pygobject2 homepage * Update pygtk homepage * Update qemu homepage * Update qpdf homepage * Update quakespasm homepage * Update radare2 homepage * Update rdfind homepage * Update recordmydesktop homepage * Update rendercheck homepage * Update rgb homepage * Update rkhunter homepage * Update runc homepage * Update s3cmd homepage * Update sbc homepage * Update sbt homepage * Update scheme48 homepage * Update sejda_console homepage * Update selenium_server_standalone homepage * Update sfk homepage * Update snooze homepage * Update sqlite homepage * Update sqlmap homepage * Update sshcode homepage * Update startup_notification homepage * Update suitesparse homepage * Update swatchdog homepage * Update swig homepage * Update swig1 homepage * Update sysfsutils homepage * Update tbb homepage * Update tcpdump homepage * Update tcpwrappers homepage * Update traceroute homepage * Update trousers homepage * Update ttf2pt1 homepage * Update twm homepage * Update txt2regex homepage * Update unicode_cldr homepage * Update unixodbc homepage * Update unrar homepage * Update unzip homepage * Update upm homepage * Update usbutils homepage * Update vim homepage * Update vim_runtime homepage * Update vulkan_tools homepage * Update w3m homepage * Update wavpack homepage * Update weechat homepage * Update weston homepage * Update whiptail homepage * Update wmctrl homepage * Update wol homepage * Update wput homepage * Update xbitmaps homepage * Update xcb_util homepage * Update xcb_util_cursor homepage * Update xcb_util_image homepage * Update xcb_util_keysyms homepage * Update xcb_util_wm homepage * Update xdg_base homepage * Update xdotool homepage * Update xdpyinfo homepage * Update xe homepage * Update xercesc homepage * Update xinit homepage * Update xkbcomp homepage * Update xkeyboard_config homepage * Update xmessage homepage * Update xmlstarlet homepage * Update xorg_cf_files homepage * Update xorg_evdev_driver homepage * Update xorg_fbdev_driver homepage * Update xorg_libinput_driver homepage * Update xorg_proto homepage * Update xorg_server homepage * Update xorg_synaptics_driver homepage * Update xorg_vmmouse_driver homepage * Update xorg_wacom_driver homepage * Update xorg_xeyes homepage * Update xorg_xlsfonts homepage * Update xorg_xset homepage * Update xprop homepage * Update xrdb homepage * Update xwayland homepage * Update xxd_standalone homepage * Update xxhash homepage * Update xz_java homepage * Update zip homepage * Update zsh homepage * Update zstd homepage * Update zziplib homepage
142 lines
5.6 KiB
Ruby
142 lines
5.6 KiB
Ruby
require 'package'
|
|
|
|
class Php73 < Package
|
|
description 'PHP is a popular general-purpose scripting language that is especially suited to web development.'
|
|
homepage 'https://www.php.net/'
|
|
version '7.3.33'
|
|
license 'PHP-3.01'
|
|
compatibility 'x86_64 aarch64 armv7l'
|
|
source_url "https://www.php.net/distributions/php-#{version}.tar.xz"
|
|
source_sha256 '166eaccde933381da9516a2b70ad0f447d7cec4b603d07b9a916032b215b90cc'
|
|
binary_compression 'tar.xz'
|
|
|
|
binary_sha256({
|
|
aarch64: '3b29987c24ed7d47d97152df1ba7915b37fde7c0a4959a003c90691853a2bfae',
|
|
armv7l: '3b29987c24ed7d47d97152df1ba7915b37fde7c0a4959a003c90691853a2bfae',
|
|
x86_64: '332b1b11d789481fc735d59722364772ec68cfc4de6c775a558b45454cb074bb'
|
|
})
|
|
|
|
depends_on 'curl'
|
|
depends_on 'libgcrypt'
|
|
depends_on 'libjpeg_turbo'
|
|
depends_on 'libpng'
|
|
depends_on 'libxpm'
|
|
depends_on 'libxslt'
|
|
depends_on 'libzip'
|
|
depends_on 'exif'
|
|
depends_on 'freetype'
|
|
depends_on 're2c'
|
|
depends_on 'tidy'
|
|
depends_on 'unixodbc'
|
|
depends_on 'py3_pygments'
|
|
|
|
no_fhs
|
|
|
|
def self.preflight
|
|
phpver = `php -v 2> /dev/null | head -1 | cut -d' ' -f2`.chomp
|
|
abort "PHP version #{phpver} already installed.".lightgreen if ARGV[0] != 'reinstall' && @_ver != phpver && !phpver.empty?
|
|
end
|
|
|
|
def self.patch
|
|
# Configuration
|
|
system "sed -i 's,;pid = run/php-fpm.pid,pid = #{CREW_PREFIX}/tmp/run/php-fpm.pid,' sapi/fpm/php-fpm.conf.in"
|
|
system "sed -i 's,;error_log = log/php-fpm.log,error_log = #{CREW_PREFIX}/log/php-fpm.log,' sapi/fpm/php-fpm.conf.in"
|
|
system "sed -i 's,include=@php_fpm_sysconfdir@/php-fpm.d,include=#{CREW_PREFIX}/etc/php-fpm.d,' sapi/fpm/php-fpm.conf.in"
|
|
system "sed -i 's,^user,;user,' sapi/fpm/www.conf.in"
|
|
system "sed -i 's,^group,;group,' sapi/fpm/www.conf.in"
|
|
system "sed -i 's,@sbindir@,#{CREW_PREFIX}/bin,' sapi/fpm/init.d.php-fpm.in"
|
|
system "sed -i 's,@sysconfdir@,#{CREW_PREFIX}/etc,' sapi/fpm/init.d.php-fpm.in"
|
|
system "sed -i 's,@localstatedir@,#{CREW_PREFIX}/tmp,' sapi/fpm/init.d.php-fpm.in"
|
|
# Set some sane defaults
|
|
system "sed -i 's,post_max_size = 8M,post_max_size = 128M,' php.ini-development"
|
|
system "sed -i 's,upload_max_filesize = 2M,upload_max_filesize = 128M,' php.ini-development"
|
|
system "sed -i 's,;opcache.enable=0,opcache.enable=1,' php.ini-development"
|
|
# Fix cc: error: ext/standard/.libs/type.o: No such file or directory
|
|
# system "sed -i '98303d' configure"
|
|
# system "sed -i '98295,98296d' configure"
|
|
# Fix /usr/bin/file: No such file or directory
|
|
system 'filefix'
|
|
end
|
|
|
|
def self.build
|
|
system "env CFLAGS='-pipe -ltinfo' \
|
|
./configure \
|
|
--prefix=#{CREW_PREFIX} \
|
|
--docdir=#{CREW_PREFIX}/doc \
|
|
--infodir=#{CREW_PREFIX}/info \
|
|
--libdir=#{CREW_LIB_PREFIX} \
|
|
--localstatedir=#{CREW_PREFIX}/tmp \
|
|
--mandir=#{CREW_MAN_PREFIX} \
|
|
--sbindir=#{CREW_PREFIX}/bin \
|
|
--with-config-file-path=#{CREW_PREFIX}/etc \
|
|
--with-freetype-dir=#{CREW_PREFIX}/include/freetype2/freetype \
|
|
--with-libdir=#{ARCH_LIB} \
|
|
--with-jpeg-dir=#{CREW_PREFIX}/include \
|
|
--with-xpm-dir=#{CREW_PREFIX}/include/X11 \
|
|
--with-kerberos=#{CREW_LIB_PREFIX} \
|
|
--enable-exif \
|
|
--enable-fpm \
|
|
--enable-ftp \
|
|
--enable-mbstring \
|
|
--enable-opcache \
|
|
--enable-pcntl \
|
|
--enable-shared \
|
|
--enable-shmop \
|
|
--enable-sockets \
|
|
--enable-zip \
|
|
--with-bz2 \
|
|
--with-curl \
|
|
--with-gd \
|
|
--with-gettext \
|
|
--with-gmp \
|
|
--with-libzip \
|
|
--with-mysqli \
|
|
--with-openssl \
|
|
--with-pcre-regex \
|
|
--with-pdo-mysql \
|
|
--with-pear \
|
|
--with-readline \
|
|
--with-tidy \
|
|
--with-unixODBC \
|
|
--with-xsl \
|
|
--with-zlib"
|
|
system 'make'
|
|
end
|
|
|
|
def self.install
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/log"
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/tmp/run"
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/init.d"
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/php-fpm.d"
|
|
system 'make', "INSTALL_ROOT=#{CREW_DEST_DIR}", 'install'
|
|
FileUtils.install 'php.ini-development', "#{CREW_DEST_PREFIX}/etc/php.ini", mode: 0o644
|
|
FileUtils.install 'sapi/fpm/init.d.php-fpm.in', "#{CREW_DEST_PREFIX}/etc/init.d/php-fpm", mode: 0o755
|
|
FileUtils.install 'sapi/fpm/php-fpm.conf.in', "#{CREW_DEST_PREFIX}/etc/php-fpm.conf", mode: 0o644
|
|
FileUtils.install 'sapi/fpm/www.conf.in', "#{CREW_DEST_PREFIX}/etc/php-fpm.d/www.conf", mode: 0o644
|
|
FileUtils.ln_s "#{CREW_PREFIX}/etc/init.d/php-fpm", "#{CREW_DEST_PREFIX}/bin/php7-fpm"
|
|
|
|
# clean up some files created under #{CREW_DEST_DIR}. check http://pear.php.net/bugs/bug.php?id=20383 for more details
|
|
FileUtils.mv "#{CREW_DEST_DIR}/.depdb", "#{CREW_DEST_LIB_PREFIX}/php"
|
|
FileUtils.mv "#{CREW_DEST_DIR}/.depdblock", "#{CREW_DEST_LIB_PREFIX}/php"
|
|
FileUtils.rm_rf ["#{CREW_DEST_DIR}/.channels", "#{CREW_DEST_DIR}/.filemap", "#{CREW_DEST_DIR}/.lock", "#{CREW_DEST_DIR}/.registry"]
|
|
end
|
|
|
|
def self.postinstall
|
|
puts
|
|
puts 'To start the php-fpm service, execute:'.lightblue
|
|
puts 'php7-fpm start'.lightblue
|
|
puts
|
|
puts 'To stop the php-fpm service, execute:'.lightblue
|
|
puts 'php7-fpm stop'.lightblue
|
|
puts
|
|
puts 'To restart the php-fpm service, execute:'.lightblue
|
|
puts 'php7-fpm restart'.lightblue
|
|
puts
|
|
puts 'To start php-fpm on login, execute the following:'.lightblue
|
|
puts "echo 'if [ -f #{CREW_PREFIX}/bin/php7-fpm ]; then' >> ~/.bashrc".lightblue
|
|
puts "echo ' #{CREW_PREFIX}/bin/php7-fpm start' >> ~/.bashrc".lightblue
|
|
puts "echo 'fi' >> ~/.bashrc".lightblue
|
|
puts 'source ~/.bashrc'.lightblue
|
|
end
|
|
end
|