Skip to content

xcode

mod_uploadchk : workspace et devspace – part 2

Bonsoir,

Le temps passe vite, The 2nd Law est sorti, et il faudrait peut-être que j’avance sur ce module avant de pouvoir me pencher sur une autre geekerie.

Pour commencer, j’ai voulu reprendre ce projet C en essayant de le développer dans Xcode. Je suis très satisfait de cet IDE pour Objective-C je me dis qu’il me sera peut-être aussi pratique que VIM pour du code C. Nous verrons bien… (nota ; créer un Workspace simplement au lieu de créer un project)

Je n’arrive pas à mettre la main sur “The Apache Modules Book”, Google sera donc mon ami ce soir. Commençons par remonter un apache de test, je viens de mettre à jour un vieux script d’install d’httpd : http://davixx.fr/pub/20100212_setup_httpd.sh.txt avec un téléchargement sur un miroir officiel plutôt que sur mon petit serveur : http://davixx.fr/pub/20121013_setup_httpd.sh.txt :

#!/bin/bash

httpd_ver="2.2.23"
httpd_dir="httpd-${httpd_ver}"
arch_url="http://apache.crihan.fr/dist/httpd/${httpd_dir}.tar.bz2"

# ca peux servir
function echec() {
	echo "fatal error [$1]";
	exit 127
}

# port a ecouter
proposed_httpd_port="3000"
echo -n "Sur quel port TCP faut-il binder httpd [${proposed_httpd_port}] ? "
read httpd_port
[ -z "${httpd_port}" ] && httpd_port="${proposed_httpd_port}"
if netstat -lpn 2>/dev/null | grep ":${httpd_port}"; then
	echo "le port <${httpd_port}> ne semble pas libre, vous etes sur (si oui : OK) ? "
	read confirm
	[ "${confirm}" != "OK" ] && echec "cancelled"
fi

# directory
cur_dir=`pwd`
proposed_httpd_fdir="${cur_dir}/${httpd_dir}-${httpd_port}"
echo -n "Dans quel repertoire mettre tout ca [${proposed_httpd_fdir}] ? "
read httpd_fdir
[ -z "${httpd_fdir}" ] && httpd_fdir="${proposed_httpd_fdir}"

# check
tfile="/tmp/${httpd_dir}"; [ -e "${tfile}" ] && echec "<${tfile}> exist"
tfile="${httpd_fdir}"; [ -e "${tfile}" ] && echec "<${tfile}> exist"

# go
cd /tmp || echec "cd /tmp"
[ -e "${httpd_dir}.tar.bz2" ] || wget "${arch_url}"
[ -e "${httpd_dir}.tar.bz2" ] || echec "download of <${arch_url}> failed"
tar xjvf ${httpd_dir}.tar.bz2 || echec "untar"
mv "${httpd_dir}" "${httpd_fdir}" || echec "mv"
cd "${httpd_fdir}" || echec "cd <${httpd_fdir}>"
./configure --prefix="${httpd_fdir}/apache2" --enable-so || echec "configure"
make || echec "make"
make install || echec "make install"
cd "${httpd_fdir}/apache2/conf" || echec "cd"
cat httpd.conf | sed 's/#ServerName new.host.name:80/ServerName localhost/' > _httpd_conf_1
mv -vf _httpd_conf_1 httpd.conf || echec "mv"
cat httpd.conf | sed "s/^Listen 80/Listen ${httpd_port}/" > _httpd_conf_1
mv -vf _httpd_conf_1 httpd.conf || echec "mv"
cd "${httpd_fdir}"
"${httpd_fdir}/apache2/bin/apachectl" configtest || echec "configtest"
echo
echo "c'est normalement fini"
echo "\"${httpd_fdir}/apache2/bin/apachectl\" start|stop"
echo

Je constate qu’il fonctionne toujours aussi bien pour http-2.2 ; au passage je constate que httpd-2.4 est disponibles, mais les distributions telle que Gentoo ne le mettent pas encore à disposition comme stable ; je vais donc me contenter de 2.2 pour le moment…

Je reviens dans un prochain post pour une alpha du module et du script de publication sur le httpd de tests ; en attendant jettez un oeil aux URL suivantes :