From 8e98be925ce38e16b56175a6c6f10a34517af29f Mon Sep 17 00:00:00 2001
From: piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>
Date: Tue, 5 Jul 2005 15:21:38 +0000
Subject: add tools for PMake v2

git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2895 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
---
 docs/FAQ        | 16 ++++++++++++----
 util/pmakev2.sh | 42 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 4 deletions(-)
 create mode 100755 util/pmakev2.sh

diff --git a/docs/FAQ b/docs/FAQ
index 12b6d287..9b3bbfcd 100644
--- a/docs/FAQ
+++ b/docs/FAQ
@@ -23,10 +23,18 @@ $Id$
 �p:	apt-get install pmake
 	alias make pmake
 
-�`�N: pmake 2.X �� .if �令 #if ���榡�A�|�y���ܦh���D�A�ӥB���M������
--Z . �i�H�� . �N�� # �A�� system.mk ���t���ɤ��� # �ҥH�|��
-
-�и� pmake 1.X
+�`�N: �p�G�A pmake �ݨ� "Makefile", line 9: Missing dependency operator
+�O�]���ˤF pmake 2.x (Debian �ثe�˪��O 1.9x, �� Mandrake �N�O�� 2.x)�C
+PMake 2.x �� .if �令 #if ���榡�A�o�|�y���ª��ɮ׳����ġA�ӥB���M������
+-Z . �i�� . �N�� # �A�� system.mk ���t���ɤ��� # �ҥH�|��C
+
+PttBBS �|���|�令 PMake v2 ���榡�O�H �]�� BSD �t�γ��S�ܡA�ҥH�i�ण�|��C
+
+�ѨM��k�����
+(1) �и� pmake 1.x �A²�檽�����@�k
+(2) ���L���ɭԧA�N�O�����n�� pmake 2.x�A�ҥH���Ӥp�{���i�H���A���C
+    �b pttbbs/ �ؿ��U���� util/pmakev2.sh
+    ���|�۰��ഫ�� PMake v2 ���榡�C
 
 ------------------------------------------------------------------------------
 3.�[�j shared-memory
diff --git a/util/pmakev2.sh b/util/pmakev2.sh
new file mode 100755
index 00000000..e6e1509d
--- /dev/null
+++ b/util/pmakev2.sh
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+# Modify Makefiles to work with PMake v2.
+# PMake v2 used '#if' to replace '.if'.
+
+TESTFN=pttbbs.mk
+
+echo "Checking directory..."
+
+if [ ! -f $TESTFN -a -f ../$TESTFN ] ; then
+    cd .. # more chance to locate it
+fi
+
+if [ ! -f $TESTFN ] ; then
+    echo "Please prepare your $TESTFN first and run this script in"
+    echo "same level directory with $TESTFN"
+    exit 1
+fi 
+
+echo "Found $TESTFN, check pmake version..."
+
+if ( pmake -h 2>/dev/null >/dev/null ) ; then
+    echo "OK, you have pmake v2."
+else
+    echo "I can't find pmake v2. You are using v1 or pmake not installed."
+    echo "This script only works for pmake v2."
+    exit 2
+fi
+
+for X in `find . -name "Makefile"` `find . -name "*.mk"`
+do
+    echo "$X -> $X.orig"
+    mv -f $X $X.orig
+    # I'm not sure if very old sed has multiple command supporting,
+    # and what about their regex, so let's be stupid here.
+    cat $X.orig | sed 's/^\.if/#if/' \
+	| sed 's/^\.el/#el/'| sed 's/^\.end/#end/' \
+	| sed 's/^\.include/#include/' \
+	> $X
+done
+
+echo "Complete. Now invoke pmake and try."
-- 
cgit v1.2.3