用rpmbuild打包php
admin
2023-06-28 09:44:14
0次

Name:    php        
Version:    5.3.28    
Release:    1%{?dist}
Summary:    php

Group:        System Environment/Daemons
License:    GPL
URL:        http://rolin.com/
Source0:    http://aa.com/php/%{name}-%{version}.tar.gz
Source1:    php.ini
Source2:    php-fpm.conf
BuildRoot:    %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires:    openssl-devel,libmcrypt-devel,freetype-devel,mhash-devel
Requires:    openssl,libmcrypt,freetype,libtool-ltdl,mhash,bash
%description
php-fpm
%prep
%setup -q
%build
#export $RPM_BUILD_ROOT
export INSTALL_ROOT=%{buildroot}
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/data/sock/tmp/mysql.sock --with-gd --with-iconv --with-zlib --enable-xml --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --with-pdo-mysql --disable-cli
make ZEND_EXTRA_LIBS='-liconv' %{?_smp_mflags}
#make %{?_smp_mflags}


%install
rm -rf %{buildroot}
#cd /root/rpmbuild/BUILD/php-5.3.28
#make install
make install INSTALL_ROOT=%{buildroot}
#DESTDIR=%{buildroot}
#cd ../../BUILDROOT
#cp -rf ../SOURCES/php.ini ./php-5.3.28-1.x86_64/
cp $RPM_BUILD_DIR/%{name}-%{version}/sapi/fpm/init.d.php-fpm $RPM_BUILD_ROOT/usr/local/php

#mv %{buildroot}/usr/local/php/etc/php-fpm.conf %{buildroot}/usr/local/php/etc/php-fpm.conf.origin
%{__install} -p -D -m 0644 %{SOURCE1} %{buildroot}/usr/local/php/etc
#mv %{buildroot}/usr/local/php/etc/php.ini %{buildroot}/usr/local/php/etc/php.ini.origin
%{__install} -p -D -m 0644 %{SOURCE2} %{buildroot}/usr/local/php/etc
cp %{_sourcedir}/php.ini $RPM_BUILD_ROOT/usr/local/php/etc
cp %{_sourcedir}/php-fpm.conf $RPM_BUILD_ROOT/usr/local/php/etc
#cp %{_sourcedir}/php.ini $RPM_BUILD_ROOT%{prefix}/etc
#cp %{_sourcedir}/php-fpm.conf $RPM_BUILD_ROOT%{prefix}/etc

%clean
rm -rf $RPM_BUILD_ROOT/*

%pre
mkdir /usr/local/php
#cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
ln -s /usr/lib64/libpng.* /usr/lib/
ln -s /usr/lib64/libjpeg.* /usr/lib
echo "/lib" >> /etc/ld.so.conf
echo "/usr/lib" >> /etc/ld.so.conf
echo "/usr/lib64" >> /etc/ld.so.conf
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
%post
a=`grep ZONE= /etc/sysconfig/clock |awk -F"=" '{print $NF}'|cut -d '"' -f2`
sed  -i "s#\;date.timezone\ =#date.timezone\ =\ ${a}#g" /usr/local/php/etc/php.ini
#cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
cp /usr/local/php/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod a+x /etc/rc.d/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
%preun
#if [ -f %{_sysconfdir}/php.ini ];then
#mv %{_sysconfdir}/php.ini %{_sysconfdir}/php.ini.rpmold
#fi

#if [ -f %{_initddir}/php-fpm ];then
#mv %{_initddir}/php-fpm %{_initddir}/php-fpm.rpmold
#fi

%postun
rm -rf /usr/local/php
%files
%defattr(-,root,root,-)
/usr/local/php/

%doc
#%config(noreplace)      /usr/local/php/etc/php.ini
#%config(noreplace)      /usr/local/php/etc/php-fpm.conf
#%config(noreplace)      /usr/local/php/etc/php-fpm.conf.default

%changelog

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...