Guys,
With svn if I needed to more the location of my local repository, I could
simply move it. Like mv ~/test/tde ~/trinity. Can I do the same thing with a git
repository and not screw up the metadata in the tree?
I note the .git directories in the tree contain worktree information:
09:34 nirvana:~/tdegit/tde> grep -r tdegit .git *
.git/modules/main/tdenetwork/config: worktree =
/home/david/tdegit/tde/main/tdenetwork
.git/modules/main/tde-i18n/config: worktree =
/home/david/tdegit/tde/main/tde-i18n
.git/modules/main/tdebase/config: worktree =
/home/david/tdegit/tde/main/tdebase
Can I move the tree and then just sed the worktree info, or will one of the
'git' commands do this for me?
--
David C. Rankin, J.D.,P.E.
Tim is a great team leader and incredibly skilled with programming and seeing both the trees and forest.
But Tim is only one person.
There are many patches that have been submitted to the bugzilla. Those patches have yet to be merged.
Many of those patches directly affect building packages. Perhaps I'm out in left field, but seems to me that all build related bug reports should be resolved as fast as possible. Any such report with a patch should be merged within a day or two. Granted, often we bypass the bugzilla and resolve build related bugs directly in this list, but I'm addressing those that do get filed in the bugzilla.
Is Tim the only person qualified or allowed to merge patches? He has to sleep too and should not be the only person merging patches. Many of the patches are nominal or trivial. Others should be able merge those types of patches. If Tim is not the only person, is anybody who has GIT access interested in merging those patches?
If Tim is the only person then why don't we have alternates to share the load for when Tim is busy with other life requirements?
All of this leads into an important topic. Where do we stand when Tim has to devote time and energy to other life requirements? Do we have a Plan B to keep the project moving forward? Seems to me that whenever Tim is not merging patches the project grinds to a halt. That's a high compliment to Tim, but an uncomfortable reflection on the project. :(
Darrell
Autobuild of tdeadmin (kcron) fails at KTView.
ktview.cpp: In member function ‘void KTView::create()’:
ktview.cpp:372:20: error: ‘TQ_CHECK_PTR’ was not declared in this scope
ktview.cpp: In member function ‘void KTView::edit()’:
ktview.cpp:380:20: error: ‘TQ_CHECK_PTR’ was not declared in this scope
make[2]: *** [ktview.o] Error 1
make[2]: Leaving directory `/tmp/tdeadmin/kcron'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/tdeadmin'
make: *** [all] Error 2
Here is the snippet:
void KTView::create()
{
KTListItem* ktli = (KTListItem*)listView->currentItem();
if ((ktli->text(0) != KTListTasks::getDescription()) && (ktli->text(0) !=
KTListVars::getDescription())) {
ktli = (KTListItem*)ktli->parent();
}
TQ_CHECK_PTR(ktli);
ktli->create();
listView->triggerUpdate();
}
Guys,
Trying to sort out my git issues, I have been picking through
switch_all_submodules_to_head_and_clean. I cannot understand what the purpose of
the line:
git submodule foreach "$THISSCRIPT $gituser"
That line causes git to step through each of its submodules and call:
"switch_all_submodules_to_head_and_clean <gitUser>"
Why? The script has already done everything at least once before? Dissecting
the script it does:
git reset --hard HEAD
git clean -dxf
git pull
git reset --hard HEAD
git clean -dxf
sed -i "s/system@/$gituser@/g" .gitmodules # or 's/system@//g'
git submodule init
git submodule update
git submodule foreach "git checkout master"
git submodule foreach "git pull"
then it does:
git submodule foreach "$THISSCRIPT $gituser"
Which causes this script to be run all over again on each submodule... I have
changed this version of my script as follows and it seems to run on each
submodule anyway:
git reset --hard HEAD
git clean -dxf
git pull
git reset --hard HEAD
git clean -dxf
sed -i "s/system@/$gituser@/g" .gitmodules # or 's/system@//g'
git submodule init
git submodule update --recursive
git submodule foreach --recursive "git checkout master"
git submodule foreach --recursive "git pull"
git pull gets everything:
16:32 archangel:/dat_f/tde/git> git pull
remote: Counting objects: 14, done
remote: Finding sources: 100% (12/12)
remote: Total 12 (delta 8), reused 12 (delta 8)
Unpacking objects: 100% (12/12), done.
From http://scm.trinitydesktop.org/scm/git/tde
bf1ed1c..3f21128 master -> origin/master
Fetching submodule main/tdegraphics
remote: Counting objects: 928, done
remote: Finding sources: 100% (467/467)
remote: Total 467 (delta 462), reused 467 (delta 462)
Receiving objects: 100% (467/467), 35.02 KiB, done.
Resolving deltas: 100% (462/462), completed with 455 local objects.
<snip>
git submodule init inits everything:
16:33 archangel:/dat_f/tde/git> git submodule init
Submodule 'experimental' () registered for path 'experimental'
Submodule 'main/applications/abakus' () registered for path
'main/applications/abakus'
Submodule 'main/applications/adept' () registered for path 'main/applications/adept'
<snip>
git submodule update --recursive updates everything:
16:34 archangel:/dat_f/tde/git> git submodule update --recursive
Submodule path 'main/applications/abakus': checked out
'af16f2796aed9a860d405ba77193bf4b9b90c21e'
Submodule path 'main/applications/kio-locate': checked out
'7415e07f61682107169f11e79cc0c8e50fb409a2'
<snip>
git submodule foreach --recursive "git checkout master" checks it all out:
16:35 archangel:/dat_f/tde/git> git submodule foreach --recursive "git checkout
master"
Entering 'experimental'
Already on 'master'
Entering 'main/applications/abakus'
Already on 'master'
<snip>
Entering 'main/applications/kio-locate'
Previous HEAD position was 7415e07... Remove spurious TQ_OBJECT instances
Switched to branch 'master'
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded.
Entering 'main/applications/kio-locate/cmake'
Already on 'master'
<snip>
git submodule foreach --recursive "git pull" pulls everything:
16:35 archangel:/dat_f/tde/git> git submodule foreach --recursive "git pull"
Entering 'experimental'
Already up-to-date.
Entering 'main/applications/abakus'
remote: Counting objects: 17, done
remote: Finding sources: 100% (9/9)
remote: Total 9 (delta 8), reused 9 (delta 8)
Unpacking objects: 100% (9/9), done.
From http://scm.trinitydesktop.org/scm/git/abakus
af16f27..45794e3 master -> origin/master
Updating af16f27..45794e3
Fast-forward
src/abakuslistview.h | 6 +++---
src/editor.h | 4 ++--
src/function.h | 2 +-
src/mainwindow.h | 2 +-
src/resultlistview.h | 2 +-
src/valuemanager.h | 2 +-
6 files changed, 9 insertions(+), 9 deletions(-)
Entering 'main/applications/abakus/admin'
Already up-to-date.
Entering 'main/applications/abakus/cmake'
Already up-to-date.
<snip>
Why step through the modules doing it all over again? On my box, it just
crashes with the error:
"This script can only be run from a top level git directory. Exiting..."
What say the experts?
--
David C. Rankin, J.D.,P.E.
tdelibs in GIT seems to be broken :(
<serghei> Xu_R, please tell Tim that he broken somehow in tdelibs
<serghei> I have I new brand T520 with i5 processor and I run twm
because I cannot install trinity :)
<serghei> Xu_R,
<serghei> /var/tmp/portage/trinity-base/kdelibs-9999/work/kdelibs/dcop/dcopclient.cpp:
In
<serghei> member function 'bool DCOPClient::attachInternal(bool)':
<serghei> /var/tmp/portage/trinity-base/kdelibs-9999/work/kdelibs/dcop/dcopclient.cpp:785:
<serghei> 24: error: 'qint64' was not declared in this scope
<serghei> /var/tmp/portage/trinity-base/kdelibs-9999/work/kdelibs/dcop/dcopclient.cpp:785:
<serghei> 24: error: expected ')' before numeric constant
<serghei> /var/tmp/portage/trinity-base/kdelibs-9999/work/kdelibs/dcop/dcopclient.cpp:785:55:
error: expected ')' before ';' token
--
later daze. :: Robert Xu :: rxu.lincomlinux.org :: protocol.by/rxu
Tim, all,
It appears that the git tde/scripts will need updating to work with git >=
1.6.5. I still get the error:
git submodule foreach
"/dat_f/tde/git/scripts/switch_all_submodules_to_head_and_clean drankin"
Entering 'experimental'
This script can only be run from a top level git directory. Exiting...
Stopping at 'experimental'; script returned non-zero status.
What that means is the foreach loop in switch_all_submodules_to_head_and_clean
gets to experimental, crashes and then doesn't complete for any of the remaining
modules in:
'git submodule scripts/switch_all_submodules_to_head_and_clean'
It seems to be failing on:
git submodule foreach "$THISSCRIPT $gituser"
maybe it should be?:
git submodule foreach --recursive "$THISSCRIPT $gituser"
Below are a couple of patches for the scripts inserting '--recursive' where
applicable:
--- scripts/switch_all_submodules_to_head_and_clean
+++ scripts/switch_all_submodules_to_head_and_clean 2012-02-17
11:42:56.955472310 -0600
@@ -37,10 +37,10 @@
fi
git submodule init
- git submodule update
- git submodule foreach "git checkout master"
- git submodule foreach "git pull"
- git submodule foreach "$THISSCRIPT $gituser"
+ git submodule update --recursive
+ git submodule foreach --recursive "git checkout master"
+ git submodule foreach --recursive "git pull"
+ git submodule foreach --recursive "$THISSCRIPT $gituser"
git checkout -- .gitmodules
fi
--- scripts/update_all_submodules
+++ scripts/update_all_submodules 2012-02-17 11:50:19.504957047 -0600
@@ -30,7 +30,7 @@
cd ../
done
git submodule init
- git submodule update
+ git submodule update --recursive
cd $PARENTDIR/$DIR2UPDATE
git reset --hard HEAD
git clean -d -x -f
At least I am not cloning the admin and cmake contents!
--
David C. Rankin, J.D.,P.E.
I addressed this issue previously in bug report 816. Seems the bug still exists.
Here is the relevant tdelibs failure:
=======================================================
[ 1%] Building CXX object dcop/CMakeFiles/DCOP-shared.dir/dcopclient.cpp.o
cd /dev/shm/tdelibs.build/dcop && /usr/bin/c++ -DDCOP_shared_EXPORTS -DHAVE_CONFIG_H -O2 -march=i486 -mtune=i686 -fvisibility=hidden -fvisibility-inlines-hidden -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -include tqt.h -fPIC -I/opt/trinity/include -I/usr/include/tqt -I/dev/shm/tdelibs.build/dcop -I/dev/shm/tdelibs.build -I/dev/shm/tdelibs/dcop -I/dev/shm/tdelibs.build/tdecore -I/dev/shm/tdelibs/tdecore -o CMakeFiles/DCOP-shared.dir/dcopclient.cpp.o -c /dev/shm/tdelibs/dcop/dcopclient.cpp
/dev/shm/tdelibs/dcop/dcopclient.cpp: In member function 'bool DCOPClient::attachInternal(bool)':
/dev/shm/tdelibs/dcop/dcopclient.cpp:785: error: 'qint64' was not declared in this scope
/dev/shm/tdelibs/dcop/dcopclient.cpp:785: error: expected ')' before numeric constant
/dev/shm/tdelibs/dcop/dcopclient.cpp:785: error: expected ')' before ';' token
make[2]: *** [dcop/CMakeFiles/DCOP-shared.dir/dcopclient.cpp.o] Error 1
make[2]: Leaving directory `/dev/shm/tdelibs.build'
make[1]: *** [dcop/CMakeFiles/DCOP-shared.dir/all] Error 2
make[1]: Leaving directory `/dev/shm/tdelibs.build'
make: *** [all] Error 2
=======================================================
tqt3, tqtinterface, arts, dbus-tqt, dbus-1-tqt, tqca-tls, libart_lgpl built without error. However, I need to patch tqtinterface to build with tqt3. Refer to bug report 816 for the patch.
Here are the relevant failures when I build tqtinterface with tqt3 and without my patch:
=======================================================
/dev/shm/tqtinterface.build/qtinterface/tqt.h:56:21: error: qglobal.h: No such file or directory
/dev/shm/tqtinterface/qtinterface/interface_qt3/tqassistantclient.h:29:30: error: qassistantclient.h: No such file or directory
/dev/shm/tqtinterface.build/qtinterface/tqt.h:56:21: error: qglobal.h: No such file or directory
/dev/shm/tqtinterface/qtinterface/interface_qt3/tqassistantclient.h:29:30: error: qassistantclient.h: No such file or directory
=======================================================
As mentioned in bug report 816, the tqtinterface errors are a result of limiting the cmake logic to searching only /usr/ for tqt3 include files. My feeble patch avoids that limitation and allows tqtinterface to build against tqt3, but tdelibs will not build.
These build issues do not appear with qt3.
Darrell
Looks like this monster has returned. :(
Building from latest GIT.
Problem exists only for automake packages.
I built qt3 and not tqt3. Core packages built without error.
I have the tqtinterface headers installed to /usr/include/tqt.
Looking at the configure.log reveals the following:
1) Seems the configure process is hard-coded to look for header files prefixed with "n." I don't know whether that is intentional or a typo. A test patch to strip the "n" does not help resolve the failure.
==================================================
diff -urN tdeaccessibility/admin/acinclude.m4.in tdeaccessibility.new/admin/acinclude.m4.in
--- tdeaccessibility/admin/acinclude.m4.in 2012-02-15 13:33:08.000000000 -0600
+++ tdeaccessibility.new/admin/acinclude.m4.in 2012-02-15 22:25:42.496185447 -0600
@@ -1663,11 +1663,11 @@
kde_qt_header="Qt/qstyle.h"
else
kde_qt_header=qstyle.h
- kde_tqt_header=ntqstyle.h
+ kde_tqt_header=tqstyle.h
fi
else
kde_qt_header=qglobal.h
- kde_tqt_header=ntqglobal.h
+ kde_tqt_header=tqglobal.h
fi
AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir)
==================================================
2) Seems the failure message is misleading. Seems the actual failure is failing to find the tqtinterface header files. Here is the relevant snippet from configure.log:
==================================================
configure:20809: checking for perl
configure:20866: result: /usr/bin/perl
configure:21023: checking for Qt
configure: 21146: /opt/trinity/include/qstyle.h
taking that
configure: 21162: /opt/trinity/include/ntqstyle.h
configure: 21162: /opt/trinity/include/ntqstyle.h
configure: 21162: /opt/trinity/ntqstyle.h
configure: 21162: /usr/lib/tqt3/include/ntqstyle.h
configure: 21162: /usr/lib/tqt3/ntqstyle.h
configure: 21162: /usr/lib/qt3/include/ntqstyle.h
configure: 21162: /usr/lib/qt3/ntqstyle.h
configure: 21162: /usr/lib/qt/include/ntqstyle.h
configure: 21162: /usr/lib/qt/ntqstyle.h
configure: 21162: /usr/share/tqt3/include/ntqstyle.h
configure: 21162: /usr/share/tqt3/ntqstyle.h
configure: 21162: /usr/share/qt3/include/ntqstyle.h
configure: 21162: /usr/share/qt3/ntqstyle.h
configure: 21162: /usr/lib/qt-3.3/include/ntqstyle.h
configure: 21162: /usr/lib/qt-3.3/ntqstyle.h
configure: 21162: /opt/trinity/include/ntqstyle.h
configure: 21162: /opt/trinity/ntqstyle.h
configure: 21162: /opt/trinity/include/ntqstyle.h
configure: 21162: /usr/local/qt/include/ntqstyle.h
configure: 21162: /usr/include/qt/ntqstyle.h
configure: 21162: /usr/include/ntqstyle.h
configure: 21162: /usr/X11R6/include/X11/qt/ntqstyle.h
configure: 21162: /usr/ In my case tdeaccessibility.X11R6/include/qt/ntqstyle.h
configure: 21162: /usr/X11R6/include/qt2/ntqstyle.h
configure: 21162: /usr/include/tqt3/ntqstyle.h
configure: 21162: /usr/include/qt3/ntqstyle.h
configure: 21162: ./ntqstyle.h
configure:21380: rm -rf SunWS_cache; g++ -o conftest -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i486 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -I/usr/include/tqt -INO -I. -DQT_THREAD_SUPPORT -D_REENTRANT -L/opt/trinity/lib conftest.cpp -lqt-mt -lpng -lz -lm -ljpeg -ldl -lXext -lX11 -lSM -lICE -lpthread 1>&5
conftest.cpp:2:21: error: qglobal.h: No such file or directory
conftest.cpp:3:26: error: qapplication.h: No such file or directory
conftest.cpp:4:21: error: qcursor.h: No such file or directory
conftest.cpp:5:27: error: qstylefactory.h: No such file or directory
conftest.cpp:6:34: error: private/qucomextra_p.h: No such file or directory
conftest.cpp:7:8: warning: "TQT_VERSION" is not defined
conftest.cpp:8:2: error: #error 1
==================================================
Notice in all of the 21162 messages that the configure process looks in just about every place except /usr/include/tqt.
Here are the relevant environment variables from my build log:
PKG_CONFIG_PATH: /usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/opt/trinity/lib/pkgconfig
QTDIR: /opt/trinity
QT_INCLUDE_DIR: /opt/trinity/include
QT_LIB_DIR: /opt/trinity/lib
/usr/lib/pkgconfig/tqt.pc looks correct.
Darrell
Guys,
I did a fresh git clone http://scm.trinitydesktop.org/scm/git and the git
clone resulted in the same empty 'admin' and 'cmake' files in the directories
and in having and experimental/.git FILE instead of a DIR which hosed the shared
object use to fill them. switch_all_submodules_to_head_and_clean crashed on
experimental do I deleted and recloned experimental. Now I have a proper .git
DIRECTORY in experimental and the expected objects are present.
All other dependencies, applications, have .git FILES instead of .git
DIRECTORIES causing switch_all_submodules_to_head_and_clean to fail. If I delete
each submodule and then re-clone it again in the tree, the it will contain a
proper .git dir and will accept 'admin' and 'cmake' shared objects allowing
build. But, I shouldn't have to pick through every submodule in TDE, delete
recursive the submodule and then re-clone just to get the tree straightened out
-- this is git -- it should just work. Still any idea what the cause of these
issues are??
--
David C. Rankin, J.D.,P.E.
Latest GIT (short version 4010). Error:
/usr/include/tqt/tqobjdefs.h:29:26: error: tqobjectdefs.h: No such file or directory
I modifed tqt/tqobjdefs.h:29 from tqobjectdefs.h to qobjectdefs.h and the package built.
I don't know whether that is the correct solution.
Darrell