2004-08-24(火) 曇 安静時心拍数 53 この日を編集
_ portupgrade x11-themes/gtk-engines2 security/portaudit
gtk-engines2-2.2.0_3 < needs updating (port has 2.2.0_4) portaudit-0.5.3 < needs updating (port has 0.5.4)
_ Design and Implementation of the FreeBSD Operating System, The(Marshall Kirk Neville-Neil, George V. McKusick)
_ Bsd Hacks: 100 Industrial-Strength Tip & Tools(Dru Lavigne)
The Design And Implementation Of The Freebsd Operating System を見てみると amazon が「どちらもおすすめ」とのたもうた。負けてたまるか?!商売上手だなぁ。
2005-08-24(水) 曇 安静時心拍数 54 この日を編集
_ 利益確定
このところの相場の上昇で 2 銘柄も利食いしました。手取り 1 か月分くらいいただきました。あとストップ高の銘柄も明日利益確定圏内に入ってくれるとうれしいですなぁ。しかしシステムトレードなので買う銘柄がなくなってきました。信用売りのシステムもシミュレートしておく必要があるでしょう。
_ 2005年度日本OSS貢献者賞
ただのにっきより。BSD な人はだれも居ないのかなぁ。Linux な人ばかりですね。
さて
全文検索エンジン「Namazu」などの開発者である高林悟氏
[優れたオープンソース開発者を表彰する「2005年度日本OSS貢献者賞」より引用]
あれ?固有名詞間違えてる。高林哲さんだよなぁ。。。しかも Google に移籍されていたんですね。
_ ザ・ストーリー・ゴーズ・・・(クレイグ・デイヴィッド/ライラクリス)
3 作目。移籍後初のアルバムに期待。
2006-08-24(木) 曇ときどき雨 安静時心拍数 64 この日を編集
_ HP-UXにAutomakeが無くて嵌る
LinuxでAutomakeを使ってCppUnitを組み込んだスケルトンをあっさりと完成させて意気揚揚としていたのですが、HP-UXの環境でいざ
% ./configure % make
してみるとaclocalが無いとほざいてきました。HP-UXに自由にソフトをインストールできる権限が無いので、Automakeを野良インストールするしかないのですが、他の人がmakeするときにいろいろ不便なのでAutoconfだけで頑張るしかないのかな。Makefile.inを手で書くのが面倒です。
Linuxの環境
$ uname -a Linux hoge 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux $ autoconf --version autoconf (GNU Autoconf) 2.59 Written by David J. MacKenzie and Akim Demaille. Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ automake --version automake (GNU automake) 1.9.2 Written by Tom Tromey. Copyright 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
HP-UXの環境
% uname -a HP-UX fuga B.10.20 A 9000/871 2013667818 2-ユーザ・ライセンス % autoconf --version Autoconf version 2.9
_ CppUnit実践
まずはCppUnitのmain関数ですが、これはcppunit-1.12.0/examples/simple/Main.cppを拾ってくれば良いです。
#include <cppunit/BriefTestProgressListener.h> #include <cppunit/CompilerOutputter.h> #include <cppunit/extensions/TestFactoryRegistry.h> #include <cppunit/TestResult.h> #include <cppunit/TestResultCollector.h> #include <cppunit/TestRunner.h> int main( int argc, char* argv[] ) { // Create the event manager and test controller CPPUNIT_NS::TestResult controller; // Add a listener that colllects test result CPPUNIT_NS::TestResultCollector result; controller.addListener( &result ); // Add a listener that print dots as test run. CPPUNIT_NS::BriefTestProgressListener progress; controller.addListener( &progress ); // Add the top suite to the test runner CPPUNIT_NS::TestRunner runner; runner.addTest( CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest() ); runner.run( controller ); // Print test in a compiler compatible format. CPPUNIT_NS::CompilerOutputter outputter( &result, CPPUNIT_NS::stdCOut() ); outputter.write(); return result.wasSuccessful() ? EXIT_SUCCESS : EXIT_FAILURE; }
次に、これからHogeクラスを作っていくという前提でHogeクラスに対するテストコードを書いていきます。ヘッダファイルHogeTest.hを作ります。
#ifndef HogeTest_h #define HogeTest_h #include <cppunit/TestCase.h> #include <cppunit/extensions/HelperMacros.h> class HogeTest : public CPPUNIT_NS::TestFixture { CPPUNIT_TEST_SUITE(HogeTest); CPPUNIT_TEST(testgetVal); CPPUNIT_TEST(testsetVal); CPPUNIT_TEST_SUITE_END(); public: SupplyManagementTest(void) { } virtual ~SupplyManagementTest(void) { } void setUp() { } void tearDown() { } void testgetVal(); void testsetVal(); }; #endif
そして実装のHogeTest.cpp
#include "Hoge.h" #include "HogeTest.h" CPPUNIT_TEST_SUITE_REGISTRATION(HogeTest); void HogeTest::testgetVal() { Hoge hoge; CPPUNIT_ASSERT_EQUAL(1, hoge.getVal()); } void HogeTest::testsetVal() { // まかせた }
HogeTest.cppを適切に書いたらテストを実施しつつHoge.cppを書きます。
凝ったmain関数はCppUnit のメイン関数を作成するを参照。
2007-08-24(金) 晴ときどき曇 安静時心拍数 56 この日を編集
_ Software Design (ソフトウエア デザイン) 2007年 09月号 [雑誌]
Apacheモジュール 徹底活用術は読んでおきたいところです。
_ WEB+DB PRESS Vol.40(後藤 章一/竹端 進/竹下 肯己/高井 直人/吉田 和弘/高橋 征義/桐山 俊也/川村 丹美/西澤 晋/ひろせ まさあき/角谷 信太郎/池邉 智洋/松永 充弘/永安 悟史/高林 哲/児玉 サヌール/田中 ばびえ/たつを/小飼 弾/宮川 達彦)
新人教育用のネタとして使えそうなのでキープしておこう。
2008-08-24(日) 雨 安静時心拍数 57 この日を編集
_ 気象予報士試験
前回に引き続き冷やかし。試験会場は東大駒場キャンパスでした。10年ぶりくらいかな。5月くらいに一般知識の学習をしていたのですが、だいぶ忘れていました。苦手な法律をなんとかしないとダメでしょうね。専門知識も知らない用語がでてきたのでアウト。てきとーです。実技試験では図を切り離してみることを試してみました。なるほど、複数の図を見比べるのには便利ですね。ただ、これも専門用語を知らないと解答の根拠を簡潔に表現することはできません。お遊びもここらへんにしておかないとな。
2009-08-24(月) 曇一時雨 安静時心拍数 63 この日を編集
_ 胡散臭い悩み相談室のチラシを晒してみる
どうせヤクザか宗教だとは思いますが、間違って電話してしまう人がいるかもしれないので、晒しておきます。
調べてみると少なくとも2年以上前から活動が続いているようです。
コンプレックス産業というのは可也おいしいビジネスなんですねぇ。人の弱みに付け込んで金を毟り取るんですからね。
行方不明になった場合はポアされたと思ってください。
_ B0026RAX98
健康保険組合がタダで配るとのことだったので申し込んでいたのですが今日届きました。
それにしても健康保険組合もしんどいよなぁ。メタボリックシンドローム健診のペナルティを受けなくて済むようにその対策として万歩計のばら撒きをしているんだけれでしょうけれども、これで効果が無くペナルティで罰金を取られた日にゃ泣きっ面に蜂ですよ。保険料が値上がりするんじゃないかな。
そんな訳でだまっていても損するだけっぽいので、ただでくれるものは貰っとこうかなと思ったのです。
2014-08-24(日) この日を編集
_ ports 版 Using git-svn (FreeBSD committers only)
Using git-svn (FreeBSD committers only) を参考にして ports に対してオペレーションしてみました。tota@f34d:/usr % sudo mkdir ports tota@f34d:/usr % sudo chown -R tota:wheel ports tota@f34d:/usr % git clone git@github.com:freebsd/freebsd-ports.git ports Cloning into 'ports'... Enter passphrase for key '/home/tota/.ssh/id_dsa': remote: Counting objects: 3569984, done. remote: Compressing objects: 100% (971/971), done. remote: Total 3569984 (delta 255), reused 0 (delta 0) Receiving objects: 100% (3569984/3569984), 774.54 MiB | 2.48 MiB/s, done. Resolving deltas: 100% (1881904/1881904), done. Checking connectivity... done. Checking out files: 100% (119492/119492), done. tota@f34d:/usr % cd ports tota@f34d:/usr/ports % git svn init -Thead svn+ssh://svn.freebsd.org/ports . Enter passphrase for key '/home/tota/.ssh/id_dsa': tota@f34d:/usr/ports % git update-ref refs/remotes/origin/trunk `git show-ref origin/svn_head|cut -d" " -f1` tota@f34d:/usr/ports % git svn fetch Enter passphrase for key '/home/tota/.ssh/id_dsa': r365858 = c252f8d45e60c7be9d63bcda4d42abd9b4618012 r365859 = 9662be4cb4af690f0e59f8aaad06ff2c5c05d715 r365860 = 44d4c34460ff9e02040f6dd6ff9dc5106039e740 Done rebuilding .git/svn/refs/remotes/origin/trunk/.rev_map.35697150-7ecd-e111-bb59-0022644237b5 Index mismatch: a35c34aba742350ee252b1f6776476bd9cf24804 != a84a8a51b05d3392426619c4bd142ffe26568c4e rereading 44d4c34460ff9e02040f6dd6ff9dc5106039e740 M print/rubygem-afm/Makefile M print/rubygem-afm/distinfo r365861 = e1338392c94b06c7c2894b0237124b65cb450c08 (refs/remotes/origin/trunk) M databases/rubygem-memcache/Makefile M databases/rubygem-memcache/distinfo r365862 = 0d7f326f13a7b065296c62964ecfd52be28077ee (refs/remotes/origin/trunk) A net/quiterss/pkg-plist A net/quiterss/Makefile A net/quiterss/distinfo A net/quiterss/pkg-descr A net/quiterss/files/patch-lang-lang.pri M net/Makefile r365863 = d83e98975cba1ef77b093850ba4603d7736ed28e (refs/remotes/origin/trunk) tota@f34d:/usr/ports % git checkout trunk Note: checking out 'trunk'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b new_branch_name HEAD is now at 44d4c34... www/rubygem-underscore-rails: update to 1.6.0 tota@f34d:/usr/ports % git branch -D master Deleted branch master (was c4c374c). tota@f34d:/usr/ports % git checkout -b master trunk Switched to a new branch 'master' tota@f34d:/usr/ports % git svn rebase Enter passphrase for key '/home/tota/.ssh/id_dsa': Current branch master is up to date.Wiki では
$ git update-ref refs/remotes/trunk `git show-ref origin/svn_head|cut -d" " -f1`
となっていますが,refs/remotes/origin/trunk にしないと SNV repo の revision 1 から fetch する羽目になり莫大な時間を要します。
_ リモートリポジトリの名前変更
freebsd/freebsd-ports を Fork して tota/freebsd-ports を作っていたので,origin を tota/freebsd-ports にして,freebsd/freebsd-ports には freebsd という名前を付けるように変更します。tota@f34d:/usr/ports % git remote rename origin freebsd tota@f34d:/usr/ports % git remote add origin git@github.com:tota/freebsd-ports.git tota@f34d:/usr/ports % git fetch origin Enter passphrase for key '/home/tota/.ssh/id_dsa': remote: Counting objects: 36, done. remote: Compressing objects: 100% (34/34), done. remote: Total 36 (delta 4), reused 21 (delta 2) Unpacking objects: 100% (36/36), done. From github.com:tota/freebsd-ports * [new branch] gitlab-shellSpike -> origin/gitlab-shellSpike * [new branch] gitlabSpike -> origin/gitlabSpike * [new branch] master -> origin/master * [new branch] misc/rubygem-rabbit -> origin/misc/rubygem-rabbit * [new branch] tota -> origin/tota * [new branch] www/testlink -> origin/www/testlink tota@f34d:/usr/ports % git branch -r freebsd/HEAD -> freebsd/master freebsd/branches/2014Q1 freebsd/branches/2014Q2 freebsd/branches/2014Q3 freebsd/branches/RELEASE_8_4_0 freebsd/branches/RELENG_2_1_0 freebsd/branches/RELENG_2_2 freebsd/branches/RELENG_9_1_0 freebsd/branches/RELENG_9_2_0 freebsd/master freebsd/svn_head freebsd/trunk origin/gitlab-shellSpike origin/gitlabSpike origin/master origin/misc/rubygem-rabbit origin/tota origin/www/testlink trunk