From owner-freebsd-questions@FreeBSD.ORG Wed Dec 6 08:27:52 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5B43416A407 for ; Wed, 6 Dec 2006 08:27:52 +0000 (UTC) (envelope-from maanjee@gmail.com) Received: from an-out-0708.google.com (an-out-0708.google.com [209.85.132.247]) by mx1.FreeBSD.org (Postfix) with ESMTP id B056E43CA5 for ; Wed, 6 Dec 2006 08:27:07 +0000 (GMT) (envelope-from maanjee@gmail.com) Received: by an-out-0708.google.com with SMTP id c24so548ana for ; Wed, 06 Dec 2006 00:27:50 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=OR7KEu1dMlsOhxbZ2U1n5qkIqELvPr47/OFAqhnpMLy/7v5oqKMvzg9JGNJCTN2R0dCVCCqiYODkRQ+wcqqd5o2cqGMlYm+FFCXWYXhr+I1dB/mxE6UVKPvo/G49Ccb0PsU/pXUY96Mv/M7rW/Z1IHeSu5lwC5LdevUJCWbjVI8= Received: by 10.100.198.11 with SMTP id v11mr80974anf.1165393670096; Wed, 06 Dec 2006 00:27:50 -0800 (PST) Received: by 10.100.33.13 with HTTP; Wed, 6 Dec 2006 00:27:50 -0800 (PST) Message-ID: <2cd0a0da0612060027j25bdffd3ve2a1267eeeb12a3c@mail.gmail.com> Date: Wed, 6 Dec 2006 09:27:50 +0100 From: VeeJay To: maanjee@gmail.com, FreeBSD-Questions In-Reply-To: <2cd0a0da0612051538n6dfc999es3c465c311365e487@mail.gmail.com> MIME-Version: 1.0 References: <2cd0a0da0612051538n6dfc999es3c465c311365e487@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: Re: Makefile question... please help... X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Dec 2006 08:27:52 -0000 Thanks Where can I make above mentioned required changes... can you please give me a little hint... since I am novice to Unix.... Thanks... VJ On 12/6/06, VeeJay wrote: > > Hi there, > > Is it possible to make configuration changes in Makefile to install a port > as per one's requirments? > > I want to accomplish two tasks.... > > 1. I want to configure mysql port before installation with following > parameters: Could someone tell me that where in the Makefile, I need to put > these paramenters in order to get my required results? Makefile is at the > end of my message. > Required Configuration paramenters: > > --prefix=/usr/local/mysql > --with-mysqld-user=mysql > --with-unix-socket-path=/tmp/mysql.sock > --with-mysqld-ldflags=-all-static > > > 2. I want to install mysql at my given path, so I could be able to assign > the path to mysql user and chroot it.... PLEASE HELP!!! > > Becuase, with default Makefile configuration, mysql installs all scripts > under /usr/local/sbin folder which other deamons also access for example > apache. so, if I alow the access only for mysql ... then other deamons will > not have any access... > > chown -R root /usr/local/bin/mysql > chown -R mysql /usr/local/mysql/var > chgrp -R mysql /usr/local/mysql > > > > > # New ports collection makefile for: MySQL-server > # Date created: Fri Apr 11 10:06:26 CET 2003 > # Whom: Alex Dupre > > # > # $FreeBSD: ports/databases/mysql50-server/Makefile,v 1.188 2005/03/21 > 14:08:49 pav Exp $ > # > > PORTNAME?= mysql > PORTVERSION= 5.0.2 > PORTREVISION?= 0 > CATEGORIES= databases > MASTER_SITES= ${MASTER_SITE_MYSQL} > MASTER_SITE_SUBDIR= MySQL-5.0 > PKGNAMESUFFIX?= -server > DISTNAME= ${PORTNAME}-${PORTVERSION}-alpha > > MAINTAINER= ale@FreeBSD.org > COMMENT?= Multithreaded SQL database (server) > > WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}-alpha > SLAVEDIRS= databases/mysql50-client > PKGINSTALL?= ${WRKDIR}/pkg-install > DB_DIR?= /var/db/mysql > USE_LIBTOOL_VER=15 > USE_REINPLACE= yes > USE_RC_SUBR= yes > > CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL} > CONFIGURE_ARGS= --localstatedir=${DB_DIR} \ > --without-debug \ > --without-readline \ > --without-libedit \ > --without-bench \ > --without-extra-tools \ > --with-libwrap \ > --with-mysqlfs \ > --with-vio \ > --with-low-memory \ > --with-comment='FreeBSD port: ${PKGNAME}' \ > --enable-thread-safe-client > > .ifdef USE_MYSQL > .error You have `USE_MYSQL' variable defined either in environment or in > make(1) arguments. Please undefine and try again. > .endif > > .if defined(WITH_CHARSET) && ${WITH_CHARSET} != "" > CONFIGURE_ARGS+=--with-charset=${WITH_CHARSET} > .endif > .if defined(WITH_XCHARSET) && ${WITH_XCHARSET} != "" > CONFIGURE_ARGS+=--with-extra-charsets=${WITH_XCHARSET} > .endif > .if defined(WITH_OPENSSL) > USE_OPENSSL= yes > CONFIGURE_ARGS+=--with-openssl=${OPENSSLBASE} > .endif > .if defined(BUILD_STATIC) > CONFIGURE_ARGS+=--with-mysqld-ldflags=-all-static > .endif > .if defined(WITHOUT_INNODB) > CONFIGURE_ARGS+=--without-innodb > .endif > .if defined(WITH_NDB) > CONFIGURE_ARGS+=--with-ndbcluster > .endif > .if defined(WITH_COLLATION) && ${WITH_COLLATION} != "" > CONFIGURE_ARGS+=--with-collation=${WITH_COLLATION} > .endif > > .include > > .if ${ARCH} == "i386" > CONFIGURE_ARGS+=--enable-assembler --with-berkeley-db > .endif > .if defined(WITH_LINUXTHREADS) > > CONFIGURE_ARGS+=--with-named-thread-libs='-DHAVE_GLIBC2_STYLE_GETHOSTBYNAME_R > CONFIGURE_ARGS+=-D_THREAD_SAFE -I${LOCALBASE}/include/pthread/linuxthreads > CFLAGS+= -D__USE_UNIX98 -D_REENTRANT -D_THREAD_SAFE > CFLAGS+= -I${LOCALBASE}/include/pthread/linuxthreads > .if ${OSVERSION} > 500000 > LIB_DEPENDS+= lthread.[35]:${PORTSDIR}/devel/linuxthreads > CONFIGURE_ARGS+=-L${LOCALBASE}/lib -llthread -llgcc_r -llstdc++ -llsupc++' > > .else > LIB_DEPENDS+= lthread.[24]:${PORTSDIR}/devel/linuxthreads > CONFIGURE_ARGS+=-L${LOCALBASE}/lib -llthread -llgcc_r' > .endif > .else > CONFIGURE_ARGS+=--with-named-thread-libs=${PTHREAD_LIBS} > CFLAGS+= ${PTHREAD_CFLAGS} > .endif > > .if ${OSVERSION} < 500000 > CXX= ${CC} > .endif > .if defined(BUILD_OPTIMIZED) > CFLAGS+= -O3 -fno-omit-frame-pointer > .if ${OSVERSION} > 500000 || (defined(USE_GCC) && (${USE_GCC} == 3.0 || > ${USE_GCC} == 3.1 || ${USE_GCC} == 3.2 || ${USE_GCC} == 3.3)) > CFLAGS+= -fno-gcse > .endif > .endif > CXXFLAGS+= ${CFLAGS} -felide-constructors -fno-rtti > .if ${OSVERSION} >= 400002 > CXXFLAGS+= -fno-exceptions > .endif > > # MySQL-Server part > .if !defined(CLIENT_ONLY) && !defined(SCRIPTS_ONLY) > USE_MYSQL= yes > WANT_MYSQL_VER= 50 > > LATEST_LINK= mysql50-server > > CONFLICTS= mysql-server-3.* mysql-server-4.* > > PLIST_SUB= DB_DIR=${DB_DIR} \ > VER=${PORTVERSION}-alpha > .if defined(WITH_NDB) > PLIST_SUB+= NDB="" > .else > PLIST_SUB+= NDB="@comment " > .endif > > MAN1= isamchk.1 isamlog.1 mysqld.1 \ > mysqld_safe.1 perror.1 replace.1 > > .if !defined(NOPORTDOCS) > PORTDOCS= manual.html manual.txt manual_toc.html > .endif > > INFO= mysql > > pre-fetch: > @${ECHO} "" > @${ECHO} "You may use the following build options:" > @${ECHO} "" > @${ECHO} " WITH_CHARSET=charset Define the primary > built-in charset (latin1)." > @${ECHO} " WITH_XCHARSET=list Define other built-in > charsets (may be 'all')." > @${ECHO} " WITH_COLLATION=collate Define default collation > (latin1_swedish_ci)." > @${ECHO} " WITH_OPENSSL=yes Enable secure > connections." > @${ECHO} " DB_DIR=directory Set alternate directory > for database files" > @${ECHO} " (default is > /var/db/mysql)." > @${ECHO} " WITH_LINUXTHREADS=yes Use the linuxthreads > pthread library." > @${ECHO} " WITH_PROC_SCOPE_PTH=yes Use process scope threads" > @${ECHO} " (try it if you use > libpthread)." > @${ECHO} " OVERWRITE_DB=yes Re-initialize default > databases." > @${ECHO} " BUILD_OPTIMIZED=yes Enable compiler > optimizations" > @${ECHO} " (use it if you need > speed)." > @${ECHO} " BUILD_STATIC=yes Build a static version of > mysqld." > @${ECHO} " (use it if you need even > more speed)." > @${ECHO} " WITHOUT_INNODB=yes Disable support for InnoDB > table handler." > @${ECHO} " WITH_NDB=yes Enable support for NDB > Cluster." > @${ECHO} "" > > post-patch: > @${REINPLACE_CMD} -e "s|SUBDIRS =|SUBDIRS = include @docs_dirs@ > @sql_server_dirs@ scripts man support-files|g" ${WRKSRC}/Makefile.in > @${REINPLACE_CMD} -e "s|all: config.h|all: config.h all-local|g" > ${WRKSRC}/Makefile.in > @${REINPLACE_CMD} -e "s|bin_SCRIPTS =|bin_SCRIPTS = > @server_scripts@ mysql_create_system_tables|g" ${WRKSRC}/scripts/Makefile.in > > @${REINPLACE_CMD} -e "s|dist_pkgdata_DATA =|dist_pkgdata_DATA = > fill_help_tables.sql|g" ${WRKSRC}/scripts/Makefile.in > @${REINPLACE_CMD} -e "s|man_MANS =|man_MANS = ${MAN1}|g" > ${WRKSRC}/man/Makefile.in > @${REINPLACE_CMD} -e "s|install-data-am: > install-pkgincludeHEADERS|install-data-am:|g" ${WRKSRC}/include/Makefile.in > .if defined(WITH_PROC_SCOPE_PTH) > @${REINPLACE_CMD} -e > "s|PTHREAD_SCOPE_SYSTEM|PTHREAD_SCOPE_PROCESS|g" ${WRKSRC}/sql/mysqld.cc > .endif > > post-build: > @${SED} "s|%%DB_DIR%%|${DB_DIR}|g" ${PKGDIR}/pkg-install > > ${WRKDIR}/pkg-install > > post-install: > .if !defined(PACKAGE_BUILDING) > .if exists(${DB_DIR}) && defined(OVERWRITE_DB) && ${OVERWRITE_DB:L} != > "no" > @${RM} -r ${DB_DIR}/mysql ${DB_DIR}/test 2>/dev/null || true > .endif > .if !exists(${DB_DIR}) || (defined(OVERWRITE_DB) && ${OVERWRITE_DB:L} != > "no") > ${PREFIX}/bin/mysql_install_db --ldata=${DB_DIR} > .endif > @${SETENV} DB_DIR=${DB_DIR} ${SH} ${PKGINSTALL} ${PKGNAME} > POST-INSTALL > .endif > @${SED} > "s|%%RC_SUBR%%|${RC_SUBR}|g;s|%%PREFIX%%|${PREFIX}|g;s|%%DB_DIR%%|${DB_DIR}|g" > < \ > ${FILESDIR}/mysql-server.sh > ${PREFIX}/etc/rc.d/mysql- > server.sh > @${CHMOD} 750 ${PREFIX}/etc/rc.d/mysql-server.sh > .if !defined(NOPORTDOCS) > @${MKDIR} ${DOCSDIR} > .for doc in ${PORTDOCS} > @${INSTALL_DATA} ${WRKSRC}/Docs/${doc} ${DOCSDIR} > .endfor > .endif > > .else > # MySQL-Client part > .if defined(CLIENT_ONLY) > LATEST_LINK= mysql50-client > > CONFLICTS= mysql-client-3.* mysql-client-4.* > > MAN1= mysql.1 mysqladmin.1 mysqldump.1 mysqlshow.1 > > INSTALLS_SHLIB= yes > LDCONFIG_DIRS= %%PREFIX%%/lib/mysql > > CONFIGURE_ARGS+=--without-server > > post-patch: > @${REINPLACE_CMD} -e "s|SUBDIRS =|SUBDIRS = include > @sql_client_dirs@ scripts man|g" ${WRKSRC}/Makefile.in > @${REINPLACE_CMD} -e "s|install-exec-am: > install-pkglibLIBRARIES|install-exec-am:|g" ${WRKSRC}/strings/Makefile.in > @${REINPLACE_CMD} -e "s|all: config.h|all: config.h all-local|g" > ${WRKSRC}/Makefile.in > @${REINPLACE_CMD} -e "s|bin_SCRIPTS =|bin_SCRIPTS = mysql_config > mysql_fix_privilege_tables mysqlbug|g" ${WRKSRC}/scripts/Makefile.in > @${REINPLACE_CMD} -e "s|dist_pkgdata_DATA =|dist_pkgdata_DATA = > mysql_fix_privilege_tables.sql|g" ${WRKSRC}/scripts/Makefile.in > @${REINPLACE_CMD} -e "s|man_MANS =|man_MANS = ${MAN1}|g" > ${WRKSRC}/man/Makefile.in > .if defined(WITH_PROC_SCOPE_PTH) > @${REINPLACE_CMD} -e > "s|PTHREAD_SCOPE_SYSTEM|PTHREAD_SCOPE_PROCESS|g" > ${WRKSRC}/tools/mysqlmanager.c > .endif > > post-install: > @${SED} "s|%%PREFIX%%|${PREFIX}|g" < ${FILESDIR}/mysql-client.sh > > ${PREFIX}/etc/rc.d/000.mysql-client.sh > @${CHMOD} 750 ${PREFIX}/etc/rc.d/000.mysql-client.sh > > .else > # MySQL-Scripts part > USE_MYSQL= yes > WANT_MYSQL_VER= 50 > USE_PERL5= yes > > RUN_DEPENDS= > ${SITE_PERL}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50 > .if ${PERL_LEVEL} <= 500800 > RUN_DEPENDS+= ${SITE_PERL}/File/Temp.pm:${PORTSDIR}/devel/p5-File-Temp > .endif > > > LATEST_LINK= mysql50-scripts > > CONFLICTS= mysql-scripts-3.* mysql-scripts-4.* > > MAN1= mysql_zap.1 mysqlaccess.1 mysqld_multi.1 > mysql_fix_privilege_tables.1 > > SCRIPTS= msql2mysql mysql_fix_extensions mysql_setpermission \ > mysql_secure_installation mysql_zap mysqlaccess \ > mysql_convert_table_format mysql_find_rows mysqlhotcopy \ > mysqldumpslow mysql_explain_log mysql_tableinfo > mysqld_multi > > post-patch: > @${REINPLACE_CMD} -e "s|SUBDIRS =|SUBDIRS = scripts man|g" > ${WRKSRC}/Makefile.in > @${REINPLACE_CMD} -e "s|bin_SCRIPTS =|bin_SCRIPTS = ${SCRIPTS}|g" > ${WRKSRC}/scripts/Makefile.in > @${REINPLACE_CMD} -e "s|install-exec-am > install-data-am|install-exec-am|g" ${WRKSRC}/scripts/Makefile.in > @${REINPLACE_CMD} -e "s|man_MANS =|man_MANS = ${MAN1}|g" > ${WRKSRC}/man/Makefile.in > .endif > .endif > # Common part > post-extract: > @${CP} /usr/include/tcpd.h ${WRKSRC}/sql/mytcpd.h > > .if defined(WITH_OPENSSL) && defined(BUILD_STATIC) > pre-configure: > @${ECHO} "You can't use the BUILD_STATIC option when using > OpenSSL." > @${FALSE} > .endif > > .include > > -- > Thanks! > > BR / vj > -- Thanks! BR / vj