Files
note/Makefile.PL

114 lines
2.9 KiB
Makefile
Raw Normal View History

# does not use ExtUtils::MakeMaker, because
# NOTEDB::mysql and NOTEDB::binary are internals
# of note.
#
2012-02-10 20:24:51 +01:00
# $Id: Makefile.PL,v 1.2 2000/08/10 09:21:56 zarahg Exp $
#
# check for the existence of optional modules:
sub chk_mod
{
my($mod, $msg) = @_;
print "<====\tchecking $mod \t====>\n";
eval {
$mod .= ".pm";
$mod =~ s/::/\//g;
require $mod;
};
if($@) {
print $msg;
}
else {
print " ... installed.\n";
}
print "\n";
}
&chk_mod(
"Getopt::Long",
"WARNING: Getopt::Long seems not to be installed on your system!\n"
."But it is strongly required in order to run note!\n"
);
&chk_mod(
"DB_File",
"WARNING: DB_File seems not to be installed on your system!\n"
."It is required, if you want to use the DBM backend.\n"
);
&chk_mod(
"DBI",
" WARNING: module DBI is not installed on your system.\n"
." It is required, if you want to use a SQL database with\n"
."note.\n"
);
&chk_mod(
"Crypt::IDEA",
" WARNING: module Crypt::IDEA is not installed on your system.\n"
." It is required, if you want to encrypt your data using IDEA.\n"
);
&chk_mod(
"Crypt::DES",
" WARNING: module Crypt::DES is not installed on your system.\n"
." It is required, if you want to encrypt your data using DES.\n"
);
&chk_mod(
"Crypt::CBC",
" WARNING: module Crypt::CBC is not installed on your system.\n"
." It is required, if you want to encrypt your data using CBC.\n"
);
&chk_mod(
"MD5",
" WARNING: module MD5 is not installed on your system.\n"
." It is required by Crypt::CBC.\n"
);
foreach $dir (@INC) {
if($dir =~ /site_perl/)
{ $LIBDIR = $dir; last; }
}
print "directory, where to install libs [$LIBDIR]: ";
$input = <>;
chomp $input;
$LIBDIR = $input if($input ne "");
$BINDIR = "/usr/local/bin";
print "directory, where to install note [$BINDIR]: ";
$input = <>;
chomp $input;
$BINDIR = $input if($input ne "");
$install = `which install`;
open M, "> Makefile" || die $!;
print M qq~BIN = bin/note
CHANGED: does no more use the external touch command to create a new file, use perls open() instead. CHANGED: excluded some of the help texts from the usage message and the interactive help command to a manpage. ADDED: new commandline flag "--encrypt" which one can use to encrypt the mysql database password. This will be decrypted before connecting to the db. There is also a new config file option "encrypt_passwd" which indicates an encrypted db-password. ADDED: another new config option "ShortCd", which can be set to "yes" or 1 and if set, then a command like "cd 13" would jump directly to the topic of the note with the number 13. ADDED: now you can at any time cd back to the "root" of the topic-structure using the command "cd /". CHANGED: mysql.pm does now only do a table-lock on single write accesses, no more on the whole session. This allows one to access the same db twice or more. FIXED: Changed README and Changelog for readability on 80 by 25 displays. And changed indentation of the note script itself. ADDED: NOTEDB.pm - a generic module, which holds some methods, which are used by binary.pm, mysql.pm and dbm.pm. ADDED: NOTEDB.pm generate_search(), which allows one to use AND, OR and various combinations of them using ( and ). ADDED: a search does now return the 2nd line of a note if a matching note's first line is a topic. CHANGED: use "unshift" instead of push to add $libpath to @INC. ADDED: a new feature, Caching of notes. supported by binary.pm and mysql.pm. To turn it on, one need to set "Cache" in the config to a true value.
2012-02-10 20:22:49 +01:00
MAN = note.1
LIBS = NOTEDB/mysql.pm NOTEDB/binary.pm NOTEDB/dbm.pm
CHANGED: does no more use the external touch command to create a new file, use perls open() instead. CHANGED: excluded some of the help texts from the usage message and the interactive help command to a manpage. ADDED: new commandline flag "--encrypt" which one can use to encrypt the mysql database password. This will be decrypted before connecting to the db. There is also a new config file option "encrypt_passwd" which indicates an encrypted db-password. ADDED: another new config option "ShortCd", which can be set to "yes" or 1 and if set, then a command like "cd 13" would jump directly to the topic of the note with the number 13. ADDED: now you can at any time cd back to the "root" of the topic-structure using the command "cd /". CHANGED: mysql.pm does now only do a table-lock on single write accesses, no more on the whole session. This allows one to access the same db twice or more. FIXED: Changed README and Changelog for readability on 80 by 25 displays. And changed indentation of the note script itself. ADDED: NOTEDB.pm - a generic module, which holds some methods, which are used by binary.pm, mysql.pm and dbm.pm. ADDED: NOTEDB.pm generate_search(), which allows one to use AND, OR and various combinations of them using ( and ). ADDED: a search does now return the 2nd line of a note if a matching note's first line is a topic. CHANGED: use "unshift" instead of push to add $libpath to @INC. ADDED: a new feature, Caching of notes. supported by binary.pm and mysql.pm. To turn it on, one need to set "Cache" in the config to a true value.
2012-02-10 20:22:49 +01:00
CORE = NOTEDB.pm
INSTBIN = $BINDIR
INSTLIB = $LIBDIR
CHANGED: does no more use the external touch command to create a new file, use perls open() instead. CHANGED: excluded some of the help texts from the usage message and the interactive help command to a manpage. ADDED: new commandline flag "--encrypt" which one can use to encrypt the mysql database password. This will be decrypted before connecting to the db. There is also a new config file option "encrypt_passwd" which indicates an encrypted db-password. ADDED: another new config option "ShortCd", which can be set to "yes" or 1 and if set, then a command like "cd 13" would jump directly to the topic of the note with the number 13. ADDED: now you can at any time cd back to the "root" of the topic-structure using the command "cd /". CHANGED: mysql.pm does now only do a table-lock on single write accesses, no more on the whole session. This allows one to access the same db twice or more. FIXED: Changed README and Changelog for readability on 80 by 25 displays. And changed indentation of the note script itself. ADDED: NOTEDB.pm - a generic module, which holds some methods, which are used by binary.pm, mysql.pm and dbm.pm. ADDED: NOTEDB.pm generate_search(), which allows one to use AND, OR and various combinations of them using ( and ). ADDED: a search does now return the 2nd line of a note if a matching note's first line is a topic. CHANGED: use "unshift" instead of push to add $libpath to @INC. ADDED: a new feature, Caching of notes. supported by binary.pm and mysql.pm. To turn it on, one need to set "Cache" in the config to a true value.
2012-02-10 20:22:49 +01:00
INSTMAN = /usr/man/man1
INSTALL = $install
all:
\@echo "done. Type make install.\\n"
install:
CHANGED: does no more use the external touch command to create a new file, use perls open() instead. CHANGED: excluded some of the help texts from the usage message and the interactive help command to a manpage. ADDED: new commandline flag "--encrypt" which one can use to encrypt the mysql database password. This will be decrypted before connecting to the db. There is also a new config file option "encrypt_passwd" which indicates an encrypted db-password. ADDED: another new config option "ShortCd", which can be set to "yes" or 1 and if set, then a command like "cd 13" would jump directly to the topic of the note with the number 13. ADDED: now you can at any time cd back to the "root" of the topic-structure using the command "cd /". CHANGED: mysql.pm does now only do a table-lock on single write accesses, no more on the whole session. This allows one to access the same db twice or more. FIXED: Changed README and Changelog for readability on 80 by 25 displays. And changed indentation of the note script itself. ADDED: NOTEDB.pm - a generic module, which holds some methods, which are used by binary.pm, mysql.pm and dbm.pm. ADDED: NOTEDB.pm generate_search(), which allows one to use AND, OR and various combinations of them using ( and ). ADDED: a search does now return the 2nd line of a note if a matching note's first line is a topic. CHANGED: use "unshift" instead of push to add $libpath to @INC. ADDED: a new feature, Caching of notes. supported by binary.pm and mysql.pm. To turn it on, one need to set "Cache" in the config to a true value.
2012-02-10 20:22:49 +01:00
\$(INSTALL) -m 755 \$(CORE) \$(INSTLIB)
\$(INSTALL) -d -m 755 \$(INSTLIB)/NOTEDB
\$(INSTALL) -m 755 \$(LIBS) \$(INSTLIB)/NOTEDB
\$(INSTALL) -m 755 \$(BIN) \$(INSTBIN)
CHANGED: does no more use the external touch command to create a new file, use perls open() instead. CHANGED: excluded some of the help texts from the usage message and the interactive help command to a manpage. ADDED: new commandline flag "--encrypt" which one can use to encrypt the mysql database password. This will be decrypted before connecting to the db. There is also a new config file option "encrypt_passwd" which indicates an encrypted db-password. ADDED: another new config option "ShortCd", which can be set to "yes" or 1 and if set, then a command like "cd 13" would jump directly to the topic of the note with the number 13. ADDED: now you can at any time cd back to the "root" of the topic-structure using the command "cd /". CHANGED: mysql.pm does now only do a table-lock on single write accesses, no more on the whole session. This allows one to access the same db twice or more. FIXED: Changed README and Changelog for readability on 80 by 25 displays. And changed indentation of the note script itself. ADDED: NOTEDB.pm - a generic module, which holds some methods, which are used by binary.pm, mysql.pm and dbm.pm. ADDED: NOTEDB.pm generate_search(), which allows one to use AND, OR and various combinations of them using ( and ). ADDED: a search does now return the 2nd line of a note if a matching note's first line is a topic. CHANGED: use "unshift" instead of push to add $libpath to @INC. ADDED: a new feature, Caching of notes. supported by binary.pm and mysql.pm. To turn it on, one need to set "Cache" in the config to a true value.
2012-02-10 20:22:49 +01:00
\$(INSTALL) -m 644 \$(MAN) \$(INSTMAN)
~;
print "Type \"make install\" to install all files.\n\n";
print "Please note: You may also copy the file \"config/noterc\" to\n"
."your home: \"cp config/noterc ~/.noterc\". Don't forget to edit\n"
."your config-file. Read the README for more informations on this\n"
."topic.\n"
."Thanks for choosing \"note\"! You are helping to keep the \n"
."OpenSource idea alive! Enjoy and tell me, what you think!\n\n";